极光城

oslab环境配置及入门

一,OSlab 是什么:

    把 凯文·劳顿 编写的PC虚拟机程序 Bochs 和 linus编写的 linux0.11 放在一个文件夹里,那个文件夹就叫做 OSLAB…..

二,那两个东西都是什么:

    Bochs是一款虚拟机软件,linux0.11是操作系统的汇编+C源码。

    Bochs与 [ Vmware/VirtualBox ] 的区别是什么:

        普通虚拟机帮助多个操作系统安全有序地访问同一组物理硬件,虚拟机进行硬件访问调度,只模拟屏幕,将操作系统的屏幕输出到一个窗口里。

        Bochs虚拟机其实是一个模拟机,它直接用内存和硬盘空间模拟了一组硬件设备,从而使Bochs上的操作系统访问虚拟硬件,而主操作系统访问真实硬件。

三,OSLAB放在哪里:

    放在LINUX任意路径即可,因为OSLAB文件夹里的东西类似绿色软件,任意位置启动皆可。

    同时,对ubuntu linux的要求是:32位,10.04版本及以下,因为从11开始,开发者尝试了不同系统文件目录,使得早期开发的bochs和gcc在11以上工作不正常

10.4 x32bit 官方下载:http://releases.ubuntu.com/

四,装编译器

    将gcc3.4安装包里的文件夹解压到 /tmp 然后进入该目录执行安装

sudo ./inst.sh i386

五,回到OSLAB编译内核

    在 oslab/linux-011/ 下输入清除之前编译残留的命令:

make clean

    编译命令

make all

六,用bochs启动编译出来的操作系统 在 oslab/ 下运行

sudo ./run

就让bochs加载了刚刚编译出来的小系统 这个系统是命令行界面的,直接在bochs下显示了命令行等待:[$/usr/root]你可以在这里敲入命令行指令来操作linux0.11了。

这样就成功运行了oslab。

略多思考

bochs怎么找到linux编译出来的镜像,并且加载呢,笔者感觉应该是一个配置文件,于是进入bochs文件夹下,真找到了bochsrc.bxrc这么一个文件,打开一看,里面写着:

floppya: _1.44="$OSLAB_PATH/linux-0.11/Image"

是靠这句找到了Image。