《Linux操作系统组成及应用分析》5600字_第1页
《Linux操作系统组成及应用分析》5600字_第2页
《Linux操作系统组成及应用分析》5600字_第3页
《Linux操作系统组成及应用分析》5600字_第4页
《Linux操作系统组成及应用分析》5600字_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

Linux操作系统组成及应用分析目录TOC\o"1-4"\h\u29733第一章Linux操作系统发展现状 第一章Linux操作系统发展现状1.1Linux操作系统简介Linux操作系统的核心是由LinusTorvalds开发的内核,Linux内核之上的组件分为几个部分。BSDUNIX项目和XWindowsSystem项目,以及随后由程序员开发的应用程序[1]。Linux内核与GNU项目BSDUNIX和MIT的X11(XWindows)相结合,迅速形成并发展了整个Linux操作系统,构成了当今优秀的Linux系统。简单来说,Linux操作系统=Linux内核+GNU软件和系统软件+必要的应用程序。Linux是一个支持多用户、多任务、多进程、多CPU的完整系统,具有很高的系统稳定性、可靠性和安全性,以及GNOME、KDE等全图形用户界面,完全开发。它是一个完整的开发平台,具有C/C++、Java、Perl等平台。LSO提供强大的数据库平台和强大的网络服务。由于其各种优秀的特性,得到了IBM、Google、互联网等众多行业厂商的支持,作为开源操作系统,Linux操作系统是一个应用系统。越多人喜欢,它的优势就在于操作系统的开源。如果该软件基于GNU规则,您可以使用和修改其源代码。但是对于很多熟悉Windows操作系统的人来说,Linux的操作不够人性化,界面不够美观,影响了操作系统的普及,造成了一系列的困难。因此,在Linux操作系统上创建用于与人机界面进行实时通信的N-tools,将为刚接触Linux操作系统的用户带来极大的舒适感,让他们更好地学习网络编程和掌握应用程序。使用这些框架的应用程序是在Linux平台上设计和开发的。我通过结合在过去四年的大学学习中学到的知识来测试学习成果。1.2Linux操作系统的衍生品1.1.1Linux的服务器系统相对于现在的操作系统,发展的起点是以实惠的价格逐步应用到各个领域,Linux操作系统的灵活性非常好,其实流畅性是日常工作中必不可少的一种。如今,尼克斯操作系统广泛用于服务器操作系统。我们今天所知道的很多开发者团体和开发者组织都在使用这个操作系统,它也是一些网站服务商最好的操作系统。它使用起来更方便,主要是因为它的价格低廉。1.1.2Linux的桌面系统事实上,最新版本的Linux在桌面端已经有了很大的改进,尤其是桌面应用方面,相比其他操作系统已经处于非常高的水平,并且进步不少。目前的桌面系统可以与多个办公应用程序结合,方便我们日常的办公和工作需求,而这些多媒体应用程序可以帮助我们日常的视频编辑、音频编辑和照片美化。同时它还拥有一个桌面系统,具有网络应用等功能,将多种功能融入到新一代Linux操作系统中,最重要也是最流行的桌面操作系统就是这个桌面操作系统,它是免费的是体现Linux价格低廉的一种用途,深受广大用户的喜爱。1.1.3Linux的嵌入式系统嵌入式系统是当前计算机环境下包括固定设备在内的许多移动设备的主流应用模式。由于Linux的内核内核和其他源代码方面是完全开放的,因此许多用户和开发人员可以共享一些源代码。因此,大多数基于Linux的嵌入式系统非常流行,它们也大大降低了基于Linux的嵌入式系统的成本,比其他嵌入式系统更受大众欢迎。另外,Linux中的嵌入式系统完全不受其他因素的干扰,内核开放、透明,内容信息非常丰富,因此可以在后台任意获取用户需要的Linux嵌入式系统。1.1.4电子政务系统电子政务系统也发挥着非常重要的作用。我们现在知道的最大的操作系统是Windows和Linux,随着Linux越来越好,它可以完全与Windows系统竞争。随着Linux的不断完善,所有用户对系统的态度发生了非常显着的变化,不仅因为它的价格低廉,还因为它的安全性非常高。因此,鉴于这两个优势,越来越多的人更喜欢Linux操作系统,并且由于安全性高,现在大多数国家都在其平台上引入了一些电子政务系统。证明大部分电子政务作者都了解Linux系统。第二章嵌入式实验系统硬件设计与配置2.1实验系统总览本实验系统分为上位机和下位机两部分,上位机为通用个人计算机(PC),下位机为PC/104规范的嵌入式平台。下位机由两部分组成:CPU模块和I/O模块。CPU模块SCM/LX3160是盛博公司高性能“ALLINONE”PC/104模块,IO模块DIAMOND-MM-32-AT美国制造。DIAMOND公司生产的PC/104标准多功能数据采集卡。Linux内核的剪裁与移植、根文件系统的创建、引导程序的安装与配置、设备驱动程序的创建与编译,都经过上位机PC和下位机。在内置嵌入式软件环境中挂载并运行网络文件系统(简称NFS)编译的设备驱动程序。2.2下位机CPU模块SCM/LX3160介绍SCM/LX-3160完全兼容PC/AT标准,遵循PC/104标准。IBM-PC上运行的大部分软件都可以在基于SCM/LX-3160的系统上运行。该模块集成了PS/2键盘、PS/2鼠标、CRT、IDE、USB2.0、4路并口、2路10/100BaseT以太网等接口,在很小的空间内实现了PC的几乎所有功能。平板显示接口、CF卡接口、串口选择、监控功能等接口让设计人员更容易实现嵌入式系统应用。SCM/LX-3160是专为嵌入式应用设计的产品,具有功耗低、可靠性高、体积小、无风扇、工作温度范围广等特点,广泛应用于国防电子、车载系统、医疗设备和通讯。电源控制、工业现场控制、安防系统等应用。第三章嵌入式Linux软件开发环境的构建3.1Linux内核分析3.1.1Linux内核概述一个完整的操作系统主要由4部分组成:硬件、操作系统内核、操作系统服务和用户应用程序。Linux操作系统将这四部分细分为:硬件、Linux内核、系统调用库和用户应用。Linux内核主要由五个模块组成:进程调度模块、内存管理模块、文件系统模块、进程间通信模块、网络接口模块等。3.1.2Linux中断机制Linux内核将中断信号分为硬件中断和软件中断(异常)。中断号为0-255。对于int0-int31(0x00-0x1f),每个中断的功能都由CPU保留,属于软中断,也称为异常。这32个中断是由CPU执行指令时检测到异常情况引起的。int32-int255(0x20-0xff)是用户可配置的。3.2内核的定制2.2.1内核的选择由于本文的目的是研究嵌入式Linux的实时性问题,因此在选择内核时需要考虑最稳定可靠的内核版本和可能的最新内核版本。所以我们选择了截至2009年9月24日的“最新稳定版”Linux。2.2.2内核的定制和移植掌握了硬件配置之后,接下来就是开始定制内核了,这个是在宿主机Ubuntu9.10上完成的,具体步骤如下:1.获取内核源代码2、辅助工具包的获取和安装;3.配置内核选项。4.编译内核和模块。至此,内核的定制就完成了。此实验系统所需要做的就是在此步骤中创建一个bzlmage内核映像文件。这个文件是在根文件系统建立后移植到CF的/boot目录下的。3.3基于Busybox工具的根文件系统的搭建选用2009年9月15日最新推出的稳定版本BusyBox1.15.1,根文件系统详细搭建过程如下。1、生成临时文件系统2、完善临时文件系统3、必需的设备文件的创建4、启动文件的编写3.4引导加载程序的选择与写入CF卡上虽然有了根文件系统和内核映像文件,但是还不能启动,尚需引导加载程序的安装。引导加载程序的主要作用就是指定并负责找到Linux系统内核的位置,然后指定根目录所在的分区。上位机的ubuntu9.10系统就打包有Grub0.97,首先将Grub启动的必备文件复制到CF卡,在上位机终端运行;安装完毕后还需要重写Grub的启动配置文件grub.conf(或menu.lst)。至此,下位机的软件环境构建过程完毕。将CF卡插入嵌入式主板SCM/LX-3160的CF卡座。开启下位机电源,下位机系统开始运行。3.5NAT地址转换技术的分类3.5.1静态地址转换技术(StaticNat)静态地址转换是最简单的转换方法。它将局域网上的IP地址一对一地转换为Internet上的IP地址,并且不会改变。它实际上并不存储互联网的IP地址,而是使用翻译技术将真实IP地址隐藏在设备上,减少外部网络对设备的攻击和破坏,保护设备。静态地址翻译技术主要用于企业和企业的服务器端。3.5.2动态地址转换技术(DynamicNat)动态地址转换技术是一种通过将LANIP地址转换为购买或分配的InternetIP地址的一部分来实现多对多地址转换的技术。适用于局域网内终端数量大于分配的Internet地址数的情况,但由于终端也被翻译成指定网段的Internet地址,因此局域网内的终端数同时访问Internet的数量大于分配的地址数,如果很大,则某些LAN地址无法转换,无法访问。动态翻译默认实现IP地址存储,但有限制。3.5.3端口多路复用(PortAddressTranslation)端口复用技术是目前网络上最常用的地址转换技术,它实际上是动态地址转换的一种变体,它将所有局域网地址转换为一个Internet地址,使局域网地址可以访问Internet。同时,它大大节省了您的互联网IP地址。端口多路复用是将IP对应物从另一个地址转换到给定InternetIP地址的另一个端口。同时可以隐藏网络内的所有主机,有效避免网络攻击。第四章数据采集驱动程序的设计与实现4.1Linux设备驱动程序的功能Linux将每个设备都视为一种特殊的文件,因此应用程序可以像操作常规文件一样操作硬件设备。驱动作为内核模块的一部分,主要完成以下功能:a.设备的开关机b.从硬件端口读取数据并将内核数据发送到硬件端口c.将设置和数据从用户程序传输到设备文件并从设备文件中读取数据d.外部中断控制和响应e.检测和处理设备执行过程中发生的错误。4.2DMM32驱动程序的设计与实现4.2.1设备的初始化及释放DMM32设备的初始化包括注册主要和次要设备编号、为设备结构应用内存空间、初始化设备结构数组以及强制对设备I/O端口进行独占访问。初始化代码的主要作用是将设备与驱动程序关联起来,并为设备结构分配内存。此驱动适用于多个DMM32设备,并在设备初始化和释放时通过for循环语句检测所有DMM32设备。4.2.2设备的打开和关闭与设备初始化不同,设备的打开方法dmm32_open在文件结构中声明,并在用户程序调用open()函数时执行。open方法为驱动提供初始化函数,一般设备驱动中open要执行的操作包括:检查设备错误。首次打开设备时,初始化设备,更新f_op指针,并分配和填充数据结构以存储在filp-private_open中。4.2.3设备的读写硬件设备的读写是指:设备驱动的read方法将数据从设备复制到用户程序空间,设备驱动的write方法将数据从用户程序空间复制到设备。4.2.4设备的模式控制设备驱动除了对设备进行读写外,还进行各种硬件控制,比如在这个设备驱动中,DMM32设备的工作模式控制就是用iotrl方法实现的,Linux内核有一个同名的系统ioctl.call.每个ioctl命令都是一个单独的系统调用。4.3设备驱动的编译设备驱动程序用作内核模块,编译后的Linux驱动程序只能与某些Linux内核一起使用。在编译Linux设备驱动之前,将目标内核的内核源代码树,即$(KERNELDIR)变量设置为目标内核的内核源代码树路径,编译后的内核源代码树包含目标内核的信息,所以编译-compile该进程使用内核源代码树中的文件。第五章基于嵌入式Linux的实时性测试软件测试的目的是通过各种性能测试和功能测试来发现系统中的问题,证明对没有问题的软件进行测试是错误的。因此,必须从寻找错误和漏洞开始。这种测试可以使系统功能更加完整和有意义。你不能测试你的程序是否有错误,但这并不意味着你的程序没有问题。系统主要使用黑盒测试、白盒测试,但主要使用黑盒测试。如果设计者对系统的内部结构一无所知,首先应使用黑盒对系统进行测试,以确保其功能可以按照设计要求实现,并满足系统要求的功能。实验。如果在黑盒测试期间检测到漏洞,设计者可以自己执行白盒测试,以验证系统在逻辑上的行为是否符合预期。如果问题得到解决,请再次运行黑盒和白盒测试。5.1远程数据采集程序的设计与实现远程数据采集程序的设计采用C/S网络架构,在Linux中使用socket编程实现PC/104总线架构的目标机与上位机PC之间的数据交换。真正的客户端-服务器模式通信。整个程序分为服务器和客户端两部分,PC/104总线架构的目标系统运行服务器部分,PC运行客户端部分。5.2远程数据采集程序的测试结果及分析本远程采集程序利用了DMM32_IOC_AD_FIFOINT、DMM32_IOC_DA_CLKINT两种模式进行Linux实时性能的测试。(1)A/D转换:DMM32_IOC_AD_FIFOINT模式实验系统运行在这种工作模式下进行A/D数据采集。在此模式下,当FIFO深度达到512字节时触发硬件中断。ADC输入通道0接一个2KHz的正弦波信号,电压范围为-5V到+5V,采样频率为200KHz,这是DMM32器件在这种工作模式下的最高采样频率。DMM32采集的数据通过网络发送给客户端,客户端显示其接收到的数据曲线。(2)D/A转换:DMM32_IOC_DA_CLKINT模式实验系统在这种操作模式下运行,并将数字量转换为模拟信号输出。将中断频率设置为25KHz(10MHz/400),每个周期100个数据点,仅将数字数据输入到DAC通道O。经过多次实验测试,中断频率是实验系统中波形保真度最高的频率。该远程采集程序使用周期数据只是为了方便与输出信号进行比较)。在上述两种工作模式下对DMM32单元进行多次测试,得出以下结论:上层应用程序在嵌入式Linux软件环境中调用DMM32设备的驱动,同时本案例中DMM32设备的可靠性和最大采样频率在A/D操作模式下为200KHz,最大中断D/A操作模式下的频率为25KHz。在这个硬件平台上嵌入式Linux的实时性能完全可以满足我们在实际工作中的要求。结论本文详细介绍了嵌入式系统硬件平台的设计与配置,涵盖了Linux内核的定制与移植、根文件系统的构建以及满足这些需求的bootloader的创建。对该实验进行了详细描述。最后通过一个基于C/S网络架构的远程数据采集程序对嵌入式Linux的实时性能进行了测试和演示。参考文献[1]邱建新.基于Docker容器技术的Linux在线实验环境设计[J].信息技术,2022(02):48-52+58.DOI:10.13274/ki.hdzj.2022.02.009.[2]王楠.嵌入式Linux操作系统在数字化医疗设备中的实践研究[J].中国设备工程,2022(04):134-135.[3]曾东海,廖建飞,程庆华.思政教育融入Linux操作系统课程的改革与探索[J].现代商贸工业,2022,43(03):178-180.DOI:10.19311/ki.1672-3198.2022.03.068.[4]蒋志炀,白晓斌.基于嵌入式Linux操作系统的电缆故障测距系

温馨提示

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

评论

0/150

提交评论