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
by 민트앤라떼 2011. 4. 1. 15:54