( 1 ).前言

2003 年以后, fmslabs 的 RTLinux Free 版本为 3.2Pre ,和以前的 RTLinux 3.1 比较,不再需要必须从 2.4.4 的内核上安装。 RTLinux 3.2 支持的 Linux 内核为 2.4.19/2.4.20/2.4.21Pre5

( 2 ).准备

目前计算机上已经存在系统为 Vine Linux 2.5 ,内核为 2.4.18. 硬盘总共大小为 100G, 前 4G 为 dos 主分区,安装 windows 系统,使用 OSLoader 启动,后 96G 为 Extend 分区其中分配如下:

hda1      FAT32    Window 4G,

hda5      Ext3      /boot      500M

hda6      FAT32    Window 40G

hda7      Ext3      /root       40G

hda8      Ext3      /home    4G

其余给 linux swap

( 3 ).下载

首先,从下载 RTLinux 3.2 和 2.4.20 的内核

2.4.20 内核下载地址

ftp://ftp.kernel.org/pub/linux/kernel/v2.4/linux-2.4.20.tar.bz2

RTLinux 3.2 的下载地址

http://www2.fsmlabs.com/3.2-free.html

填好注册表格后,即可下载

( 4 ).复制,解压缩和建立目录

以 root 身份登录,建立如下目录

cd /usr/src

mkdir rtlinux

将下载的文件复制到此,此时此目录下内容如下:

ls /usr/src/rtlinux

linux-2.4.20.tar.bz2

rtlinux-3[1].2-pre2.tar.bz2

现在解开压缩包

bunzip2 linux-2.4.20.tar.bz2 | tar –xvf –

bunzip2 rtlinux-3[1].2-pre2.tar.bz2 | tar –xvf –

此时目录结构如下

ls /usr/src/rtlinux

linux-2.4.20.tar.bz2          rtlinux-3[1].2-pre2.tar.bz2

linux-2.4.20                      rtlinux-3.2-pre2

现在建立必要的连接 :

ll /usr/src

会发现这样的一个连接

linux à /usr/src/linux-2.4.18

删除这个连接

cd /usr/src

rm linux

然后建立一个新的符号连接:

ln –s /usr/src/rtlinux/linux-2.4.20 linux

至此,已经将新内核连接到 /usr/src/linux 上了。

( 5 ).打补丁,配置内核

下面给内核打 Realtime 的补丁。注意到

/usr/src/rtlinux/rtlinux/rtlinux-3.2-pre2 下有一个目录名字叫 patches ,里面内容如下:

kernel_patch-2.4.19-rtl3.2-pre2     README

kernel_patch-2.4.20-rtl3.2-pre2

kernel_patch-2.4.21-pre5-rtl3.2-pre2

选择其中的 2.4.20 的补丁,运行 patch 命令:

cd /usr/src/linux

patch -p1 < /usr/src/rtlinux/rtlinux-3.2-pre2/patches/kernel_patch-2.4.20-rtl3.2-pre2

此时 realtime 的补丁已经打入新内核中

然后运行编译配置命令,

cd /usr/src/linux

如果在 xwindow 下运行

make xconfig &

如果没有安装 xwindows ,运行

make menuconfig

出现内核配置对话框,一般用缺省配置就可以,但是注意以下一些点 :

5.1. 如果目前的 linux 分区为 ext3 分区,内核缺省选项可能是不支持,在 FileSystem 中,选择支持 ext3 文件系统。

5.2. 如果硬盘中存在 dos 分区,并且这些分区在 /etc/fstab 中指定为启动后自动 mount ,则必须配置支持 dos 分区格式 fat16 和 fat32 ,在 FileSystem 中,选择支持 vfat 文件系统。如果需要,选择支持 ntfs 文件系统

5.3. 如果网卡特殊,注意配置特殊的网卡驱动程序,本计算机使用了 Realtek 8139 网卡。在 Network device support 中选择 Ethernet(10 or 100 Mbit) 然后选中 Realtek RTL-8139 PCI Fast Ethernet Adaptor support 。

有些选象有 3 个选象 y,m,n 分别对应

yes :该模块被直接编译进入内核,内核会因此变大

modular :该模块可以在内核启动时被装载,这样内核不会变大,但是可以得到相应的功能

no :不安装

全部配置完成后,选择存盘并且退出。下面可以开始编译内核了

make dep clean bzImage

开始编译,需要若干时间,因机器而异,可能长达数小时。如果编译成功,最后显示

Boot sector 512 bytes

Setup is xxxxx bytes.

System is xxxxx KB

一般会提示,内核过大,无法复制到一张软盘上。忽略这些提示

如果编译过程出现错误,必须重新配置内核编译选项

cd /usr/src/linux

make xconfig & 或者 make menuconfig

配置需要若干技巧和经验。具体可以参考相关的文章。

下面将相应的驱动程序模块,安装到指定位置( /lib/modules/2.4.20-rtl3.2-pre2 ),供新内核启动时装载这些模块。

make modules modules_install

最后检查一下编译是

RTlinux3.2安装的更多相关文章

  1. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  2. 网络原因导致 npm 软件包 node-sass / gulp-sass 安装失败的处理办法

    如果你正在构建一个基于 gulp 的前端自动化开发环境,那么极有可能会用到 gulp-sass ,由于网络原因你可能会安装失败,因为安装过程中部分细节会到亚马逊云服务器上获取文件.本文主要讨论在不变更 ...

  3. Sublime Text3安装JsHint

    介绍 Sublime Text3使用jshint依赖Nodejs,SublimeLinter和Sublimelinter-jshint. NodeJs的安装省略. 安装SublimeLinter Su ...

  4. Fabio 安装和简单使用

    Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...

  5. gentoo 安装

    加载完光驱后 1进行ping命令查看网络是否通畅 2设置硬盘的标识为GPT(主要用于64位且启动模式为UEFI,还有一个是MBR,主要用于32位且启动模式为bois) parted -a optima ...

  6. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...

  7. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...

  8. 【原】nodejs全局安装和本地安装的区别

    来微信支付有2年多了,从2年前的互联网模式转变为O2O模式,主要的场景是跟线下的商户去打交道,不像以往的互联网模式,有产品经理提需求,我们帮忙去解决问题. 转型后是这样的,团队成员更多需要去寻找业务的 ...

  9. tLinux 2.2下安装Mono 4.8

    Tlinux2.2发行版基于CentOS 7.2.1511研发而成,内核版本与Tlinux2.0发行版保持完全一致,更加稳定,并保持对Tlinux2.0的完全兼容.Mono 4版本要求CentOS 7 ...

随机推荐

  1. Jetson TX2上的demo(原创)

    Jetson TX2上的demo 一.快速傅里叶-海动图 sample The CUDA samples directory is copied to the home directory on th ...

  2. 面向对象_03【关键字:final使用】

    final关键字:可修饰类.变量名和方法1,final修饰的类不能被继承2,final修饰的变量(成员.局部)是常量,只能赋值一次.3,final修饰的方法不能被子类重写Example:一:修饰类 / ...

  3. 关于fprint()和fwrite()

    int num = 12345; 将12345作为二进制数存储到num中 1. fprintf(fp,"%d",num); //把字符'1','2','3','4','5'的二进制 ...

  4. svn基本操作和图标介绍

    注意事项:    .svn这个隐藏目录记录着两项关键信息:工作文件的基准版本和一个本地副本最后更新的时间戳,千万不要手动修改或者删除这个.svn隐藏目录和里面的文件!!,否则将会导致你本地的工作拷贝( ...

  5. 事件委托live,delegate,on区别

    事件委托 我们知道,DOM在为页面中的每个元素分派事件时,相应的元素一般都在事件冒泡阶段处理事件.在类似 body > div > a 这样的结构中,如果单击a元素,click事件会从a一 ...

  6. CentOS7系统配置国内yum源和epel源

    1.首先进入/etc/yum.repos.d/目录下,新建一个repo_bak目录,用于保存系统中原来的repo文件 [root@bogon ~]# cd /etc/yum.repos.d/ [roo ...

  7. SAP进度条

     一.代码示例: ),"行数 ll_tabix(),"循环标号 ll_pecnt DECIMALS ,"百分比 ll_pecet(),"百分数 ll_text( ...

  8. SSD trim及4k对齐

    trim可以帮助减小SSD的写放大WA问题,删除文件后不仅仅是将文件标记为删除,而是在SSD空闲的时候统一进行删除. Linux下的trim支持叫discard,修改fstab文件,在挂载参数中加上d ...

  9. Spring单元测试

    1.基于AbstractDependencyInjectionSpringContextTests Spring的单元测试可以使用AbstractDependencyInjectionSpringCo ...

  10. Spring国际化

    国际化(Internationalization)有时候被简称为i18n,因为有18个字母在国际化的英文单词的字母i和n之间.Spring对国际化的支持示例如下所示. 需要将spring.tld放到工 ...