分類:作業系統

[作業系統] Nachos 安裝

Nachos 是 UC Berkeley 大學以 C++ 開發,做為「作業系統課程」教學用的作業系統模擬軟體。很多美國大學、國內大學使用這個軟體來教作業系統。

Nachos 和一般作業系統不同在於,Nachos 是運行在作業系統之上,一般作業系統是運行在實體機器上。可以把 Nachos 想像成一個作業系統運行在另一個作業系統上面。

Nachos 4.0 以前的版本運行在 32-bit Linux ;4.0 可運行在 64-bit OS 或 DOS。(實際上如何,讀者自己測試了)

Nachos 使用 MIPS R2/3000 精簡指令集,再將這些指令轉譯為 x86 指令集的指令給 X86 架構的實體主機執行。

因此,當撰寫自己的程式後,需使用 Nachos 編譯指令將程式編譯為 MIPS binary code。

回到安裝主題。

Nachos 需安裝在 Linux。我的電腦是 Windows,我打算把 Nachos 安裝在虛擬機 VirtualBox。因此我要做幾件事。

  1. 在 Windows 上安裝 VirtualBox
  2. 在 VirtualBox 安裝 Ubuntu Desktop 14.04 LTS 32-bit
  3. 在 Ubuntu 安裝 Nachos

架構會是這樣:

001

恩,看起來有點複雜。

在 VirtualBox 安裝 Ubuntu 很簡單,這部分就跳過了。以下說明 Nachos 安裝:

安裝 Nachos

(1)安裝 C shell (csh) 和 g++:

sudo apt-get install csh
sudo apt-get install g++

(2)下載 nachos 4.0 和 mips-x86.linux-xgcc

從 Ubuntu 下指令到王凡老師網站下載

wget -d http://cc.ee.ntu.edu.tw/~farn/courses/OS/OS2015/projects/project.1/mips-x86.linux-xgcc.tar.gz
wget -d http://cc.ee.ntu.edu.tw/~farn/courses/OS/OS2015/projects/project.1/nachos-4.0.tar.gz

(3)解壓縮

解壓縮 nachos-4.0.tar.gz

tar –zxvf nachos-4.0.tar.gz

將 mips-x86.linux-xgcc 複製到根目錄並解壓縮

sudo mv mips-x86.linux-xgcc.tar.gz /
tar –zxvf /mips-x86.linux-xgcc.tar.gz

(4) 執行 make

切至 code 資料夾,執行 make

cd nachos-4.0/code
make

完成~~

測試

cd userprog
./nachos –e ../test/test1 

應該會出現以下畫面

image-1

解釋一下上面指令:

(1) cd userprog 是進入 userprog 資料夾。
(2) ./nachos –e ../test/test1
./nachos ,執行目前工作目錄下的 nachos 檔案,透過 nachos 執行在 test 資料夾的一個名為 test1 的可執行檔。

之後,我們可以把自己撰寫的 C/C++ 檔案放在 test 資料夾,透過上面指令以 nachos 執行。

有關 make 指令,參考鳥哥說明

參考