首先,安装环境为Redhat9 内核版本2.4.20-8,其中Redhat9装在了虚拟机vmware6.5下
RTLinux选用了rtlinux-rtl3.2-pre3安装方法为
一、虚拟机工具条的安装:首先在虚拟机上安装Redhat9并确保安装好vmware工具条,在安装工具条的过程中,若出现what is the location of the gcc?则先选择no,后运行
/usr/bin中的vmware-config-tools.pl后,则可以成功安装
二、RTLinux的安装
下载内核版本为2.4.20的源代码linux-2.4.20.tar.bz2 及rtlinux-rtl3.2-pre3.tar.bz2
将这两个文件放到/usr/src/下
1)解压缩linux-2.4.20.tar.bz2,解压缩之后为linux-2.4.20,并建立一个链接linux指向它
cd /usr/src
tar jxvf linux-2.4.20.tar.bz2
ln –s linux-2.4.20 linux
2)解压rtlinux-rtl3.2-pre3.tar.bz2,解压后为rtlinux-3.2-pre3,并在其下建立一个指向linux-2.4.20的链接linux
tar jxvf rtlinux-rtl3.2-pre3.tar.bz2
ln –s /usr/src/linux-2.4.20 rtlinux-3.2-pre3/linux (建立链接文件)
3)给内核打补丁
cd linux
patch –p1 < ../rtlinux-3.2-pre3/patches/kernel_patch-2.4.20-rtl3.2-pre3
4)内核配置
make menuconfig这步是比较重要的一步,最后没有成功一般都为此步没有配置好
需要做改动的地方为:
由于选用的是虚拟机,所以需要在scsi support中选择相应的Buslogic support
在File Systems中选择所有带有ext3的选项
processor type中选择你所对应的CPU类型,我使用的为vmware6.5选择的是386,(可以使用/proc/cpuinfo)来查看
Loadable module support->
[*]Enable loadable module support,RTLinux使用模块功能来加载实时任务,此功能必须存在。
General setup->
(Direct) PCI access mode
[] Advanced Power Management BIOS,机器的APM功能一定要关闭,它会抢夺RTLinux对硬件的控制。
Memory Technology Devices(MTD)->
[*]Memory Technology Devices(MTD) support
此选项使RTLinux支持电子盘(SolidStateFlashDisk)
File systems->
[*]Compressed ROM file system support,支持压缩的ROM文件系统,对于存储空间比较紧张的嵌入式系统建议使用。
[*]/proc file system support
退出选择保存设置
5)编译内核
make dep
make clean(在重新进行内核配置时进行,第一次不必)
make bzImage
make modules
make modules_install
6) 进行内核启动相关设置
cp arch/i386/boot/bzImage /boot/rtzImage
cd /lib/modules/2.4.20-rtl3.2-pre3/kernel/drivers/
mkdir scsi
cd /usr/src/linux
cp drivers/scsi/BusLogic.o /lib/modules/2.4.20-rtl3.2-pre3/kernel/drivers/scsi/
cd /boot
mkinitrd initrd-2.4.20-rtl3.2-pre3.img 2.4.20-rtl3.2-pre3若为失败后重新再来则无需再做此步
7)添加新内核选项(若为失败后重新再来则无需再做此步)
将以下内容添加到/etc/grub.conf中
title rtlinux
root(hd0,0)
kernel /rtzImage ro root=/dev/sda2 (可用df –u查看根目录信息)
initrd /initrd-2.4.20-rtl3.2-pre3.img
重新启动系统,选择进入rtlinux实时内核
三 RTLinux实时内核的配置
1) cd /usr/src/rtlinux-3.2-pre3
2) 编译rtlinux内核
make dep
make
make install
四 测试RTLinux模块
make
regression
若失败则会死机
我配置成功后的截图为
有两个模块失败了,但是没有影响我的正常使用
启动rtlinux:rtlinux start
查看rtlinux:rtlinux status
关闭rtlinux:rtlinux stop
注:若在最后一步出现失败死机的状态,可以返回从第四步内核配置开始重新再做一遍,一定要注意内核配置的各个选项