欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    毕业设计论文基于Linux的嵌入式操作系统研究.doc

    • 资源ID:4865406       资源大小:339.02KB        全文页数:40页
    • 资源格式: DOC        下载积分:10金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    毕业设计论文基于Linux的嵌入式操作系统研究.doc

    标题: 浙大毕业论文:基于Linux的嵌入式操作系统研究 摘 要 在以计算机技术、通讯技术相结合的信息时代的快速发展和互联网的广泛应用的形势下,3C(Computer、Communication、Consumer)合一的趋势已经形成,其结果必然就是将计算机工业的中心从计算产品转移到信息产品,从而出现信息电器的概念。在信息电器的应用开发领域,由于需要的功能不断的增加,嵌入式系统也就将成为软件业的新宠儿。同时在计算机本身的领域里面,微型化和专业化成为了发展的新趋势,同样也需要嵌入式系统的支持。因此,研究与嵌入式系统有关的关键技术嵌入式操作系统有着相当重要的实际意义。 本论文详细论述了作者在学士学位论文工作期间在基于Linux的嵌入式操作系统研究工作领域里所做的研究和实践,主要围绕着论证使用Linux改造成符合嵌入式操作系统条件的几点要求展开讨论。首先,我对嵌入式系统的概念和信息电器的概念做出表述,并且说明Linux的特点、发展状况河开发环境。紧接着,分三个方面论述使用Linux进行嵌入式系统开发的便利,包括Linux的实时变种RTLinux的原理、实现方案和编程方法;Linux网络设备驱动程序的分析和利用到嵌入式系统中的方案;实现Linux和RT Linux的内核在线调试环境的途径。其中还讲到了如何利用现有的工作设计出一个嵌入式Linux系统。最后,针对现有的工作,提出进一步开发出完整的、具有市场竞争力的产品提出开发展望。               关键词:嵌入式系统,Linux,信息电器,RTOS,RT Linux,Linux网络驱动程序,在线调试环境  Abstract With the development of Computer technology and Communication technology in Information times and the board application of Internet, it is clear that 3C (Computer, Communication and Consumer) will converge in the near future which will lead the focus of Computer Industry from the Compute product to Information product. It is the concept of Information Appliance. In the application and development field of Information Appliance, Embedded Operating System will be the most favorite thing in Software Development field. At the same time, in the field of computer science itself, the micromation and specialization is the new direction of  the computer world. It also want the support of Embedded System. So, the research of the key technique of embedded systemEmbedded Operating System is the most important thing.  This thesis presents the authors work in research of the Linux-based Embedded Operating System for his bachelor degree. Most of the thesis focus the requirement of transforming  Linux to Embedded System. Firstly, it describes the concepts of embedded system and Information Appliance, and presents the characteristic and development environment of Linux. Then describe three aspects of the key techniques of using Linux as the development tools of Embedded system Including the real-time variant of LinuxRT Linux and its principle, implementation and the programming; the network coding in Linux kernel and the analysis of Linux network device drivers and the online debug environment of Linux Kernel and RTLinux Kernel. I have also involved the implementation of embed Linux/RTLinux in a floppy to simulate the embedded environment. In the last part of this thesis, I give the suggestions and prospect of the development of a mature embedded system which have the most competition ability in China market base on the current work.        Keyword: Embedded Operating System, Linux, Information Appliance, RTOS, RT Linux, Linux Network Device Drivers, Online Kernel debug environment  目  录 摘 要 1 Abstract 2 目  录 3 第一章 绪论 6 1.1 嵌入式系统的历史、现在和未来 6 1.2 信息电器的概念 7 1.3 国内外嵌入式系统的相关产品、水平、现状和技术发展趋势 8 1.3.1 国际上相关产品、水平、现状和技术发展趋势。 8 1.3.2 国内相关产品、水平、现状和技术发展趋势。 10 1.4 Linux的历史和现状 12 1.5 论文的组织介绍 14 第二章 嵌入式系统的特点 16 2.1 嵌入式处理器的要求 16 2.2 RTOS的要求 17 2.2.1 RTOS的概念 17 2.2.2 RTOS的分类方法 18 2.2.3 RTOS的体系结构 18 2.2.4 RTOS的衡量标准 20 2.3 网络要求 20 2.4 用户交互环境界面 20 2.5 小结 21 第三章 采用Linux作为嵌入式系统开发的原因 22 3.1 嵌入式处理器支持 22 3.2 实时支持 22 3.3 网络支持 23 3.4 GUI开发支持 24 3.4.1 利用X Windows的便利 24 3.4.2 利用SVGALib和pThread函数库 25 3.5 小结 26 第四章 实时Linux 27 4.1 实时Linux(RTLinux)介绍 27 4.2 RTLinux特征 28 4.2.1 小而精巧的实时内核 28 4.2.2 模块化的设计方案 28 4.2.3 和Linux内核的结合 29 4.2.3.1 利用Linux内核的好处 29 4.2.3.2 和Linux进行通信的方法 29 4.3 RTLinux的实现机理 30 4.4 RTLinux的编程接口(API) 31 4.5 RTLinux的编程方法示例 32 4.5.1 需要用到的API函数: 32 4.5.1.1 任务生成和调度函数 32 4.5.1.2 时间控制函数 33 4.5.1.3 FIFO控制函数 33 4.5.2 程序原理 34 4.5.3 程序实现 34 4.5.3.1 实时部分代码 34 4.5.3.2 非实时部分 38 4.5.3.3 公用头文件 39 4.5.4 程序执行结果 39 4.6 嵌入式RTLinux的设计 40 4.6.1 将RTLinux嵌入EPROM中。 40 4.6.2 通过网络启动的方法设计嵌入式RTLinux。 42 4.7 小结 42 第五章 Linux对TCP/IP网络支持 43 5.1 Linux网络概述 43 5.2 Linux网络设备驱动程序的分析 44 5.2.1 Linux中网络驱动程序介绍 45 5.2.2 网络驱动程序中需要用到的重要的数据结构 46 5.2.2.1 struct device 46 5.2.3 重要的驱动过程 46 5.2.3.1 模块驱动方法 47 5.2.3.2 内核启动的驱动方法 47 5.2.3.3 网卡初始化函数分析 49 5.3 在嵌入式系统中实现网络协议栈 51 5.3.1 重用Linux网络协议栈代码 52 5.3.2 重写网络协议栈 52 5.3.3 网络驱动程序的编写 52 5.4 小结 53 第六章 调试环境的搭建和定制 54 6.1 远程调试环境的搭建原理 55 6.1.1 GDB介绍 55 6.1.2 GDB远程调试功能介绍 55 6.1.3 GDB远程调试建立的条件 56 6.1.3.1 远程主机上stub要实现的函数接口 56 6.1.3.2 调试双方数据包的传送格式 57 6.1.3.3 调试步骤的介绍 58 6.2 Linux的内核调试环境的搭建 58 6.2.1 串口驱动程序模块和数据包传送函数 59 6.2.2 stub程序的函数接口 60 6.2.3 内核进入调试状态的路径 61 6.2.3.1 系统启动的时候向内核传递参数 61 6.2.3.2 使用gdbstart将系统控制权交出 63 6.2.4 Linux内核调试过程示例 64 6.3 RTLinux的调试环境的开发设想 65 6.4 小结 66 第七章 总结与展望 67 参考文献 69   第一章 绪论 1.1 嵌入式系统的历史、现在和未来 在当前的数字信息技术和网络技术高速发展的后PC(Post-PC)时代,嵌入式系统已经广泛的渗透到科学研究、工程设计、军事技术、各类产业和商业文化艺术、娱乐业以及人们的日常生活等方方面面中。随着国内外嵌入式产品如车载电脑、机顶盒等等的进一步开发和推广,嵌入式技术越来越和人们的生活紧密结合。在PC时代,可能有人从来没有接触过计算机;但是在Post-PC时代,他就不可能会接触不到嵌入式系统,因为嵌入式系统可能存在于生活的方方面面中,从家里的洗衣机、电冰箱,到作为交通工具的自行车、小汽车,到办公室里的远程会议系统等等,都属于可以使用嵌入式技术开发和改造的产品。 实际上嵌入式系统这个概念很早以前就已经存在了。在通讯方面,嵌入式系统在1960年就被用于对电子机械电话交换的控制,当时被称为“存储式程序控制系统”(Stored Program Control)。那个时候,计算机一词却还不是很普遍,而存储式程序主要是指用于存储程序及日常讯息的内存部分。存储这些逻辑数据,而不是将其写入硬盘,这个概念的确具有突破性的意义。 这个时候还没有出现操作系统的概念,对每一个应用都需要提供一整个计算机的设计。后来微处理器的出现,它用来提供一个中央计算引擎。利用微处理器,组成了一个基于由总线连接起来的计算机硬件体系结构,并且提供了一个通用功能的编程模型,从而简化了编程。 嵌入式系统的概念是在1970年左右出现的。不过在当时,大部分都是由汇编语言完成的,而且这些汇编程序只能用于某一种固定的微处理器。当这种微处理器过时之后,这种嵌入式系统就没有用了;并且还要开始对新的微处理器写新的嵌入式系统。 这个时候的嵌入式系统很多都不是操作系统,他们只是为了实现某个控制功能,使用一个简单的循环控制对外界的控制请求进行处理。不可否认,这对一些简单的系统而言是足够的。但是当我们的系统越来越复杂,利用的范围越来越广泛的时候,没有操作系统就成为了一个最大的缺点了,因为需要添加一项新功能都可能需要从头开始设计,否则只能增加开发成本和系统复杂度。 C语言的出现使得我们的操作系统开发变得越来越简单。我们可以利用C语言很快的写出一个小型的、稳定的操作系统。众所知之,C语言的作者Dennis M. Ritchie 和Brian W. Kernighan利用它写出了著名的UNIX操作系统,直接影响了这三十年计算机业的发展。同时,对开发嵌入式系统来说,在效率和速度上都提高了很多。 从上世纪八十年代开始,开始出现各种各样的商业用嵌入式操作系统,这些操作系统大部分都是为专有系统而开发,从而形成了现在多种形式的商用嵌入式操作系统百家争鸣的局面。如VxWorks,pSOS,Neculeus和Windows CE等等。 现在,网络在人们生活中的应用越来越广泛,自然而然,在嵌入式系统中使用网络系统也成为了一项基本的要求。把网络协议栈实现在嵌入式系统中,对日常生活中的需要极有意义。利用嵌入式系统中的网络功能,可以实现下面我将要描述的信息电器这一即将取代PC在后PC时代占据市场主体的商品。我们知道,如果在上面所说的那种采用循环控制的嵌入式系统中加入网络协议栈,复杂度会呈指数级增长。这种情况下,在嵌入式操作系统中增加网络协议模块要方便得多,并且还能方便各种网络应用程序的不同平台移植。 在未来的社会里面,使用嵌入式系统的情形会越来越多,人可以不接触电脑,但是不接触嵌入式系统的情况是不存在的。嵌入式系统可能存在于您生活的各个角落:您家里可能就是通过一个嵌入式系统控制的中心,管理您家里的所有家电,控制家庭和外界网络的连接,让您的生活更为方便;您出门旅行的时候,在饭店的门把手里面安装有电子识别控制系统,利用嵌入式系统根据您手上的特征,判断时候应该给您开门;在坐车的时候,汽车电脑可以通过GPS(全球卫星定位系统)来判断自己的具体位置,利用嵌入式智能系统判断应该走哪条路比较方便;如果您一不小心生病住院,在医院的设备仪器里面都可能存在有嵌入式系统,用来选择和控制仪器,提高您手术的成功率和方便程度。 1.2 信息电器的概念 在嵌入式系统发展到现在这个程度,利用的范围除了在自动化控制、军事技术、工业生产、科学研究等方面的应用之外,现在逐步在向日常生活中渗透。而PC的发展现在也正在减缓趋势。据有关报道,PC的增长率由九十年代中期的年递增率35%下降到去年的15%。用市场的观点来看,PC的已经从高速增长进入到平稳发展的市场顶峰时期,单纯由PC机带领的电子产业蒸蒸日上的时代已经成为历史,现在的电子产业的发展需要寻找一个新的“战略转折点”。这个时候,根据PC时代的概念,美国Business Week杂志提出了“后PC时代”的概念。在这个时代,占电子市场主体的不再是PC和家用电器,而是具备视听功能、信息处理和双向网络通信功能的信息电器。 信息电器,英文称Information Appliance。它具备有高品质的视听功能、交互式的信息处理功能、网络浏览功能和收发邮件等功能。它适应信息时代的要求,具有很强的网络功能,是人们用来访问和获取网上信息的工具,也是消费类电子技术和计算机技术相结合的产物。作为信息电器,一般具有三个特征: 1)是家用电器。它适合广泛的普通家庭使用,功能和操作都比传统的电脑少而简单。 2)是信息设备。能够接入公共信息网络,主动获取交互信息。 3)配置简单。组成部分比传统的电脑少,没有硬盘等永久存储设备,设备价格比较低廉。 信息电器的品种很多,就我国来说,信息电器的应用范围主要是在消费、娱乐、通讯、信号处理等领域。典型的产品是机顶盒、移动通讯、掌上电脑、可视电话、PDA(个人数字助理)等等。 信息电器的如火如荼的发展和应用,需要发展嵌入式系统来支持。信息电器的产品开发离不开利用网络协议栈,离不开实现实时性能,也离不开提供用户友好的接口。这些都需要利用嵌入式系统进行开发。 目前嵌入式系统的主要应用范围是在信息电器领域里面。根据信息电器的开发特点,开发出一个具有实时、多任务特征的,提供测览器、网络通信和图形窗口等服务的,可进行一定的定制或二次开发,并可对应用软件的开发提供有效支持的嵌入式系统。 信息技术的快速发展和互联网的广泛应用,使得信息电器具有广泛的前景,从而使得嵌入式操作系统的快速发展成为可能。伴随着以计算机技术、通讯技术为主的信息技术的快速发展和互联网的广泛应用,3C(Computer, Communication, Consumer)合一的趋势已经形成,三者合一的产物就信息电器。在信息电器领域里面,嵌入式软件必然成为重要成员,嵌入式操作系统也就必然成为软件业的新热点。 1.3 国内外嵌入式系统的相关产品、水平、现状和技术发展趋势 1.3.1 国际上相关产品、水平、现状和技术发展趋势。 从八十年代起,国际上就开始进行一些商用嵌入式系统和专有操作系统的开发。他们开发嵌入式系统已经有二十多年的经验,目前的应用范围也比较广泛,下面介绍一些著名的嵌入式系统。 l Windows CE: Microsoft Windows CE是一个简洁的,高效率的多平台操作系统。它不是削减的Windows95版本,而是从整体上为有限资源的平台设计的多线程,完整优先权,多任务的操作系统。它的模块化设计允许它对于从掌上电脑到专用的工业控制器的用户电子设备进行定制。操作系统的基本内核需要至少200K的ROM。从SEGA的DreamCast游戏机到现在大部分的高价掌上电脑,都采用了Windows CE,但是无奈价格太高,使得整个产品的成本急剧上升。 l VxWorks: 去年VxWorks所在的公司WindRiver兼并了pSOS的ISI公司,使得该公司现在有两大RTOS系统。VxWorks是目前嵌入式系统领域中使用最广泛,市场占有率最高的系统。它支持多种处理器,如x86,i960,Sun Sparc,Motorola MC68xxx,MIPS RX000,POWER PC等等。使用的是和UNIX不兼容的环境,大多数的VxWorks API是专有的。采用GNU的编译和调试器。 l pSOS: ISI公司已经被WinRiver公司兼并,现在是属于WindRiver公司的产品。这个系统是一个模块化,高性能的实时操作系统,专为嵌入式微处理器设计,提供一个完全多任务环境,在定制的或是商业化的硬件上提供高性能和搞可靠性。可以让开发者将操作系统的功能和内存需求定制成每一个应用所需的系统。开发者可以利用它来实现从简单的单个独立设备到复杂的、网络化的多处理器系统。 l QNX: QNX是一个实时的,可扩充的操作系统,它遵循POSIX.1 (程序接口)和POSIX.2 (Shell和工具)、部分遵循POSIX.1b(实时扩展)。它提供了一个很小的微内核以及一些可选的配合进程。其内核仅提供4种服务:进程调度、进程间通信、底层网络通信和中处理,其进程在独立的地址空间运行。所有其它OS服务,都实现为协作的用户进程,因此QNX内核非常小巧(QNX4.x大约为12Kb)而且运行速度极快。这个灵活的结构可以使用户根据实际的需求将系统配置成微小的嵌入式操作系统或是包括几百个处理器的超级虚拟机操作系统。 l Palm OS: 3Com公司的Palm OS在PDA市场上占有很大的市场份额,它有开放的操作系统应用程序接口(API),开发商可以根据需要自行开发所需要的应用程序。目前已经有总共3500多个应用程序可以运行在Palm Pilot上,其中大部分应用程序均为其他厂商和个人所开发,使得Palm Pilot的功能得以不断增多。这些软件包括计算器、各种游戏、电子宠物、地理信息等等。在开发环境方面,可以在Windows 95/98,Windows NT以及Macintosh下安装Palm Pilot Desktop;PlamPilot可以与流行的PC平台上的应用程序如Word,Excel等进行数据交换。 l OS-9: Microwave的OS-9是为微处理器的关键实时任务而设计的操作系统,广泛应用于高科技产品中,包括消费电子产品,工业自动化,无线通讯产品,医疗仪器,数字电视/多媒体设备中。它提供了很好的安全性和容错性。与其他的嵌入式系统相比,它的灵活性和可升级性非常突出。 l LynxOS: Lynx Real-time Systems的LynxOS是一个分布式、嵌入式、可规模扩展的实时操作系统,它遵循POSIX.1a、POSIX.1b和POSIX.1c标准。LynxOS支持线程概念,提供256个全局用户线程优先级;提供一些传统的,非实时系统的服务特征;包括基于调用需求的虚拟内存,一个基于Motif的用户图形界面,与工业标准兼容的网络系统以及应用开发工具。 l Linux: Linux是一套以UNIX为基础发展而成的操作系统。自1991年诞生至今,Linux在很多方面已经赶上甚至超过了很多商用的UNIX系统。它充分利用了x86CPU的任务切换机制,实现了真正的多任务、多用户环境。Linux对硬件配置的要求相当低,能够在4M内存的386机器上很好的运行。而且可以支持很多种处理器芯片。此外更为重要的是,很多高手愿意在Linux上开发程序,而且有很多高手随时对Linux的开放内核进行升级和修补,很多bug可以很快得到检测和修复。 在应用于嵌入式系统方面,Linux小得可以放在一张软盘上运行;为实时系统而开发的变种RT Linux(Real-Time Linux),可以让Linux支持硬实时任务;Linux的开放式开发原则使得Linux下的驱动和升级变得越来越多和越来越快。  1.3.2 国内相关产品、水平、现状和技术发展趋势。 国内的嵌入式系统开发也已经取得了一定的成绩,包括中科院的EEOS,凯思昊鹏的HOPEN OS等等。但是国内的产品很大程度上只是外国公司的附属和扩充,国内的技术含量很低。比如说中科院计算所嵌入式系统研究组的EEOS,是根据ECOS的开发环境下面做简略介绍: l EEOS: EEOS是中科院计算所组织开发的开放源码的嵌入式操作系统。该嵌入式操作系统重点支持p-Java,要求一方面小型化,一方面能复用Linux的驱动和其他模块。计算所将在2-3 年内持续投入,以建立扩展能力强,功能完善,且稳定、可靠的嵌入式操作系统平台。包含E2实时操作系统,E2工具链及E2仿真开发环境的完整环境。 E2实时操作系统包含RTOS内核系统和一些支持组件,是一个扩展能力强,功能完善的操作系统,支持POSIX标准。E2实时操作系统强调模块化(其API 接口标准,底层支持清晰),其各模块解决方案可移植、可互换。此外E2实时操作系统提供开放源码。 E2工具链基于GNU系列的交叉编译环境,开放多平台,能够支持大多数硬件平台。E2实时操作系统同时支持MSDEV等桌面环境的工具链,能够方便WIN32程序员使用。 E2仿真开发环境使用Win32系统仿真目标机或做远程调试的主机。E2仿真开发环境能够仿真扩展的目标机设备或借用NT系统的设备,并提供扩展工具进行性能,行为可视化,评估系统的性能。其仿真速度快,能够方便地容易建立开发环境。 EEOS采用先进的内核仿真调试技术,能够使普通C程序员能快速熟悉实时系统的结构和开发过程,大幅度降低学习,研究,开发实时系统的代价。EEOS专为嵌入式系统设计,代码尺寸小,同时EEOS结构上考虑了实时需求,很高的实时响应速度,因而能够在各种环境下工作,具有良好的可伸缩性。  l HOPEN OS: HOPEN OS是凯思集团自主研制开发的嵌入式操作系统,由一个体积很小的内核及一些可以根据需要进行定制的系统模块组成。其内核Hopen Kernel一般为10KB左右大小,占用空间小,并具有实时、多任务、多线程的系统特征。使用者可以很容易地对这一操作系统进行定制或作适当开发,该系统不仅可以广泛应用于:移动计算平台(PDA)、 家庭信息环境(机顶盒,数字电视)、 通讯计算平台(媒体手机)、 车载计算平台(导航器)、 工业、商业控制(智能工控设备,POS/ATM机)、 电子商务平台(智能卡应用,安全管理)等信息家电上,还可应用于与Internet相联接的一切接入设备,是未来信息家电的核心。 该系统目前已能在:X86、PA-RISC、Power PC、ARM、Strong ARM、MIPS、68XXX等多种芯片上运行。  从国内外的嵌入式系统发展状况来说,嵌入时系统的应用正在从传统的单一应用范围、狭窄应用对象、简单实现功能向现在和未来社会需要的应用需要进行转变。社会对嵌入时系统的需求正在慢慢扩大,特别是最近几年来国际互联网的发展,信息时代从PC时代步入到后PC时代,对信息电器的需求越来越明显,正如我在第二节所描述的那样,信息电器是国际互联网发展到一定阶段,进入到千家万户的一种必要有效的手段。嵌入时系统在信息电器里面的应用,则是对嵌入式系统概念和应用范围的一个变革,从而打破过去PC时代被单一微处理器厂家和单一操作系统厂家垄断的局面,而应该会出现一个由多芯片、多处理器占领市场领域的局面。国内厂商应该抓住这个机会,从而可以向该类行业的核心领域靠近,取得和国际竞争组织竞争的机会。PC机和信息电器,就象是电影和电视一样,在一段时期内会共同存在下去,谁也无法取代谁。但是,就市场角度来看,信息电器却可以占领很大一部分的可能使用PC的客户,虽然两者的定位不全相同,市场的范围有所重叠,但是发展的余地还是很大。 1.4 Linux的历史和现状 Linux是一种在网络上产生的操作系统,他的产生来自于一名芬兰学生Linus Torvalds的业余爱好。在网络上Linux的开发成为一些高手热衷的项目,使得Linux在短期内就成为了一个稳定、成熟的操作系统。重要的是,Linux的开发都是在GPL(GNU Public License)的版本控制之下,因此Linux内核的所有源代码都是采取开放源代码的方式。我们缺乏对操作系统的开发经验,这样的条件对我们来说是一个很大的契机,利用Linux作为我们开发嵌入式系统成为可能。 Linux内核的开发是由Linus Torvalds领导的内核开发小组进行开发的。世界各地的高手们将自己对Linux内核需要做的改动交给Linus小组,由这个小组进行统一控制,随时对内核进行更新升级。整个开发的过程遵循CVS版本控制,保证开发的质量。目前在他们的公共站点http:/www.kernel.org/上几乎每三天进行一次内核的升级,目前最新的内核是即将开发出来的Linux2.4内核。已经推出了测试版本,具体有关Linux2.4内核的介绍可以参看微电脑世界5月22日Linux内核2.4一文。 将Linux作为一个嵌入式操作系统具有许多的优点: 1) 系统稳定、功能强大、支持多种硬件平台、应用软件多、简单易用 Linux 在许多方面与UNIX类似,但是它是一个完全独立的操作系统,它可以非常稳定地运行在许多种体系结构的处理器上。最新的Linux内核支持Intel x86、Motorola/IBM PowerPC、Compaq(DEC)Alpha、IA 64、S/390、SuperH等微处理器体系结构,这种操作系统的广适性可见一斑。 Linux又可以说是一个很小的系统。用来启动只需要小到500K字节不到的目标代码。完全可以把Linux内核和root文件系统放在一张软盘上,启动一台硬件条件最小的机器。也可以利用Linux实现从网络启动,实现网络无盘图形工作站。(在4.6节有详细介绍) Linux的系统界面和编程接口和传统的UNIX类似,大量在UNIX下的程序员可以很方便的从UNIX环境转移到Linux环境下来。而不像从UNIX环境转移到Windows开发环境那样复杂。 在Linux平台上的应用软件也不断得到扩充。许多著名的商业软件都有了Linux下的版本:Applix公司和Star公司提供了多种字处理、电子表格、图形处理的应用软件;Corel WordPerfect 8、Adabas D 和Oracle 8数据库、Netscape Navigator 6.0网络浏览器、Apache 1.3.12网络服务器、Adobe Acrobat Reader 4.0等等Linux下的应用程序都已经纷纷推出。Linux下将来不再是高手的领域,这种操作系统将来也必然走进千家万户,成为Windows强而有力的竞争者。 在网络服务器市场上,近几年商用UNIX系统在往大而复杂的方向发展,使得UNIX的复杂性不断增加,管理整个UNIX系统也就变得越来越复杂。Linux简单易用,系统管理也比较容易上手,从而成为在服务器高端的一个重要选择,并且有不断上升的趋势,大有取代昂贵、复杂的商用UNIX的趋势。 2) 使用成本低 几乎所有的商业用操作系统如Microsoft公司的Windows98/NT Server/NT Workstation系列,都需要为每一个拷贝支付相当数量的费用。在其下的应用软件每一个都需要大量的支出来获得。商用操作系统下建立一个开发工具链,除了要为操作系统本身付费之外,还要为组成工具链的应用软件工具包支付大量的费用。但是Linux是免费软件,只要遵守GPL(GNU General Public License)的规定,就可以免费获得拷贝。Linux下有同样遵循GPL规定的C、C+、Java等等一系列的软件工具开发包,从功能角度上看并不亚于商用开发包,同时可以极大的降低开发成本。这点优势是其他商用操作系统无法比拟的。 3) 文档完善 Linux有非常多的文档支持,从为初学者准备的各种教程到非常详细的联机帮助文档。Linux是互联网充分发展的产物,许多关于Linux的文档都可以在Internet上找到和下载。Linux Document Project是为Linux提供系统化的文档支持的项目,在世界上许多程序员和用户的帮助下,它已经收集了非常详细的系统文档和使用文档。而且,各种关于Linux的书籍和杂志正如雨后春笋般地出现,大量的英文资料也正在翻译成中文,方便中文使用者。 4) 强大的网络功能 Linux操作系统最突出的是网络部分,基本上所有的网络协议和网络接口都可以在Linux上找到,Linux内核比标准的UNIX更加高效地处理网络协议,系统的网络吞吐性能非常好,这也是为什么Linux在网络服务器市场上占据越来越大市场份额的一个原因。 5) 支持X Windows系统 X Windows是一个在大多数UNIX工作站上使用的图形用户界面,它是一种与平台无关的客户/服务器(Client/Server)模型,可以让用户在一台机器上调用另一台机器的X windows库,打开另一台机器上的窗口,而并不需要考虑这两台机器自己本身的操作系统类型。正是这种特性使得UNIX和Linux系统上的用户和应用程序非常自然地通过网络连接在一起。  当然,最重要的是Linux不是某个公司的私有财产,它是一个开放软件,是免费的和源代码公开的。Linux在这几年不断成熟,越来越多的人加入了Linux的行列,以前Linux只是一群黑客的玩具和专家的实验用操作系统,而现在即使是电脑的普通用户也在用Linux。为Linux提供服务的公司也开始出现,为客户提供专业化的技术支持。但实际上不用花钱也可以通过Internet新闻组得到强大的Linux技术支持和帮助。Linux有一个庞大的支持者群体,其中许多人都编写驱动程序和其它的更新程序并且免费的通过Internet网络进行分发。这意味着对新硬件的Linux驱动程序甚至比用于其它的UNIX 系统如Solaris的驱动程序还来得及时。Linux的庞大的志愿者网络在生产“补丁”程序方面反应很快。如,当Pentium II的bug(97年Pentium II处理器的微指令发现设计问题)被发现以后,Linux就是最早提供解决这个问题的方案的操作系统。如果一个Linux应用程序流行起来,用户一般都可以通过Linux新闻组得到很好的支持。有许多Usenet新闻组可供Linux用户寻求帮助。对一般Linux问题的回答时间可同一些厂商的E-mail支持(甚至是电话支持)相比。对Linux的支持绝大部分是通过用户团体在Usenet新闻组上提供的。这上面广泛收集有大量的FAQ,其内容包括Linux安装、配置和故障定位的方方面面。在Usenet上提供的许多这方面的材料现在已经被一些出版商如Walnus Creek等公开出版了。所有的这些,都是现有的嵌入式操作系统所无法比拟的。   1.5 论文的组织介绍 本文对基于Linux的嵌入式系统开发进行解释,并且针对几个关键技术做出讨论。论文的组织结构为:  第一章是对嵌入式系统的综述、Linux的特点以及介绍。 第二章是介绍嵌入式系统的特点,从处理器、实时系统、网络、用户交互接口等方面进行介绍。 第三章是说明采用Linux作为我们嵌入式系统开发的原因,从嵌入式系统的特点的角度进行讨论。 第四章是Linux的实时系统变种RTLinux的原理、实现和编程的介绍。 第五章是介绍Linux的网络功能,并且介绍对Linux网络设备驱动程序的分析,说明如何利用Linux网络协议栈来用于嵌入式系统中网络模块。 第六章是介绍如何利用GDB的远程调试功能搭建跨平台的Linux内核调试环境。 第七章在总结整个毕业设计的基础之上,展望进一步进行开发的几点内容。 第二章 嵌入式系统的特点 2.1 嵌入式处理器的要求 嵌入式系统的核心部件是嵌入式处理器。市场上形成竞争力的嵌入式处理器比PC使用的微处理器的垄断局面要好的多。几乎每个半导体厂家都生产自己的嵌入式处理器,越来越多的公司都有自己的嵌入式处理器设计部门。嵌入式处理器的功能跨度很广,寻址空间从64KB到16MB,处理速度从0.1MIPS到2000MIPS,常用封装从8个引脚到144个引脚。目前,嵌入式处理器主要可以分为如下几类: 1)嵌入式微处理器    嵌入式微处理器就是和通用计算机里面对应的CPU。在应用中,一般是将微处理器装配在专门设计的电路板上,在母板上只保留和嵌入式相关的功能即可。这样可以满足嵌入式系统体积和功耗大幅度减小的要求。   目前的嵌入式处理器主要包括有AM186/88、386EX、SC-400、PowerPC、Motorola 68000、MIPS、ARM系列等等。 2)嵌入式微控制器   嵌入式微控制器又称单片机。它是将一整个计算机系统集成

    注意事项

    本文(毕业设计论文基于Linux的嵌入式操作系统研究.doc)为本站会员(sccc)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开