快速搭建Linux-0.11實驗環境


搭這個實驗環境主要是為了學習Linux-0.11的代碼,那就需要修改代碼再次編譯來驗證自己的想法。主要的實驗環境來自實驗樓,但是在那上面畢竟不方便,所以就以實驗樓上的為基礎在自己的虛擬機上搭建一個環境。

主要的實驗環境和Linux-0.11的源代碼已經打包在我的github上了:Linux0.11-Lab

Get start

我的實驗環境在ubuntu18.04中,其它版本應該也同理,但是編譯Linux 0.11內核需要低版本的gcc,所以需要先安裝gcc-3.4.

  • 依次執行下面的命令,來安裝gcc-3.4

wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.4/gcc-3.4-base_3.4.6-6ubuntu3_amd64.deb

sudo dpkg --force-depends -i gcc-3.4-base_3.4.6-6ubuntu3_amd64.deb


wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.4/gcc-3.4_3.4.6-6ubuntu3_amd64.deb

sudo dpkg --force-depends -i gcc-3.4_3.4.6-6ubuntu3_amd64.deb 


wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.4/cpp-3.4_3.4.6-6ubuntu3_amd64.deb

sudo dpkg --force-depends -i cpp-3.4_3.4.6-6ubuntu3_amd64.deb 

 
wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.4/g++-3.4_3.4.6-6ubuntu3_amd64.deb

sudo dpkg --force-depends -i g++-3.4_3.4.6-6ubuntu3_amd64.deb

 

wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.4/libstdc++6-dev_3.4.6-6ubuntu3_amd64.deb

sudo dpkg --force-depends -i libstdc++6-dev_3.4.6-6ubuntu3_amd64.deb
  • 實驗還需要as86、ld86,如果沒有的話也需要進行安裝,as86、ld86在bin86包中

sudo apt install bin86
  • 編譯內核

進入linux-0.11文件夾,執行make命令即可,會生成Image文件。

  • 啟動bochs

在源目錄下,執行./run腳本即可啟動Bochs,就是Linux0.11了

可能出現的問題

在編譯內核的時候,可能會出現兩個錯誤

  • 缺少libSM.so.6

./bochs/bochs-gdb: error while loading shared libraries: libSM.so.6: cannot open shared object file: No such file or directory

安裝對應的32位庫即可

sudo apt install libsm6:i386
  • 缺少libXpm.so.4

./bochs/bochs-gdb: error while loading shared libraries: libXpm.so.4: cannot open shared object file: No such file or directory

安裝對應的32位庫即可

sudo apt install libxpm:i386


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM