搭这个实验环境主要是为了学习Linux-0.11的代码,那就须要修改代码再次编译来验证本身的想法。主要的实验环境来自实验楼,可是在那上面毕竟不方便,因此就以实验楼上的为基础在本身的虚拟机上搭建一个环境。html
主要的实验环境和Linux-0.11的源代码已经打包在个人github上了:Linux0.11-Lablinux
个人实验环境在ubuntu18.04中,其它版本应该也同理,可是编译Linux 0.11内核须要低版本的gcc,因此须要先安装gcc-3.4.c++
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
sudo apt install bin86
进入linux-0.11文件夹,执行make命令便可,会生成Image文件。git
在源目录下,执行./run脚本便可启动Bochs,就是Linux0.11了github
在编译内核的时候,可能会出现两个错误ubuntu
./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
./bochs/bochs-gdb: error while loading shared libraries: libXpm.so.4: cannot open shared object file: No such file or directoryspa
安装对应的32位库便可code
sudo apt install libxpm:i386
原文出处:https://www.cnblogs.com/secoding/p/11731851.htmlhtm