글
■ Linux 운영체제(Operating System)의 구조
○ Memory management – memory관리에 대한 부분.
○ Process management – 실행중인 프로그램의 memory내의 image에 대한 관리에 대한 부분.
○ File System – 저장 장치에 어떻게 파일을 저장하고 그것을 다시 가지고 올 것인가에 대한 부분.
○ Network – network관리에 대한 부분.
이렇게 4개의 범주로 나누어진 운영체제는 사용자의 응용 프로그램이 수행되는 환경을 제공한다. 따라서, 사용자의 프로그램을 저장장치에 저장하거나 메모리로 읽어 들여 수행하고 결과를 화면이나 기타 출력장치에 표시하는 역할을 한다. 즉, 이러한 모든 일은 응용프로그램과 하위의 장치 사이에서 일어나며, 이것을 운영체제에서 관리한다고 생각하면 된다.
LINUX는 이러한 일을 해주는 부분이 kernel이다.
■ /usr/src/linux.x.y.z
○ init : 커널의 초기화 코드를 담고있다. 커널의 메인 시작함수가 구현된 directory.
○ drivers : 시스템 디바이스의 드라이버 코드를 담고있다.
- char : 문자 디바이스 드라이버 소스를 가지고 있다.
- block : 블록디바이스 드라이버 소스를 가지고 있다.
- usb : usb 디바이스 드라이 등 의 소스를 가지고 있다.
- net : 이 시스템에서 지원되는 네트워크 디바이스 드라이버가 있다.
- sond : 사운드카드 드라이버 소스를 가지고 있다.
○ arch : CPU에 종속적인 커널 코드를 담고 있다.
- alpha : DEC에서 개발
- parisc : HP에서 개발
- sparc : SUN에서 개발
- i386 : Intel에서 개발
○ kernel : 메인 커널 코드
○ mm : 메모리 관리 코드
○ include : 커널 코드를 컴파일하는데 필요한 대부분의 헤어파일
○ ipc : 프로세스간 통신을 위한 코드
○ fs : 파일시스템을 구현하기 위한 코드
○ net : 통신 프로토콜을 구현하기 위한 코드
○ lib : 라이브러리 코드
○ scripts : 커널 구성 및 컴파일할때 이용되는 스크립트 파일
※ 출처 : http://idkkangjs.blog.me/30091117058
'L inux > Kernel' 카테고리의 다른 글
시스템 콜(System Call) - 1 (0) | 2011.09.26 |
---|---|
리눅스 커널 컴파일 (0) | 2011.09.26 |
리눅스 부팅과정 (0) | 2011.09.23 |
리눅스와 리눅스 커널 (0) | 2011.09.21 |
리눅스 커널의 내부구조 (0) | 2011.04.01 |
RECENT COMMENT