内核2.6和xenomai构建实时linux操作系统_第1页
内核2.6和xenomai构建实时linux操作系统_第2页
内核2.6和xenomai构建实时linux操作系统_第3页
内核2.6和xenomai构建实时linux操作系统_第4页
内核2.6和xenomai构建实时linux操作系统_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于内核2.6和xenomai构建实时linux操作系统 摘 要: Linux是一类Unix计算机操作系统的统称。Linux操作系统的内核的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。本文主要论述在linux操作系统下安装XENOMAI实时软件。要在已安装的linux操作系统上重新编译内核并且把XENOMAI的安装文件打到内核补丁上去。最后能够在新编译的内核中运行XENOMAI这个软件,得到实时性的数据。 关键词:linux;xenomai;编译内核;实时系统第一章 嵌入式实时操作系统1.1嵌入式实时操作系统的简介嵌入式操作系统是以应用为中心、以计算机

2、技术为基础、软件硬件可剪裁、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。而嵌入式实时操作系统是当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统做出快速响应,并控制所有实时任务协调一致运行的嵌入式操作系统。随着计算机技术的迅速发展和芯片制造工艺的不断进步,嵌入式系统的应用日益广泛:从民用的电视、手机等电路设备到军用的飞机、坦克等武器系统,到处都有嵌入式系统的身影。在嵌入式系统的应用开发中,采用嵌入式实时操作系统(简称RTOS)能够支持多任务,使得程序开发更加容易,便于维护,同时能够提高系统的稳定性和可靠性。这已逐渐成

3、为嵌入式系统开发的一个发展方向。1.2 嵌入式实时操作系统发展历史从1981年Ready System发展了世界上第1个商业嵌入式实时内核(VRTX32),到今天已经有近20年的历史。20世纪80年代的产品还只支持一些16位的微处理器,如68k,8086等。这时候的RTOS还只有内核,以销售二进制代码为主。当时的产品除VRTX外,还有IPI公司的MTOS和80年代末ISI公司的PSOS。产品主要用于军事和电信设备。进入20世纪90年代,现代操作系统的设计思想,如微内核设计技术和模块化设计思想,开始渗入RTOS领域。老牌的RTOS厂家如Ready System(在1995年与Microtec R

4、esearch合并),也推出新一代的 VRTXsa实时内核,新一代的RTOS厂家Windriver推出了Vxwork。另外在这个时期,各家公司都有力求摆脱完全依赖第三方工具的制约,而通过自己收购、授权或使用免费工具链的方式,组成1套完整的开发环境。例如,ISI公司的Prismt、著名的Tornado(Windriver)和老牌的Spectra(VRTX开发系统)等。 1.3 Linux内核Linux是最受欢迎的自由电脑操作系统内核。它是一个用C语言和汇编语言写成,符合POSIX标准的类Unix操作系统。Linux最早是由芬兰黑客林纳斯.托瓦兹(Linus B. Torvalds)为尝试在英特尔

5、x86架构上提供自由免费的类Unix操作系统而开发的。该计划开始于1991年,林纳斯托瓦兹当时在Usenet新闻组comp.os.minix登载帖子,这份著名的帖子标示着Linux计划的正式开始。 在计划的早期有一些Minix黑客提供了协助,而今天全球无数程序员正在为该计划无偿提供帮助。技术上说Linux是一个内核。“内核”指的是一个提供硬件抽象层、磁盘及文件系统控制、多任务等功能的系统软件。一个内核不是一套完整的操作系统。一套基于Linux内核的完整操作系统叫作Linux操作系统,或是GNU/Linux。1.4 Ubuntu简介Ubuntu是一个以桌面应用为主的Linux操作系统,其名称来自

6、非洲南部祖鲁语或豪萨语的“ubuntu”一词(译为吾帮托或乌班图),意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观,类似华人社会的“仁爱”思想。Ubuntu基于Debian发行版和GNOME桌面环境,与Debian的不同在于它每6个月会发布一个新版本。Ubuntu的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。Ubuntu具有庞大的社区力量,用户可以方便地从社区获得帮助。 第二章 ubuntu操作系统的安装2.1 虚拟机的安装作为linux的初学者,自己电脑上安装硬件版的ubuntu风险太大,很多硬件配置都不太熟悉,对自己的电脑保护起

7、到不利效果。所以,本文中的操作系统是在虚拟机上进行安装的,虚拟机可以供初学者尝试之用,运行错误不必担心,让初学者可以迅速掌握基本操作方法。我们选择网上应用广泛的Vmware软件。上创建新的虚拟机如图1所示。点击Create a New Virtual Machine来创建新的虚拟机。 图2-1虚拟机界面1)一次进行如下安装。 图2-2 虚拟机安装虚拟机模式选择custom(advanced),选择要进行安装的系统为ubuntu。2)设置虚拟机安装位置 图2-3虚拟机安装位置 这里我取虚拟机器的名字为Ubuntu,安装目录为E:linux。3)对虚拟机进行配置 图2-4 对虚拟机进行配置这里对虚

8、拟机配置时,选择内存为1G,这个可以根据自己电脑的内存大小来自行配置;选择的磁盘空间为20G,因为这里我进行只是进行内核的编译,不需要那么大的磁盘空间,防止运行虚拟机是计算机太卡;再进行进程配置和网络配置,网络配置选择和主机网络相同,比秒运行时出现网络修改时,虚拟机上操作系统无法连接网络。配置完的结果如图2-5所示。 图2-5 虚拟机配置的结果2.2 操作系统Ubuntu的安装虚拟机的安装毕竟不是本次实验的重点,它只是一个运行条件。下面重点介绍ubuntu的安装过程。Ubuntu可以下载它的镜像文件iso,虚拟机可以提供便捷安装。我采用的是ubuntu-12.04-desktop-i386.i

9、so 中文版。建议第一次安装选择中文版,可以理解很多基本语句。如果熟悉系统架构之后再装换英文版。1)安装界面图2-6 安装初始界面2)对20G硬盘进行分盘操作。这是自己给自己装系统重要一步,可以对计算机进一步了解。选择/boot 为100M空间,swap 为2G的交换空间,剩余供以后配置需要。 图2-7 磁盘的分区 2)选择系统的语言,这里选择的语言为英语。3)选择操作系统的时区,这里采用默认的中国(重庆)的时间。 图2-8 选择时区4)选择输入法。这里采用默认的英文输入法。 图2-9 选择输入法5)填写用户名和登入时的密码,如图10所示。 图2-10 填写用户名和密码6)开始进行安装ubun

10、tu,大概30分钟即可。界面中出现该版本ubuntu的优秀功能介绍。 图2-11 ubuntu安装进行中7)完成上面的设计后,就可以进行系统的安装,上述设计的结果如下图所示。 图2-12 系统界面第三章 实时内核的编译和安装3.1 下载linux内核Linux的内核的版本非常多,内核可以在官网上直接下载,都是开源的,官网的地址是。登录后如/下图所示: 图3-1 网站下载实时图对内核进行实时补丁安装时,要特别注意版本的问题。例如xenomai-2.6.38安装压缩文件,解压之后进入目录/ksrc/arch/x86/patches中可以可到,它所兼容的内核版

11、本主要有linux-或者linux-2.6.37/6,所以再去衡量下载的linux内核版本。经过多方测试失败之后,我选择xenomai-补丁压缩文件,在可以免费下载。Linux内核版本为linux-,在 可以免费下载。3.2 辅助库及开发工具的安装编译内核之前,要对系统编译内核的工具和可能用到的库进行安装。首先,由于系统本身并没有Xenomai实时内核安装过程的所需的库及开工具,故执行图3-2横线所示的命令的更新系统软件库,接下来安装build-essential和libncurses5-d

12、ev库,如图下所示。其中build-essential是C语言的开发包,其中包含了gcc,make,gdb和libc库等许多工具。libncurses5-dev提供字符终端处理库,包括面板和菜单,在此安装的这些库是系统用来在显示器上显示文本的。例如libncurses5-dev会在内核的“make menuconfig”进程中应用到。图3-2 下载安装build-essential图3-3 下载安装libnucurses5-dev3.3 linux内核打实时补丁打实时补丁利用xenomai-2.6.1/scripts/prepare_kernel.sh下的脚本进行打补丁的,使用的语句是:cd

13、/usr/src/xenomai-2.6.1$scripts/prepare-kernel.sh但是,在打补丁之前必须安装打补丁工具包,不然运行上述语句会出现错误。安装打补丁工具包的语句为下面所示:sudo apt-get install kernel-package图3-4 内核打实时补丁语句打上实时软件的补丁后,我们可以看到如何所示图3-5 补丁打完之后效果编译了,但是在编译前需要进行相关的设置,输入下面的命令:#make menuconfig我们就打开内核的配置界面,如下图所示:图3-6 进行编译前的内核设置这里我对内核部分配置主要进行下面部分的修改(1)Processor type a

14、nd features-中央处理器(CPU)类型及特性,根据自己电脑CPU类型,进行配置。(2)Power management and ACPI options-电源管理选项,电源启动运行延时很长,这是为了增加实时性,删掉一些不必要选项。如ACPI、改变CPU主频来达到省电目的。还可以删除一些选项,但是由于自己对内核还不是很了解,所以其他选项都采用默认形式,在对内核更加了解的情况下,应该还可以配置出更加实时的内核。3.4 编译内核首先利用cd /usr/src/linux-进入linux目录下,然后利用命令:Make-kpkg clean 清除以前编译生成的垃圾文件,如果你是

15、第一次编译,可以不用运行这条命令。运用语句 sudo make 图3-7 开始编译图3-8 编译进行中图3-8 编译过程出现问题图3-9 编译失败boot空间不足整个编译过程花了三四个小时,由于我的电脑装的是虚拟机比一般双系统的电脑要慢很多,而且在运行过程中经常有警告出现进一步减慢的编译速度。编译完之后,在文件夹/usr/src/中并没有生成两个deb文件包,但在/usr/src/linux-文件夹中生成的bz2Image镜像文件。尽管如此,整个编译过程还是失败的。图3-10 生成的bz2Image镜像文件经过了很长时间的调试依然没能发现错误,不仅换了ubuntu版本,内核也换

16、了数次,依然有这个问题出现。下面的过程在没有内核编译完成的情况下,进行内核安装,就当对整个过程熟悉一下,希望老师谅解。3.5内核安装首先要对加载的模块进行编译图3-11 模块加载完的效果图图3-12进行安装修改Xenomai.conf文件内容,其改前改后如图所示。图3-13 修改xenomai前的效果图图3-14 修改后的xenomai效果图3.6检测实时性由于内核没有安装正确,所以实时性的检测失败是可以想到的。图3-15实时性的检测结果到此为止,本次实验结束,内核的安装并没有成功。总 结本次实验并没有得到正确的实验结果。特别是经过了无数次的尝试后依然没有解决问题。我总结了有一下几个原因:1、选择虚拟机运行速度慢,对实验的即使性不利,我连续三天不停的编译,大部分时间花在等待上;建议选择装ubuntu的iso镜像版本里面自动带了双系统功能的运行程序,可以便捷给电脑装上双系统。2、大家选择xenomai-2.5以下,linux-2.6.35以下的版本,这也是我多次尝试出来的,版本太新不一定编译正确。这一步我花了很长时间3、在接下时间我

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论