您的位置:首页 > 运维架构 > Linux

用bochs安装linux0.11内核

2012-02-23 17:07 896 查看
参考:http://www.oldlinux.org/oldlinux/forumdisplay.php?fid=4



1.先用gcc编译linux0.11内核(不含文件系统)

这是别人修改后可以gcc编译的,源码已经放到:

\\Cnpc0165-cd\Books\Computer\kernel\linix-0.11\linux-0.11-060618-gcc4

步骤:

make clean

make

之后生成Image这就是内核(含bootsect即MBR)

2.安装bochs2.2.1



\\Cnpc0165-cd\Books\Computer\kernel\linix-0.11\Bochs-2.1.1.exe

修改配置

###############################################################

# bochsrc.bxrc file for Tinix.

###############################################################

# how much memory the emulated machine will have

megs: 32

# filename of ROM images

romimage: file=$BXSHARE/BIOS-bochs-latest, address=0xf0000

vgaromimage: $BXSHARE/VGABIOS-elpin-2.40

# what disk images will be used

#虚拟软盘A作为启动盘,就是内核Image

floppya: 1_44=Image, status=inserted

floppyb: 1_44=rootimage-0.11, status=inserted

#虚拟硬盘作为文件系统

ata0-master: type=disk, path="hdc-0.11.img", mode=flat, cylinders=121, heads=16, spt=63

# choose the boot disk.

boot: a

# where do we send log messages?

log: bochsout.txt

# disable the mouse, since Tinix is text only

mouse: enabled=0

# enable key mapping, using US layout as default.

keyboard_mapping: enabled=1, map=$BXSHARE/keymaps/x11-pc-us.map

3.文件系统制作必须是minix的(0.11内核只认minix)

先用bxIamge创建一个256M的虚拟硬盘hdc.img

将创建的256MB硬盘Image文件hdc.img进行分区并创建MINIX文件系统,将在这个Image文件中创建1个分区,并且建立成MINIX文件系统。

(1)将hdc.img做为从盘挂到Bochs下已有的模拟系统中(例如SLS Linux):

编辑SLS Linux系统的Bochs配置文件bochsrc.bxrc。在ata0-master一行下加入我们的硬盘Image文件的配置参数行:

ata0-slave:type=disk, path=..\Linux-0.11\hdc.img,cylinders=520, heads=16, spt=63

(2)在Bochs下运行SLS Linux

(3)利用fdisk命令在hdc.img文件中建立1个分区。

由于SLS Linux默认建立的分区类型是支持MINIX2.0文件系统的81类型(Linux/MINIX),因此需要使用fdisk的t命令把类型修改成80(Old MINIX)类型。 这里请注意,我们已经把hdc.img挂接成SLS Linux系统下的第2个硬盘。在SLS Linux下第2个硬盘整体的设备名称是/dev/hdb

>fdisk /dev/hdb

>(m for help):

>n //新建分区

>1 //起始柱面

>+63M //结束柱面

>t //改变文件类型

>L

>80 //80 为minix格

(4) 再次进入SLS Linux模拟系统后,我们使用mkfs命令在刚建立的第1个分区上创建MINIX文件系统。命令与信息如下所示。这里创建了具有64000个数据块的分区(一个数据块为1KB字节)。

mkfs /dev/hdb1 64000

(5)将软盘内容复制到硬盘

(a)用软盘启动:

先放入boot盘,再放入root盘

(b)若还想格式化hdc.img:

mkfs /dev/hdb1 64000

(c)把软盘上的根文件系统复制到硬盘上

[/mnt]#for i in bin dev etc usr tmp

> do

> cp +recursive +verbose /$i $i

>done

注解: 这个时候我们就可以mount我们的hdc.img了,然后把上面的文件拷贝到我们的硬盘上,在拷贝的时候同时建立了硬盘上的文件和i节点的对应关系,一个i节点是否可用又是由i节点位图对应的位来确定的,此处我们需要知道的就是在我们的硬盘上文件和i节点的已经建立对应关系。

具体制作文件系统参考:http://www.cnblogs.com/hongzg1982/articles/2115286.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: