전체 글
-
프로세스와 스레드의 차이OS 2011. 10. 1. 13:51
리눅스 등의 멀티 프로세싱 운영체제에서는 동시에 여러 프로그램을 실행할 수 있다. 그때 실행 중인 프로그램에 대한 인스턴스를 프로세스라고 한다. 프로세스는 프로그램에 대한 각각의 인스턴스를 의미하므로, 같은 프로그램을 여러개 띄웠다고 해서 하나의 프로세스를 공유하는 것은 아니다. 프로세스는 운영체제로부터 주소공간, 파일, 메모리 등을 할당받는다. 리눅스 시스템에서는 코드 영역과 라이브러리를 프로세스 간에 공유하므로, 메모리 내에 코드와 라이브러리는 하나만 존재한다. 변수에 할당되는 공간으로 데이터 세그먼트와 스택 세그먼트는 프로세스 각각 가지고 있다. 그리고 각 프로세스 마다 실행 위치를 나타내는 PC(Program Counter)도 프로세스별로 관리한다. 스레드란 한 프로세스 내에서 동작되는 여러 실행..
-
바다(bada)는 OS인가? 플랫폼인가? 개념정리OS 2011. 9. 18. 13:56
안녕하세요. 저는 삼성전자와 연계된 대학원(*** 학과)에서 석사과정중인 대학원생입니다. 많은 분들이 bada의 개념을 혼동, 오해 하시는 것 같아서 글하나 적고 갑니다. bada가 os인가요? bada는 os가 아닙니다. 플랫폼이에요. 안드로이드도 엄밀히 말하면 os가 아닙니다. 리눅스 커널 위에다가 플랫폼을 얹은거죠. bada는 RTOS(real time OS) 일종인 Nucleus OS 위에 bada라는 플랫폼을 얹었습니다. RTOS는 굉장히 작은 OS라고 보시면 되요 이름에서 볼수 있듯이 당연히 실시간 처리를 하죠. 커널이 대부분이라고 생각하셔도 될정도로 작습니다. 실시간 처리를 위한 스케줄링, 메모리 관리하는 커널에다가 파일시스템, 통신을 위한 소켓(tcp/ip) 정도만을 얹은정도가 Nucleu..
-
야구와 숫자 3의 관계, 그리고 인생LG TWINS와 야구 2011. 9. 18. 11:25
흔히들 야구는 인생과 닮아있다고들 한다. 나도 그 말에 전적으로 동의하는데 바로 그게 야구의 매력이다. 인생의 축소판, 야구. 야구는 숫자 3과 아주 긴밀한 관계를 맺고있다. 타자들은 상대투수가 선동렬 할아버지라서 퍼펙트게임을 한다 해도 한 경기당 최소한 3번의 타격의 기회가 주어진다. 타석에서도 최소한 공을 3번 바라보거나, 최소한 3번은 배트를 휘두를 수 있는 기회가 있다. 투수는 3개의 스트라이크를 잡으면 타자를 아웃시키는데 한 타자당 3번의 볼까지는 허용된다. 수비하는 팀은 3번의 아웃카운트를 잡아야만 공격을 할 수 있고, 공격하는 팀은 이닝당 3번의 아웃카운트가 보장되어있다. 외야는 3명의 수비수가 지키고 내야의 베이스의 개수는 바로 3개다. 홈런을 치고 나가도 1루,2루,3루를 거쳐야만 득점을..
-
document.getElementById 와 explorer 9javascript 2011. 9. 17. 20:14
explorer 6, 7에선 다음 javascript가 정상동작한다. name만 지정했는데 document.getElementById 로 값을 갖고오고 있다. 이것을 explorer 9에서 실행하고 alert(selectObj) 을 찍어보면 null값이 튀어나온다. 다음과 같이 id를 등록하고 가져와야한다. 메소드이름을 보면 getElementById 이므로 id가 있어야 하는게 당연한것 같기도 하고.. explorer 6,7는 그냥 돌다 됐었는데.. explorer 9 들어와서 좀 엄격하게 체크하도록 바뀌었다. explorer 8 은 모르겠다. 당연히 explorer 9 쓰는 중인데 예전 버전 explorer 에서 작업한 것을 explorer 9 에서 보다가 이거 잡느냐고 때문에 시간낭비 ㅠ.ㅠ 흑흑 ..
-
Operating System Concepts 7th edition a.k.a 공룡책OS 2011. 9. 13. 01:30
공룡책이라고 많이 알려진 운영체제의 기본서 Operating System Concepts 7th edition 한국어판! 운영체제는 모든 컴퓨터 시스템의 필수적인 부분이다. 학부 때 들었던 운영체제 과목에서의 교재도 바로 이 책이었다. OS 쪽에선 거의 정석이자 기본서. 이 책을 다시 한번 보려는 야심찬 계획을 세웠다. (어쩌면 무리일수도 있는...ㄷㄷㄷ) 연습문제 위주로 포스팅을 할 생각이었는데 주욱 한번 살펴보니까 쓸데 없는 연습문제도 꽤 많은 관계로 포스팅의 방향설정은 다시 해야겠다. 대략적인 학습 계획은 다음과 같다 -프로세스 및 스케줄링 -동기화의 필요성 및 동기화기법들 -파일시스템 구조 -메모리 관리가법과 가상메모리기법 -디스크의 구조 및 RAID 디스크 -입출력 방법 운영체제에 관한 초석을 ..
-
OOP와 관련한 개념들(상속, 다형성, 동적바인딩...)JAVA 2011. 9. 12. 03:46
추석맞이 포스팅 특집. 무려 2개째. ㄷㄷㄷ OOP와 관련한 개념들을 한번 집고 넘어가고 싶었다. 시작해보겠다. 우리가 객체지향 언어를 사용하는 중요한 이유 중 하나는 기존에 구축되어 있는 시스템에 새로운 기능을 추가하거나 이미 존재하는 기능을 확장 하는 것이 다른 프로그램 언어보다 용이 하기 때문이다. 즉, 객체 지향 언어를 사용함으로써 유연성(Flexibility), 확장성(Extendability), 유지보수성(Maintenance)이 좋은 시스템을 다른 언어를 사용하는 것보다 쉽게 만들 수 있기 때문에 객체지향 프로그램을 사용하는 것이다. 객체지향 언어의 특징은 상속(Inheritance), 캡슐화(Encapsulation), 정보은닉(Infomation hiding), 다형성(Polymorphi..
-
Spring MVC 에 대해 알아보자Spring 2011. 9. 12. 01:36
바쁘다는 핑계로 포스팅을 오랜만에 한다. 난 바쁜게 맞는데 왜 결과물은 눈에 보이지 않는거지...? 1일 1 포스팅은 꼭 하고 싶은데, 이게 보는 것처럼 쉬운게 아니구나.... 오늘 포스팅 할 내용은 Spring MVC 에 관한 내용. 즉 Spring MVC는 요거만 알면 된다!!!................는 아니고 Spring MVC를 하는데 요걸 모르면 절대 안된다..........정도가 되겠다. 일단 Spring MVC 에 들어가기에 앞서 Model1 방식 과 Model2 방식의 차이점에 대해 알아보겠다. 요것이 Model1 방식 그림에서 보는 것과 같이 Model 1 방식은 request 의 요청에 대한 처리와 유효성 검증, 비지니스 로직 핸들링, response 의 생성 등 모든 책임을 JS..
-
Anyframe 소개Anyframe 2011. 9. 1. 01:27
모르는 용어 투성... Anyframe의 첫 포스팅이다. 누군가가 시작이 반이라 했던가? Anyframe이란 무엇이냐. Anyframe을 소개하는 책 (발행처:삼성SDS 멀티캠퍼스) 에서는 Anyframe의 개요를 다음과 같이 소개하고 있다. - 미들웨어와 어플리케이션 사이에서 기술 공통 영역을 담당하는 다양한 오픈소스들이 존재하나 각각을 직접 통합하기에는 많은 어려움이 따르므로 이를 해결하기 위한 프레임워크가 필요 - Anyframe 은 Spring, Struts, Hibernate 등을 포함하여 200 여개의 오픈소스 라이브러리를 통합 및 확장하여 개발되었으며 어플리케이션 개발을 효과적으로 진행하는데 필효한 SW 의 기본 골격과 공통 모듈 및 툴 등을 제공 국내 ICT서비스 기업 중 삼성 SDS가 유..