已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
RT-linux的安装详解修订版本号1v编辑时间2017.10编辑者Mercy校验者Leo审核者Limis目的:更简单明了的明白如何安装RT-linux此篇文档针对于Centos 要想重新编译内核 安装RT-linux 首先需要了解一下 RT-linuxRT-Linux开发者并没有针对实时操作系统的特性而重写Linux的内核,因为这样做的工作量非常大,而且要保证兼容性也非常困难。将linux的内核代码做一些修改,将linux本身的任务以及linux内核本身作为一个优先级很低的任务,而实时任务作为优先级最高的任务。即在实时任务存在的情况下运行实时任务,否则才运行linux本身的任务。RT-Linux能够创建精确运行的符合POSIX.1b标准的实时进程;并且作为一种遵循GPL v2协议的开放软件,可以达GPL v2协议许可范围内自由地、免费地使用、修改和再发生。RT-linux的调度Linux采用标准的UNIX技术使得内核是不可抢占的。采用基于固定时间片的可变优先级调度,不论进程的优先级多么低,Linux总会在某个时候分给该进程一个时间片运行,即使同时有可以运行的高优先级进程,它也必须等待低优先级进程的时间片用完,这对一些要求高优先级进程立即抢占CPU的实时应用是不能满足要求的。如果还是难以理解。看上面我做的图解RTLinux程序其实是运行于用户空间和内核态两个空间。RTLinux提供了应用程序接口。借助这些API函数将实时处理部分编写成内核模块,并装载到RTLinux内核中,运行于RTLinux的内核态。非实时部分的应用程序则在Linux下的用户空间中执行。这样可以发挥Linux对网络和数据库的强大支持功能。安装前的准备:1:下载通过git下载最新的代码/?p=linux/kernel/git/rostedt/linux-rt.git;a=summary这样下载后的代码不需要打补丁,已经是最新的代码了。2:分别下载内核代码和补丁Kernel:/pub/linux/kernel/PREEMPT_RT:/pub/linux/kernel/projects/rt/下载的内核和补丁要对应,如kernel为linux-.tar.bz2,补丁为patch-.2-rt30.bz2。注:这里的下载的内核和补丁 与你的linux的内核版本要对应。不然很容易导致编译失败! 我比较推荐使用通过git下载最新的代码 省去了打补丁的步骤 不容易出错。如果不知道自己内核版本可以通过 cat /proc/version 来查看自己的内核版本。接下来就开始正式安装了。1:切换至 / 目录下 /usr/src/ 建立一个rt-preempt-linux文件夹。 2:通过SSH 将下载的 内核补丁包 放入3:解压 压缩包。 利用tar命令 将解压得到的文件 复制到 先前建立的 rt-preempt-linux 下 切换至/usr/src/rt-preempt-linux/linux-rt-3.0/下 一定要切换至linux-rt-3.0下 不然接下来的步骤无法进行 容易导致出错4:配置内核 make menuconfig接下来会出现一个类似于图形界面的东西 找到 Processor type and features 选项 进入后在找到 Preemption Model 选项第三个选项也就是我们所需要的抢占式内核 Rt-linux 选择Preemptible Kernel后返回上级菜单找到 Device Dricers 驱动选项进入 找到Staging drivers将它反选。取消勾选。 因为 staging drivers 的开启 会容易导致内核编译失败。所以这里将其反选。 如果staging drivers开启着的话容易导致以下情况。LD M drivers/net/bnx2x.o make: * drivers 错误 2 unanaodebian:/Experiment/linux/linux-$ make CHK include/linux/version.h CHK include/generated/utsrelease.h CALL scripts/checksyscalls.sh CHK include/generated/compile.h VDSOSYM arch/x86/vdso/vdso-syms.lds VDSOSYM arch/x86/vdso/vdso32-int80-syms.lds VDSOSYM arch/x86/vdso/vdso32-syscall-syms.lds VDSOSYM arch/x86/vdso/vdso32-sysenter-syms.lds VDSOSYM arch/x86/vdso/vdso32-syms.lds LD arch/x86/vdso/built-in.o LD arch/x86/built-in.o LD drivers/staging/built-in.o CC M drivers/staging/comedi/drivers/quatech_daqp_cs.o drivers/staging/comedi/drivers/quatech_daqp_cs.c:70: error: field eoshas incomplete typedrivers/staging/comedi/drivers/quatech_daqp_cs.c: In functiondaqp_interrupt:drivers/staging/comedi/drivers/quatech_daqp_cs.c:291: error: implicitdeclaration of function updrivers/staging/comedi/drivers/quatech_daqp_cs.c: In functiondaqp_ai_insn_read:drivers/staging/comedi/drivers/quatech_daqp_cs.c:405: error: implicit declarationof function sema_initdrivers/staging/comedi/drivers/quatech_daqp_cs.c:418: error: implicitdeclaration of function down_interruptibledrivers/staging/comedi/drivers/quatech_daqp_cs.c: In functiondaqp_cs_attach:drivers/staging/comedi/drivers/quatech_daqp_cs.c:1045: warning: assignmentfrom incompatible pointer typemake4: * drivers/staging/comedi/drivers/quatech_daqp_cs.o 错误 1make3: * drivers/staging/comedi/drivers 错误 2 make2: * drivers/staging/comedi 错误 2 make1: * drivers/staging 错误 2 make: * drivers 错误 2 返回最上级菜单。选yes 保存 生效。注:这里可能会提示报错信息。查看报错信息会发现有一个ncurses包未安装利用yum命令安装ncurses#yum install ncurses-devel安装完毕后再编译内核 make menuconfig 此时报错信息就不会出现了5:#make -j4注:这里make -j4 是衍生出来的。如果cpu核数多 可以make -j8 或者直接make 也是可以的。但是安装模块的速度 make -j8make -j4make 模块安装完毕。这里可能会显示一些报错信息 不列举。 一般都是几个模块或者一两个模块未能安装成功。对后面的工作没有影响。不必重新安装模块。6.#make modules_install7. #make install这里的报错信息并不用管。因为先前提到过 有些模块未能成功安装 所以这里会显示一些模块未能找到的报错信息。8.# make moudules 这里一般会出现两种情况(1)失败(2)成功至于为什么会有这两种情况,并不清楚。前后的操作几也就隔了10秒 第一次失败,第二次就成功。虚拟机上容易出现这种情况。 在server上 似乎这种情况出现的几率大大减少了。 相同的操作可能在虚拟机上容易出问题。但是在服务器上输入 就没什么问题。前后大约编译了20多次。发现的这个情况。 起初还在找解决方法。 后来方法未找到。回来又试了一次就成功。所以尽量推荐使用实体机编译内核。 虚拟机比较容易出问题。8:#make moudules_install或者执行 #make install 自动化完成。两个命令都是可以的。以下是执行make install的提示信息结束后也就编译成功了。注:提
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 不锈钢材料合同范本
- 广东韶关市2025年下半年市属事业单位招考人员易考易错模拟试题(共500题)试卷后附参考答案
- 医疗战略协议书范本
- 广东广州市文化广电旅游局直属事业单位引进高层次急需专业人才易考易错模拟试题(共500题)试卷后附参考答案
- 危险品承揽协议合同
- 兽药原料转让协议书
- 山东寿光市2025年下半年部分教育卫生单位招考急需人才易考易错模拟试题(共500题)试卷后附参考答案
- 安徽铜陵县招考报社文字记者易考易错模拟试题(共500题)试卷后附参考答案
- 医疗设备投放协议书
- 供应商安全合同范本
- 传承红色弘扬老区精神
- 2026年甘肃农信校园招聘缴费笔试考试参考试题附答案解析
- 银联POS机MCC码详表(2025版)
- 自杀自伤应急预案
- 2025年幼儿园厨工考试题及答案
- 2025国网能源研究院限公司高校毕业生招聘【21人】事业单位易考易错模拟试题(共500题)试卷后附参考答案
- 白血病患者日常护理建议
- 2025年及未来5年中国鱼具行业市场运营现状及投资战略咨询报告
- 《政务信息系统运行维护费用定额测算方法》
- 【课件】消防月:消防安全知识培训
- 高考物理一轮复习 热点题型 专题14 动量与动量定理及其应用(原卷版)
评论
0/150
提交评论