모놀리스 커널
Monolithic kernel단일 커널은 전체 운영 체제가 커널 공간에서 작동하는 운영 체제 아키텍처다.획일적 모델은 그것만으로도 컴퓨터 하드웨어에 대한 높은 수준의 가상 인터페이스를 정의한다는 점에서 다른 운영 체제 아키텍처(예: 마이크로커널 아키텍처)[1][2]와는 다르다.일련의 원시 요소 또는 시스템 호출은 프로세스 관리, 동시성 및 메모리 관리와 같은 모든 운영 체제 서비스를 구현한다.디바이스 드라이버를 커널에 모듈로 추가할 수 있다.
로드 가능한 모듈
OS-9와 같은 모듈식 운영 체제와 OpenVMS, 리눅스, BSD, SunOS, AIX, MUTICS와 같은 대부분의 최신 단일 운영 체제에서는 실행 가능한 모듈을 런타임에 동적으로 로드(및 언로드)할 수 있다.
운영체제의 이 모듈화는 아키텍처 수준이 아니라 이진(이미지) 수준에 있다.모듈식 단일 운영체제는 마이크로커널과 서버(모듈이나 데몬으로 오인되지 않음)를 사용하는 서버-클라이언트 운영체제(및 그 파생상품은 때로 하이브리드 커널로 시판됨)에 내재된 모듈화의 아키텍처 수준과 혼동해서는 안 된다.
실제로 모듈을 동적으로 로드하는 것은 단순히 다른 운영 체제 이미지로 재부팅하는 것이 아니라, 런타임에 운영 체제 이미지를 처리하는 더 유연한 방법이다.이 모듈들은 필요에 따라 운영 체제의 기능을 쉽게 확장할 수 있다.[3]동적으로 로드할 수 있는 모듈은 운영 체제 이미지에 모듈을 구축하는 것에 비해 적은 오버헤드가 발생한다.
그러나 경우에 따라 동적으로(필요에 따라) 모듈을 로드하면 커널 공간에서 실행되는 코드의 양을 최소한으로 유지하는 데 도움이 된다. 예를 들어 임베디드 장치나 하드웨어 리소스가 제한된 장치의 운영 체제 설치 공간을 최소화하기 위함이다.즉, 비적재 모듈은 희귀한 무작위 액세스 메모리에 저장할 필요가 없다.
단일 아키텍처의 예
참고 항목
참조
- ^ "Modular system programming in Minix3" (PDF).
- ^ "Server-Client, or layered structure" (PDF). The Design of PARAS Microkernel. Archived from the original (PDF) on 17 July 2010. Retrieved 15 July 2009.
- ^ "Kernel Definition".