728x90
프로세스 관리
- 일반 PC는 하나의 CPU, 즉 프로세서 하나를 사용한다. 그러나 고속 처리가 필요한 서버 시스템의 경우에는 처리 속도를 향상시키기 위해 여러 프로세서를 병렬로 연결하여 사용한다. 시스템에서 동작하는 프로세스도 커널에서는 관리해야 할 자원이고, 운영체제의 처리 요구에 맞춰 동작할 수 있도록 각 프로세스에 필요한 프로세스를 효율적으로 할당하고 수행하도록 관리한다.
- 리눅스 운영체제에서는 시스템이 동작 이후에 최소한 하나 이상의 프로세스가 동작한다. 이 프로세스는 다른 말로 태스크라고도 하며, 주어진 일을 수행하는 기본 단위다. 커널은 프로세스 스케줄러를 이용하여 여러 프로세스가 동작할 수 있도록 각 프로세스를 생성하고 제거하며, 외부 환경과 프로세스를 연결하고 관리한다.
메모리 관리
- 시스템에서의 메모리는 프로세서와 마찬가지로 가장 핵심적이고, 중요하게 관리해야 하는 자원이다. 메모리를 관리하는 정책은 시스템 성능을 결정하는 중요한 요소로, 각각의 프로세스가 독립적인 공간에서 수행할 수 있도록 가상 주소 공간을 제공한다. 이 가상 메모리 관리를 바탕으로 보조 기억 장치와 물리적인 한계를 극복할 수 있는 기능을 제공한다.
파일 시스템 관리
- 리눅스 커널은 유닉스 시스템에서 사용하는 파일 시스템을 근간으로 설계되었다. 그래서 리눅스 커널에서 동작하는 응용 프로그램은 시스템에 동작하는 모든 자원을 파일처럼 다룰 수 있도록 통일된 인터페이스를 제공한다. 또한 리눅스 커널은 가상 파일 시스템(VFS)을 이용하여 현존하는 대부분의 파일 시스템 형식을 지원한다.
디바이스 제어
- 운영체제에서 동작하는 응용 프로그램의 결과는 하드웨어와 반드시 연결되어야 사용자가 인지할 수 있다. 메모리와 프로세서를 제외한다면 그 외의 동작은 반드시 하드웨어적인 처리를 수반한다. 하드웨어에 관련된 처리는 디바이스 드라이버에서 담당하며, 커널이 반드시 구현해야 하는 것 중 하나다. 리눅스 커널은 파일 시스템의 구조에 디바이스 드라이버를 연동하여 구현하며, 표준화된 형식으로 하드디스크부터 키보드, 이더넷 같은 모든 주변장치를 관리한다.
네트워크 관리
- 현대의 시스템은 반드시 네트워크 처리를 수반한다. 현존하는 운영체제 중에는 네트워크 처리를 수행하지 않는 운영체제도 있겠지만, 리눅스 커널은 네트워크를 필요로 하는 시스템에서 주로 개발되었기 때문에 가장 우수한 네트워크 관리 시스템을 갖추고 있다. 리눅스 커널은 네트워크 스택을 이용하여 응용 프로그램과 네트워크 디바이스 드라이버를 연결하며, 매우 효율적인 네트워크 처리를 구현하고 있다. 또한 리눅스 커널에서 동작하는 네트워크 시스템은 암호화와 보안 특성이 연계된 매우 견고한 시스템을 구성한다.
728x90
'UNIX' 카테고리의 다른 글
vim 붙여넣기 탭 오류 (0) | 2022.05.15 |
---|---|
raspberry pi svn 설치하기 (0) | 2014.08.21 |
열려있는 포트 확인 (0) | 2014.06.09 |
debian initial script (0) | 2014.05.19 |
라즈베리 파이 ntfs 마운트 (0) | 2014.05.18 |