마이크로커널
운영 체제의 초소형 커널
마이크로커널(microkernel)은 컴퓨터 과학에서 운영 체제에 추가되어야 하는 메커니즘을 최소한으로 제공하는 초소형 커널이다. 이러한 미니멀리티 메커니즘에는 낮은 수준의 주소 공간 관리, 스레드 관리, 프로세스 간 통신(IPC)을 포함한다. 하드웨어가 여러 개의 링과 CPU 모드를 제공한다면 마이크로커널은 최고 권한 수준(일반적으로 수퍼바이저 및 커널 모드로 부름)에서 실행되는 유일한 소프트웨어가 된다. 소스 코드 크기 측면에서 마이크로커널은 일반적으로 10,000줄 이하의 코드를 지니는 경향이 있다. 이를테면 미닉스 3의 경우 6,000줄 이하의 코드가 있다.[1]
역사
편집마이크로커널은 1980년대에 컴퓨터 세상의 변화에 발맞추고 기존의 모노 커널(mono-kernel)을 이 새로운 시스템에 적응시키는 데 대한 문제점에 마주하면서 개발되었다. 새로운 장치 드라이버, 프로토콜 스택, 파일 시스템 및 기타 낮은 수준의 시스템들이 내내 개발되고 있었다. 이 코드는 일반적으로 모놀리딕 커널에 위치했기 때문에 상당한 작업과 주의가 필요한 코드 관리가 필요했다.
마이크로커널은 엑소커널과 매우 관계가 있다.[2] 이들은 하이퍼바이저와 많은 공통점이 있지만[3] 후자의 경우 미니멀리티를 고수하지 않으며 가상 머신 지원에 특화되어 있다.
나노커널
편집나노커널(nanokernel) 또는 피코커널(picokernel)이라는 용어는 역사적으로 다음을 가리킨다.
- 모든 커널 코드의 양이 매우 작은 커널
- 운영 체제 밑에 존재하는 가상화 계층 (하이퍼바이저)
- 가장 낮은 수준의 커널 부분을 형성하는 하드웨어 추상화 계층(HAL)
같이 보기
편집각주
편집- ↑ “The MINIX 3 Operating System”. 《minix3.org》. 2012년 6월 21일에 원본 문서에서 보존된 문서. 2012년 6월 8일에 확인함.
- ↑ Liedtke, Jochen (September 1996). “Towards Real Microkernels”. 《Communications of the ACM》 39 (9): 70–77. doi:10.1145/234215.234473.
- ↑ Heiser, Gernot; Uhlig, Volkmar; LeVasseur, Joshua (January 2006). “Are Virtual-Machine Monitors Microkernels Done Right?”. 《ACM SIGOPS Operating Systems Review》 (ACM) 40 (1): 95–99. doi:10.1145/1113361.1113363. 2014년 1월 13일에 원본 문서 (PDF)에서 보존된 문서. 2016년 8월 12일에 확인함.
추가 문헌
편집- scientific articles about microkernels[깨진 링크(과거 내용 찾기)] (on CiteSeer), including:
- Dan Hildebrand (1992). “An Architectural Overview of QNX”. 《Proceedings of the Workshop on Micro-kernels and Other Kernel Architectures》: 113–126. ISBN 1-880446-42-1. - the basic QNX reference.
- Tanenbaum, A., Herder, J. and Bos, H. (2006년 5월). “Can We Make Operating Systems Reliable and Secure?”. 《Computer》 39 (5): 44–51. doi:10.1109/MC.2006.156. 2017년 6월 21일에 원본 문서에서 보존된 문서. 2019년 5월 4일에 확인함. -the basic reliable reference.
- Black, D.L., Golub, D.B., Julin, D.P., Rashid, R.F., Draves, R.P., Dean, R.W., Forin, A., Barrera, J., Tokuda, H., Malan, G., and Bohman, D. (1992년 3월). “Microkernel Operating System Architecture and Mach”. 《J. of Information Processing》 14 (4). - the basic Mach reference.
- MicroKernel page from the Portland Pattern Repository
- The Tanenbaum–Torvalds debate
- The Tanenbaum-Torvalds Debate, 1992.01.29
- Tanenbaum, A. S. "Can We Make Operating Systems Reliable and Secure?".
- Torvalds, L. Linus Torvalds about the microkernels again, 2006.05.09
- Shapiro, J. "Debunking Linus's Latest".
- Tanenbaum, A. S. "Tanenbaum-Torvalds Debate: Part II".