include/目錄包含了作業系統所有的頭檔案(即.h檔案)
src/目錄下包含了作業系統所有的源檔案(.c或.s檔案)
include/目錄下為posix标準頭檔案;
include/sys/目錄下為額外的posix标準頭檔案;
include/minix/目錄下為minix作業系統定義的頭檔案
src/kernel/目錄存放着minix作業系統第一層(程序管理)和第二層(裝置管理)的源代碼;
src/mm/目錄存放着minix作業系統第三層中記憶體管理子系統的源代碼;
src/fs目錄下存放着minix作業系統第三層中檔案管理系統的源代碼;
src/lib目錄下存放着minix作業系統使用的庫例程源代碼(e.g. open,read);
src/tools目錄下存放着init源程式,用于啟動minix;
src/boot目錄下存放着啟動和安裝minix作業系統的源代碼
minix os的主體是以c語言編寫的,在minix2.0的源代碼中,以“.c”結尾的檔案均為c語言源程式
minix的核心源代碼少部分是用彙編語言編寫的,其中大部分是關于中斷與異常處理的底層程式。在minix2.0源代碼中,以“.s”結尾的檔案均為彙編語言源程式
src/commands/ :包含公用程式(e.g. cat, cp, date, ls, pwd)的源代碼
src/test/: 包含有一些被設計用來對新編譯好的minix系統進行完整測試的工具(由于minix是一個用于教學的作業系統,這意味着對它常常要作修改)
src/inet/: 包含了重新編譯minix以使之支援網路的源代碼
minix的内部結構:
minix被組織成4層,每一層執行一套定義得很完整的功能,這4層如下圖所示:

第1、2層的代碼位于src/kernel/下。第一層是minix核心的最底層,該層包括完成以下的功能函數:系統的初始化、中斷、消息傳遞以及程序排程。
以下頭檔案均在目錄include/下:
ansi.h: 用來檢測編譯器是否遵循标準c,如果是的話,_ansi就被定義為31415,如果不是的,則_ansi未定義。通過這個宏來診測。
limits.h: 定義語言類型(如整型)和作業系統(如字)的基本尺寸,提高了可移植性
errno.h: 定義了minix作業系統程式執行時可能出現的各種錯誤号
unistd.h: 包含了大量的重要常數和系統調用函數原型。
string.h: 包含了用于字元處理的函數原型
signal.h: 定義了所有的ansi和posix通用信号,minix支援所有的posix信号
fcntl.h: 定義了open()和fcntl()系統調用所需的各種參數和标志, 注意:create()已經過時。但是為了保持向後相容性,而提供。
stdlib.h: 定義了一些共用的宏、類型和函數原型
termious.h: 被controlling終端類型的使用
a.out.h: 描述了可執行檔案的格式
sys/types.h: 包含重要的類型定義
sys/ioctl.h: 聲明裝置的控制操作
sys/sigcontext.h: 定義了sigreturn(2)系統調用的所需的sigcontext結構
sys/sigptrace.h: 包含ptrace(2)系統調用所需的宏定義
sys/stat.h: 定義了stat()和fstat()系統調用所需的結構和宏
sys/dir.h:給出目錄結構的布局
sys/wait.h: 包含wait()系統調用所需的宏定義
minix/config.h: 設定了minix核心、記憶體管理子系統、檔案管理子系統的配置參數
minix/const.h: 定義了minix作業系統各部分共用的常量(宏定義)
minix/type.h: 定義了minix作業系統各部分公用的結構
minix/syslib.h: 聲明了系統庫函數的函數原型
minix/callnr.h: 定義了允許的系統調用号
minix/com.h: 包含記憶體管理子系統、檔案管理子系統和i/o任務所需的一些宏定義以及i/o任務号
minix/boot.h: 包含檔案系統所需的裝置宏定義以及boot程式傳遞給minix作業系統的參數
詳細分析 minix消息機制的核心:
mpx386.s
start.c
proc.c
保護模式分析:
src/kernel/exception.c
src/kernel/protect.c
src/kernel/klib386.s
src/kernel/klib.s
src/kernel/main.c
src/kernel/misc.c
src/kernel/i8259.c
含了一些debug下的dump機制:
src/kernel/dmp.c
驅動相關代碼分析:
src/kernel/driver.h
src/kernel/driver.c
src/kernel/drvlib.h
src/kernel/drvlib.c
winchester task 分析:
src/kernel/wini.c
src/kernel/at_wini.c
時鐘分析:
src/kernel/clock.c
終端任務分析:
src/kernel/tty.h
src/kernel/tty.c
鍵盤任務分析:
src/kernel/keyboard.c
控制台分析:
src/kernel/console.c
fs與kernel的接口以及mm與kernel接口sys_task
src/kernel/system.c