- 论坛徽章:
- 0
|
很久都没有写博客了,自从到公司实习以来时间就一直很紧迫,每天在公司几乎都是逼着干活,唉,无语……
前段时间我在公司一直都是做Wince,现在改做单片机,而对于linux,一直都没有问津。也许是我这人太懒了,不愿意挤出时间来学习,所以,也就隔了那么长的时间才想起该写写博客了。我现在终于作出了一个决定,我决定从现在开始每天抽出一点时间来学习Linux的内核。Linux可是个好东西,千万不要丢了啊……
我今天心血来潮,在笔记本上用Vmware装了个Redhat9,开始尝试在Redhat9上建立一个linux-0.11的运行环境,结果是成功了,但之中也付出了不少的努力,我想这些东西应该要花点时间把它写下来,说不定终身受益。我觉得我就是有点懒,其实我以前还有好多东西应该写下来的,但现在需要的时候都不知道往哪找……废话太多了^_^
所需要的软件如下:
http://jaist.dl.sourceforge.net/sourceforge/bochs/bochs-2.3.5.tar.gz
http://mtools.linux.lu/mtools-3.9.11.tar.bz2
bochs是模拟器,它可以虚拟一个386的PC机,由于早期的计算机都采用软盘,而现在的计算机机会都没有了软驱,所以,我们要跑linux0.11,这个虚拟机是必不可少的.
mtools是软盘操作工具,安装后可以对软盘或软盘镜像进行操作,有点像windows下的WinImage工具,不过mtools都是一些命令而已.
(1)安装Bochs
进入Bochs目录
./configure
make make
install
(2)安装mtools
进入mtools目录
./configure
make make
install
(3)编译内核源码
![]()
文件:
linux.tar.gz
大小:
93KB
下载:
下载
make clean
make
编译后可在linux源码根目录下找到Image文件,这个就是linux的内核镜像
(4)下载
grubdos.img
hdimage-devel
rootimage-0.11
三个文件,这三个文件可在OldLinux的网站上找到
(5)mcopy -i grubdos.img Image ::/boot/myimage
将镜像加入到软盘镜像boot\myimage下
(6)编辑menu.lst文件,没有就自己做一个,按照以下复制即可:
default 0
title Linux 0.11
root (fd0)
kernel /boot/myimage
boot
编辑完后保存,用mcopy -i grubdos.img menu.lst ::/boot/grub复制到软盘镜像的boot\grub目录下
(7)编写.bxrc文件, 可按照以下复制:
注意floppya,floppyb和ata0-master对应的grubdos.img, hdimage-devel和rootimage-0.11
的路径要对, 保存为linux0.11.bxrc
megs: 16
romimage: file="/usr/local/share/bochs/BIOS-bochs-latest", address=0x00000
vgaromimage: file="/usr/local/share/bochs/VGABIOS-lgpl-latest"
boot: floppy
floppya: image="images/grubdos.img", status=inserted
floppyb: image="images/rootimage-0.11", status=inserted
ata0: enabled=1, ioaddr1=0x1f0, ioaddr2=0x3f0, irq=14
ata0-master: type=disk, path="images/hdimage-devel", mode=flat, cylinders=410, heads=16, spt=38
#ata0-master: type=disk, path="images/hdimage", mode=flat, cylinders=121, heads=16, spt=63
ata1: enabled=1, ioaddr1=0x170, ioaddr2=0x370, irq=15
ata2: enabled=0
ata3: enabled=0
parport1: enabled=1, file=""
parport2: enabled=0
com1: enabled=1, mode=null, dev=""
com2: enabled=0
com3: enabled=0
com4: enabled=0
i440fxsupport: enabled=1
usb1: enabled=0
sb16: enabled=0
floppy_bootsig_check: disabled=0
vga_update_interval: 40000
vga: extension=vbe
keyboard_serial_delay: 250
keyboard_paste_delay: 100000
cpu: count=1, ips=2000000
#text_snapshot_check: 0
mouse: enabled=0
private_colormap: enabled=0
clock: sync=none, time0=local
ne2k: enabled=0
pnic: enabled=0
log: -
logprefix: %t%e%d
debugger_log: -
panic: action=ask
error: action=report
info: action=report
debug: action=ignore
pass: action=fatal
keyboard_mapping: enabled=0, map=
keyboard_type: mf
user_shortcut: keys=none
(8)可以开始跑linux0.11了
输入bochs -f linux0.11.bxrc,然后输入6按回车,linux0.11就可以启动了
![]()
![]()
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/37292/showart_421699.html |
|