浅谈嵌入式Linux系统

来源 :速读·中旬 | 被引量 : 0次 | 上传用户:yingyingpps
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:主要分析嵌入式Linux系统应用开发的特点及其开发过程。
  关键词:嵌入式Linux 操作系统;应用前景
  近年来,随着计算技术、通信技术的飞速发展,特别是互联网的迅速普及和3C(计算机、通信、消费电子)合一的加速,微型化和专业化成为发展的新趋势,嵌入式产品成为信息产业的主流。Linux从1991年问世到现在,短短的十几年时间已经发展成为功能强大、设计完善的操作系统之一;可运行在X86、Alpha、Sparc、MIPS、PPC、Motorola、NEC、ARM等多种硬件平台,而且开放源代码,可以定制;可与各种传统的商业操作系统分庭抗争。越来越多的企业和研发机构都转向嵌入式Linux的开发和研究上,在新兴的嵌入式操作系统领域内也获得了飞速发展。
  1 嵌入式Linux的特点
  嵌入式系统是以应用为中心,以计算机为基础,软硬件可裁剪,适用于系统对功能、可靠性、成本、功耗严格要求的专用计算机系统。实时性是嵌入式系统的基本要求,其次,还要求代码小,速度快,可靠性高。嵌入式Linux(Embedded Linux)是指对Linux经过裁剪小型化后,可固化在存储器或单片机中,应用于特定嵌入式场合的专用Linux操作系统。嵌入式Linux的开发和研究已经成为目前操作系统领域的一个热点。与其它嵌入式操作系统相比,Linux的特点如下:
  第一,Linux系统是层次结构且内核完全开放。Linux是由很多体积小且性能高的微内核系统组成。在内核代码完全开放的前提下,不同领域和不同层次的用户可以根据自己的应用需要方便地对内核进行改造,低成本地设计和开发出满足自己需要的嵌入式系统。
  第二,强大的网络支持功能。Linux诞生于因特网时代并具有Unix的特性,保证了它支持所有标准因特网协议,并且可以利用Linux的网络协议栈将其开发成为嵌入式的TCP/IP网络协议栈。
  第三,Linux具备一整套工具链,容易自行建立嵌入式系统的开发环境和交叉运行环境,可以跨越嵌入式系统开发中仿真工具的障碍。Linux也符合IEEE POSIX.1标准,使应用程序具有较好的可移植性。
  传统的嵌入式开发的程序调试和调试工具是用在线仿真器(ICE)实现的。它通过取代目标板的微处理器,给目标程序提供一个完整的仿真环境,完成监视和调试程序;但一般价格比较昂贵,只适合做非常底层的调试。
  第四,Linux具有广泛的硬件支持特性。无论是RISC还是CISC、32位还是64位等各种处理器,Linux都能运行。这意味着嵌入式Linux将具有更广泛的应用前景。
  2 Linux嵌入式系统开发平台
  2.1 系统软件操作平台
  操作系统是一种在计算机上运行的软件。它的主要任务是管理计算机上的系统资源,为用户提供使用计算机及其外部设备的接口。它存在的目的是为了管理所有硬件资源,并且提供应用软件一个合适的操作环境。
  Linux作为嵌入式操作系统是完全可行的。因为Linux提供了完成嵌入功能的基本内核和所需要的所有用户界面,能处理嵌入式任务和用户界面。将Linux看作是连续的统一体,从一个具有内存管理、任务切换和时间服务及其它分拆的微内核到完整的服务器,支持所有的文件系统和网络服务。
  嵌入式Linux系统需要下面三个基本元素:系统引导工具(用于机器加电后的系统定位引导)、Linux微内核(内存管理、 程序管理)、初始化进程。但如果要它成为完整的操作系统并且继续保持小型化,还必须加上硬件驱动程序、硬件接口程序和应用程序组。
  Linux是基于GNU的C编译器,作为GNU工具链的一部分,与gdb源调试器一起工作的。它提供了开发嵌入式Linux系统的所有软件工具。
  2.2 系统硬件平台
  在选择硬件时,常由于缺乏完整或精确的信息而使硬件选择成为复杂且困难的工作。现在比较流行的硬件平台有Intel公司的StrongARM 系列,Motorola公司的DragonBall系列,NEC公司的VR系列,Hitachi公司的SH3、SH4系列等等。选定硬件平台前,首先要确定系统的应用功能和所需要的速度,并制定好外接设备和接口标准。这样才能准确地定位所需要的硬件方案,得到性价比最高的系统。
  3 嵌入式Linux系统开发模式
  嵌入式系统通常为一个资源受限的系统。直接在嵌入式系统的硬件平台上编写软件比较困难,有时甚至是不可能的。目前,一般采用的办法是,先在通用计算机上编写程序,然后,通过交叉编译,生成目标平台上可运行的二进制代码格式,最后下载到目标平台上的特定位置上运行,具体步骤如下。
  第一步,建立嵌入式Linux交叉开发环境。目前,常用的交叉开发环境主要有开放和商业两种类型。开放的交叉开发环境的典型代表是GNU工具链,目前已经能够支持x86、ARM、MIPS、PowerPC等多种处理器。商业的交叉开发环境主要有Metrowerks CodeWarrior、ARM Software Development Toolkit、SDS Cross compiler、WindRiver Tornado、Microsoft Embedded Visual C++等。交叉开发环境是指编译、链接和调试嵌入式应用软件的环境。它与运行嵌入式应用软件的环境有所不同,通常采用宿主机/目标机模式。
  第二步,交叉编译和链接。在完成嵌入式软件的编码之后,就是进行编译和链接,以生成可执行代码。由于开发过程大多是在Intel公司x86系列CPU的通用计算机上进行的,而目标环境的处理器芯片却大多为ARM、MIPS、PowerPC、DragonBall等系列的微处理器,这就要求在建立好的交叉开发环境中进行交叉编译和链接。
  第三步,交叉调试。
  ① 硬件调试。如果不采用在线仿真器,可以让CPU直接在其内部实现调试功能,并通过在开发板上引出的调试端口,发送调试命令和接收调试信息,完成调试过程。目前,ARM公司提供的开发板上使用的则是JTAG调试端口。
  ② 软件调试。在嵌入式Linux系统中,Linux系统内核调试,可以先在Linux内核中设置一个调试桩(debug stub),用作调试过程中和宿主机之间的通信服务器。然后,可以在宿主机中通过调试器的串口与调试桩进行通信,并通过调试器控制目标机上Linux内核的运行。
  第四步,系统测试。整个软件系统编译过程,嵌入式系统的硬件一般采用专门的测试仪器进行测试,而软件则需要有相关的测试技术和测试工具的支持,并要采用特定的测试策略。测试技术指的是软件测试的专门途径,以及能够更加有效地运用这些途径的特定方法。
  作者简介:
  郑晓霞(1978.5~),女,内蒙古乌兰察布市人,研究生学历,单位:集宁师范学院,研究方向:嵌入式;赵鹏宇,集宁师范学院,研究生学历,讲师;曹剑英,集宁师范学院,研究生学历,讲师。
其他文献
摘 要:企业宣传工作主要是针对企业文化建设进行宣传,为的是提高企业员工的责任感和积极性,提高企业凝聚力和向心力。企业文化是企业能否健康、稳定发展的思想保障。油田企业的和谐发展是支撑我国国民经济发展的重要力量,也是我国构建社会主义和谐社会,落实科学发展观的重要组成部分。油田企业和谐发展也离不开文化的建设,如何做好文化建设宣传工作,是油田企业的重要工作之一。  关键词:宣传工作;油田企业;和谐发展  
书法作为我国独具特色的一种传统艺术,它像一条奔流不息的长河,源远流长,博大精深。从殷商时期的甲骨文开始,先后经历了秦汉的气势,魏晋的神韵,隋唐的法度,宋元的意态,明清的质朴。直到今天依然就像黑夜里的繁星,争相辉耀。书法艺术是艺术家成功地进行艺术形象创造的美;是对事物、自然万物美的反映,是通过汉字书写形式创造出艺术生命活力的形象再现的美,以及由这形象体现出来的书者对艺术规律的理解能力、所展示出的高雅
近年来,培养创新型技能人才已经成为中等职业教育的重头戏。如何在职业学校培养学生的创新意识,是现代职教人急需解决的问题。本文对中等职业学校创新教育的开展进行了探究。
近年来,婺城区以加强公共文化服务体系建设,满足人民群众最基本的文化需求为切入点,充分挖掘各种文化教育资源,创新活动载体,引导群众广泛开展“种文化”活动,走出了一条“文
青少年是祖国的花朵,将肩负起建设祖国的重任。青少年是党和国家的希望,是中华民族的希望,青少年的健康成长关系着祖国的振兴、国家的富强。党和国家历来重视对青少年的教育
一棵树最能体现其生命活力的是繁茂的枝叶,一堂课的精彩莫过于生长其间的闪光细节。充满魅力的教学细节,要靠教师精心创设,用心打造。这不是浅尝辄止表面“作秀”,也不是明知不可为或不必为而为之的故弄玄虚,而是对文本、学生、环境深刻理解和把握后的自然而巧妙的“创设”。课堂的精彩生成离不开对文本、对教学过程中细节的精心预设,教师要用开放的胸怀去预设理想的教学情境,预设文本中哪些关键的字,词、句、段需要挖掘,如
保税区作为我国对外开放的特有产物,在我国经济的快速发展历程中产生了巨大推动作用,随着改革开放程度的不断深入,以及经济全球化和区域经济一体化的国际形势,提升我国的国际
期刊
哲学社会科学的重要性及其在经济发展、社会进步和人类文明进程中发挥的巨大积极作用,是一个不争的事实。只是它不像自然科学的作用那样直接,那样具体,那样可以明示和量化,所以便
话说清咸丰年间,缙云县深渡村的壮小伙梅周金被征召入伍后,不久又被遴选进京,担任朝廷梅花鹿驯养园的养鹿倌。理由很简单:在遴选时,他跑步比赛得了第一,选拔者说梅花鹿跑得快,养鹿人也要跑得快才撵得上;又说他不仅姓梅,与梅花鹿同姓相亲,而且在家时养过牛、放过羊,知道草食动物的习性,有利于鹿儿的健康生长。  那么堂堂朝廷为何要自个儿开办养鹿场呢?原来与咸丰帝的迷恋女色、荒淫无度有关。  咸丰帝奕詝生于一八三
期刊
笔者首先从对我国计算机网络教学的现状分析出发,对于仿真软件在计算机网络教学中的优势进行了分析和探讨。最后,文章以Packet Tracer为例,分析和探讨了仿真软件在计算机网络