這是一個不到2000行的操作系統(tǒng),巧妙地利用ARM9 CPU的內(nèi)存管理單元(MMU)實現(xiàn)進程的切換。ARM9的4G虛擬地址可分成128個進程空間,每個32M。雖然它們的虛擬地址(VA)都是0-(32M-1),但是對應(yīng)的MVA(Modified vitual address,由虛擬地址VA和進程號PID組合而來)不一樣,設(shè)置MVA對應(yīng)的頁表指向不同物理地址就可以很方便地讓各進程運行空間相互隔開。代碼很少,注釋豐富,希望能對想理解操作系統(tǒng)、了解ARM體系結(jié)構(gòu)的朋友有所幫助。
標簽:
2000
操作系統(tǒng)
上傳時間:
2015-04-12
上傳用戶:cainaifa