앤드류 타넨바움은 MINIX라는 운영체제를 개발하신 네덜란드의 교수님이십니다. MINIX는 마이크로 커널을 사용하며 버전 1-2는 교육용으로 배포되었으며 3은 임베디드 시스템용으로 BSD라이센스 밑에 배포되고 있습니다.

리누스 토발즈는 LINUX의 개발자입니다. LINUX는 모놀리식 커널을 사용하며 GPL라이센스하에 배포되고 있습니다. 초기 리눅스는 MINIX를 사용해야만 동작이 가능했으나 곧 완전히 독자적인 커널로 배포되게 되었습니다.

모놀리식 커널은 마이크로 커널에 비해 모듈화 등이 덜 이루어지고 커널에 통째로 파일 입출력등의 이런저런 기능이 들어간다는 특징이 있습니다. 마이크로커널은 이러한 기능들이 커널과 별개의 모듈 등으로 제작됩니다.


그래서, 그 미닉스 개발자인 앤드루 타넨바움과 리눅스 개발자인 리누스 베네딕트 토발즈님이 1992년에 논쟁을 한 적이 있습니다. 시작은 타넨바움님(ast)이 리눅스 운영체제의 구조가 낡았다는 글을 미닉스 유즈넷 (comp.os.minix) 에 올린 것에서부터였습니다. ast님이 문제삼은 것은 리눅스가 (당시 대세인 마이크로커널에 비해 떨어진다고 믿어지던) 모놀리식 커널 구조를 사용했다는 점과 당시 리눅스는 80386대상으로 개발되어 다른 cpu로 포팅이 힘들다는 점이었습니다. 리누스는 마이크로커널에 비해 모놀리식 커널이 이론상으론 떨어진다고 인정하면서도 아직도 GNU/Mach(hurd 커널)이 미완성이며 공개된 유닉스계열 운영체제중 가장 쓸만한 운영체제는 리눅스라는 점을 가리켰습니다. 포터빌리티에 관해서는 개인이 하는 소규모 프로젝트이니 이해해 달라고 했습니다. 하지만 워낙 민감한 토픽이었던 만큼 여기서 글은 끝나지 않고, 리누스, 타넨바움을 포함해 여러개의 추가적인 댓글이 달리면서 논쟁은 한참, 더 깊게 들어가면서 이어집니다.


현재는 리눅스가 압도적인 포터빌리티와 규모를 가지고 있고 미닉스는 이제 임베디드 시스템을 포함한 소규모 시장을 겨냥하는 정도지만, 해당 스레드를 보면 당시 컴퓨터 geek들의 시각을 잘 알 수 있습니다.


해당 논쟁의 원문은 밑의 링크에서 확인 가능합니다. (구글 그룹 - comp.os.minix 유즈넷)

https://groups.google.com/forum/?hl=ko#!search/comp.os.minix/comp.os.minix/wlhw16QWltI/XdksCA1TR_QJ