操作系统实验(编译内核)实验指导书.doc
文本预览下载声明
实验一 虚拟机平台下的Linux内核编译
步骤一、实验准备:将windows下的Linux-2.4.32内核复制到虚拟机中。
一般有三种方法可以实现:虚拟磁盘、文件共享、网络设置。
下面介绍的是虚拟磁盘的方法:
我们已经将Linux-2.4.32内核源代码的压缩文件放入虚拟磁盘,并在FTP上共享。
1.请从FTP服务器上将实验指导书以及虚拟磁盘拷贝到E盘根目录下。
2. windows平台下启动虚拟机VMware, VMWare中安装虚拟硬盘:
1)安装前建议先把内存调大一些,这样后面编译的速度会快一些。(Memory,调到512M)
2)点击Add
3)点击Next
上述步骤完成后点击Finish。
观察发现:虚拟机中将出现两个磁盘,一个是原有的磁盘,另一个是虚拟磁盘,相当于对本机外接了一个磁盘。(请将设置完成后的虚拟机中出现两个磁盘的界面截图,一个是6G,另一个106M)。
4.启动Linux操作系统
在启动过程中可以见到当前只有一个可选择内核,内核版本是Linux2.4.20。我们本次实验的目的是在虚拟机下重新编译一个新的内核,内核版本是Linux2.4.32.完成本实验后,重启虚拟机将出现两个可选择内核。
5.将虚拟磁盘安装到/mnt/mydisk目录下.(mount命令),如图:
1)先用fdisk –l 命令查看虚拟磁盘是否“连接”成功。记下虚拟磁盘名称(/dev/sdb)。
2)进入到mnt目录下创建mydisk目录,该目录作为访问虚拟磁盘的入口,此时该目录为空。
3)返回根目录root,并安装虚拟磁盘:mount /dev/sdb /mnt/mydisk
6.安装完成后,mydisk目录下出现了虚拟磁盘中的文件,如图。其中Linux-2.4.32.tar.gz就是待编译内核的源代码。将该文件复制(cp)到本地磁盘的/usr/src目录下,并且解压缩(tar –xzvf),如图。当然,这两个操作也可以通过图形用户(GUI)界面来完成。
(拷贝和解压缩都需要一些时间,请耐心等待)
7.解压完成后,就可以开始编译操作系统Linux-2.4.32了(见步骤二)。
步骤二:Linux内核编译
1.开始前先返回根目录/root,用uname –a命令查看Linux当前内核信息,(并截图)
2.进入到/usr/src/Linux-2.4.32目录下
依次运行如下命令:(每个命令后虚拟机做相应操作需要一些时间,请耐心等待)
make mrproper:完全清除上一次编译内核时的所有配置以及生成的文件(如图)。
make clean:清除大部分文件。
make menuconfig :基于文本选单的配置界面,选择操作系统的基本模块。
2.输入make menuconfig后将出现蓝色界面,选择操作系统的模块。(完成下述配置后请截图)。
M:表示编译成模块,*表示编译进内核, 表示不编译。
1)选择处理器
Processor type and features---Processor family---386
2)Ram Disk驱动
Block devices---
* RAM disk support
(4096) Default RAM disk size (NEW)
* Initial RAM disk (initrd) support
3)文件系统
File systems---
[ * ] Ext3 journalling file system support
[ * ] JBD (ext3) debugging support
4)BusLogic驱动
* SCSI support---
SCSI low-level drivers ---
M BusLogic SCSI support
5)Ipaddr补充:
Fusion MPT device support ---
Fusion MPT (base + ScsiHost) drivers
(ipaddr注:此处一定要选M,不能是*,更不能不选,否则,make install报错{No Module mptbase found for kernel})
Fusion MPT misc device (ioctl) driver
3. make dep (建立编译时所需的从属文件。注意:如果内核从未编译过,此步可跳过)
4. make clean (清除内核编译的目标文件。注意:如果内核从未编译过,此步可跳
显示全部