快速搭建Linux-0.11实验环境

搭这个实验环境主要是为了学习Linux-0.11的代码,那就须要修改代码再次编译来验证本身的想法。主要的实验环境来自实验楼,可是在那上面毕竟不方便,因此就以实验楼上的为基础在本身的虚拟机上搭建一个环境。linux

主要的实验环境和Linux-0.11的源代码已经打包在个人github上了:Linux0.11-Labc++

Get start

个人实验环境在ubuntu18.04中,其它版本应该也同理,可是编译Linux 0.11内核须要低版本的gcc,因此须要先安装gcc-3.4.git

  • 依次执行下面的命令,来安装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
复制代码
  • 实验还须要as8六、ld86,若是没有的话也须要进行安装,as8六、ld86在bin86包中

sudo apt install bin86
复制代码
  • 编译内核

进入linux-0.11文件夹,执行make命令便可,会生成Image文件。github

  • 启动bochs

在源目录下,执行./run脚本便可启动Bochs,就是Linux0.11了ubuntu

可能出现的问题

在编译内核的时候,可能会出现两个错误bash

  • 缺乏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 directoryspa

安装对应的32位库便可code

sudo apt install libxpm:i386
复制代码
相关文章
相关标签/搜索