在win7 X64上配置Unix V6++

来源:互联网 发布:oop面向对象 js 编辑:程序博客网 时间:2024/05/21 21:01

这学期学的操作系统.

老师让我们下课自己去配置Unix V6++系统(据说是我们老师用C++写的).然后,她给了我们一堆资料,让我们自己去探索,说是自己搞出来的才能掌握(简直不能忍惊恐,好难).看着电脑里的400M的资料,楼主瞬间有了砸电脑的冲动有木有.真的好多的东西都不懂(请原谅我是小白).什么bochs虚拟机啊,什么Cygwin啊,都没听说过.

用了整整一天的时间,终于配置好了传说中的V6++,下面就跟大家分享一下我配置的大概流程吧.(请注意,这是在win7旗舰版上配置的流程,其他系统或机型没试过)

建议:与V6++相关的软件都安装在同一个大的文件夹内,而且文件夹目录最好不要有中文,这个你懂的

一.配置V6++运行环境

1.下载运行所必须的软件,有:MinGW,nasm,bochs,gdb(调试内核用)

2.安装MinGW,nasm,gdb.(如果不会可自行百度)

3.安装bochs.不过请注意,从官网直接下载下来的bochs貌似是不支持调试功能的.那么,我们就需要在windows上自己重新编译bochs了,步骤如下:

a)下载bochs的源码包,哪个版本都行.我的是bochs-2.6

b)解压,这个时候,在网上下载cgywin这个软件(这是在windows平台下模拟unix的一个软件,就是个控制台,可以运行大部分unix的命令).安装cgywin.然后,从cgywin进入你的bochs源码包所在的目录,(至于怎么进入目录,在此就不赘述了,不懂的童鞋可以自行百度).也就是类似与如下图所示的文件夹中

c)在命令行中执行如下命令:    ./configure  -enable-pci \

     -enable-clgd54xx \

     -enable-usb \

     -enable-usb-ohci \

     -enable-show-ips \

     -with-win32 \

     -with-rfb \

     -with-nogui \

       -enable-gdb-stub

然后,你再等待蛮蛮长的时间,bochs应该就编译好了.虚拟机配置完毕!庆祝一下.

4.解压UNIX V6++的源码包,打开如图所示的文件夹.找到oosvars_mingw.bat文件.右键编辑.

5.将图中的四个路径:oos_path,mingw_path,nasm_path,bochs_path配置好.大家的电脑肯定和我的不一样,参考它的格式写好就行

6.配置环境变量:将5种的4个路径全部配置到系统的环境变量中(想必大家都会)

二.启动UNIX V6++

到了这里,UNIX V6++的准备工作应该已经就绪,那么.就可以启动虚拟机了

1.单击下图中红圈中的快捷方式.

2.在出现的命令行中输入clean 命令,目的是清除原先的UNIX V6++操作系统镜像;然后输入all命令,开始生成新的系统镜像,等待片刻后,镜像生成完毕.最后输入run命令.运行UNIX V6++.楼主运行系统成功的图片如下:

三.总结

注意:在按上述步骤进行后,UNIX V6++系统仍然是不可调试的,因为没有打开它的调试开关.如果要调试,需要打开开关,如下图所示.

右键编辑bochsrc.bxrc文件,注意到,文本的第四行:gdbstub: enabled=1, port=1234, text_base=0, data_base=0, bss_base=0   ,在开始是注释上的,也就是说,前面有个#号,我们要做的,就是把#去掉,这样,就可以调试了.但是.要注意,在重新启动虚拟机的时候.要先执行clean命令,清除之前的镜像,然后all命令,最后run命令,就可以调试了.这里用的是gdb调试.需要保证gdb是打开的.这不是本文的重点,不再详述.

最后,希望有兴趣的童鞋能够通过本文有所启发,那就再好不过了.如果还有童鞋有什么疑问,可以关注微信公众号Yongf     或者扫描下面的二维码关注下,在上面留下问题,我看到都会回答的.

0 0