본문 바로가기

리눅스 커널

4장 메모리 관리 -1 메모리 관리 기법과 가상 메모리 물리 메모리의 한계를 극복하기 위해 가상메모리가 도입되었습니다. 프로그램들은 32bit 환경에서 232만큼, 즉 4GB 의 메모리 공간을 이용할 수 있게 되었습니다. 이는 물리적 4GB가 아닌 개념적인 공간으로 실제 동작에서는 필요한 만큼의 물리메모리를 제공합니다. 이렇게 가상메모리를 도입하므로 개념적으로 프로그램은 메모리 공간을 물리 메모리의 크기와는 상관없이 큰 공간을 이용할 수 있게 되었고, 실제 물리 메모리에선 필요한 만큼의 메모리 공간만 제공하므로 가능한 많은 태스크를 동시에 수행할 수 있게 되었습니다. 물리 메모리 관리 자료 구조 전체 물리 메모리의 정보를 표현하는 적절한 자료구조가 필요합니다. 2-1. NODE 리눅스에서 접근 속도가 같은 메모리의 집합을 뱅크.. 더보기
3장 태스크 관리 - 1 2장에서는 리눅스 커널의 내부 구조에 대해 간략하게 살펴보았습니다. 3장에선 태스크에 대해 배웁니다. 태스크란 '자원 소유권의 단위'를 말합니다. 프로세스란 동작중인 프로그램으로서 디스크에 저장되어있는 실행 가능한 형태의 파일입니다. ┕ 바이너리 기계 명령어, 수행에 필요한 자료들의 집합을 의미합니다. 실행파일 자체는 그저 디스크에 저장된 수동적인 존재로 프로그램이 동작하기 위해선 리눅스 커널로부터 CPU 등의 자원을 할당 받을 수 있는 동적인 객체가 되어야만 합니다. ┕ 이를 프로세스 라 부르고 프로세스는 커널의 적절한 스케쥴링에 의해 할당 받은 자신만의 자원을 가지고 CPU가 기계어 명령들을 실행함 에 따라 끊임없이 변화하는 동적인 존재를 말합니다. 프로세스에 대해 사용자 입장과 커널 입장에서 살펴보.. 더보기
2장 리눅스 커널 구조 운영체제란 무엇일까요? 저는 사용자에게 알맞은 추상화를 제공함으로써 사용자가 그 내부를 알 필요 없이 사용할 수 있도록 해주는 것이라고 생각합니다. 책에서는 '운영체제는 자원관리자이다'라고 정의하고 자원에 대한 정의를 풀어갑니다. 운영체제가 갖는 자원은 다음과 같습니다. 물리적인 자원CPU메모리디스크네트워크 추상적인 자원태스크세그먼트와 페이지파일통신 프로토콜, 패킷접근제어 커널은 물리적인 자원과 추상적인 자원을 관리하는 자원관리자의 역할을 합니다. 구체적으로 아래의 표와 같습니다. 태스크 관리자태스크의 생성, 실행, 상태전이, 스케쥴링, 시그널 처리, 프로세스간 통신(IPC)메모리 관리자물리 메모리 관리, 가상 메모리 관리, 세그먼테이션, 페이징, 페이지 부재 결함 처리파일 시스템파일의 생성, 접근제어,.. 더보기
1장 리눅스의 소개 1991년에 핀란드 헬싱키 대학에서 전산학을 전공하던 Linus Benedict Torvalds가 리눅스 0.0.1을 개발하여 발표함으로 시작된 리눅스는GNU 정신에 따라 완전히 공개로 배포되며 모든 프로그램의 소스 또한 공개 되있습니다.프로그램의 소스코드가 공개되면서 누구나 자유롭게 프로그램의 소스를 고칠 수 있어, 전세계 수 많은 사람들에 의해 개선, 개발되어 막강한 성능과 안정성을 가지게 되었습니다.Linux History는 아래의 위키백과 링크에 자세하게 나와 있습니다.http://en.wikipedia.org/wiki/Linux#History리눅스는 지금도 꾸준히 버전이 올라가고 있습니다.2013.07.05. 기준으로 stable 3.10이 2013.6.30. 4일 전에 나왔었네요.(출처 : h.. 더보기