Linux在嵌入式的应用外文翻译

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Linux应用于嵌入式系统UNIX引起了全然不同的情绪:因其能力和灵活性而受到一些人的青睐,但因其复杂且神秘的命令而受到另一些人的藐视。在计算世界里,UNIX已建立起一个褒义不一的声誉。易用性UNIX因其过于神秘、不易记忆和含义模糊的大量键盘命令而名声不佳,这些命令每个都有很多命令行开关,这可能造成昏药而不易记忆。它的SVR4版本拥有2000多个命令,其中很多功能可通过管道和重定向进行组合。这反映了UNIX的基本设计思想之一:生成数量很大的专用和模块化命令,把它们结合起来就能完成各种复杂的任务。虽然UNIX过去基本上限于大学和应用开发公司中的软件专业人员使用,其复杂的命令行语法和由此而得到的灵活性被看作一个优点而不是问题。但是在面向商业的市场中使用UNIX,却产生了一个重大的缺陷——系统越灵活,它就变得越难学会和操作。UNIX的原本(或脚本)语言提供某种形式的帮助。利用原本语言,系统管理员能很快地把系统裁剪成满足一组用户的需求。克服UNIX神秘命令语言之困难的另一种方法是用图形用户接口GUI,如Motif,SunView或OpenLook。然而,图形用户接口在已经很复杂的系统上增添了另一层不兼容性问题。Motif已经移植到差别非常大的不同体系结构上(由于它仿效PresentationManager的风格),而且在外观与感觉上也许是最接近于诸如MicrosoftWindows一类的PC接口。SunView由于有很大的装机数和很多应用程序员已熟悉按它的规范写软件,所以也是一种主流图形用户接口。二进制兼容性UNIX的销售者以某种羡慕的心情关注着DOS世界中可能的大量简装应用程序,并承诺不同系统的二进制兼容的应用程序即将面世。这些承诺远未让人满足。虽然二进制兼容性尚未获得,但现在不同机器上共享数据和应用程序正在变得更加容易。可移植性与多数操作系统源码相比,UNIX程序容易移植。它用C语言编写,而不用汇编语言,使用UNIX能移植到不同的体系结构上。但是把UNIX移植到一个新系统上也不是一件一蹴而就的事情,常常是要几个人年的工作,还可能造成故障和失灵,从而在性能上产生难以捉摸的不一致性。这些故障往往是难以识别与纠正的。拥有你自己的计算机操作系统的源码,既有益,也有害;如果操作系统缺少某些所需功能,公司自己拥有源码能大大增强公司进行必要修改的能力。另一方面,具有新的或修改特性的操作系统定制版本,在日后可能出现与更新的版本或购买的应用程序不兼容的问题。为什么用LINUX?用于接口、监控、通信和控制应用程序的职能专用系统和设备越来越要求高级的现代操作系统的这些服务。许多这样的系统需要如下的高级性能:高分辨率和用户友好的图形用户界面:TCP/IP链接;用可靠的闪存固态盘代替常规的磁盘机;支持32位的超高速CPU;使用大存储器阵列;以及似乎是无限容量的存储设备,包括CD-ROM和硬盘。这不是以前的独立代码,自己写的核,或简单的老是DOS,那些日子已永远过去。另外也考虑到硬件和芯片迅速加速的革新步伐——伴随着老设备相当快地淘汰。结合这两种情况,就能知道为什么对商用实时操作系统供应商而言,跟上硬件设备的不断出新已变成巨大的挑战。及时地支持最新设备,甚至不去理会不愿退让的、大力推销的逐渐过时的芯片组,你需要大量和不断的资材投入。如果商用实时操作系统供应商必须奋力紧跟硬件发展的话,那么编写独立的代码或写自己的核,这种单枪匹马的做法一定是毫无意义的。因为选择范围很小,嵌入式系统的开发商面临这样的一种困境:一方面,今天高度复杂的,且授权的智能嵌入式系统(基于最新的芯片和硬件性能)所需要的正式流行的高档操作系统(如Windows)提供的那种能力、精致性,以及通用性。另一方面,嵌入式系统要求非常高的可靠性(不停机,无人照管的操作),加上有能力把操作系统改编成符合应用系统的独特的要求。其窘境是:通用桌面操作系统(如Windows)不能很好地适应于类似设备的嵌入式系统的独特需求。然而,商用实时操作系统,虽然设计成满足嵌入式应用的可靠性和配置灵活性的要求,但由于他们缺乏标准化以及没有能力跟上技术的速度发展步伐,它们日益不合需要。开发人员做什么?幸运的是,一种新的、令人兴奋的选择系统已经出现:开放源码Linux。Linux提供功能强大的和高级系统管理设施。丰富的设备支持,在可靠性和鲁棒性,以及广泛详尽的文档方面有极好的声誉。最好的(对系统开发人员而言)是Linux不要钱——有完全免费的源代码。Linux是不是像Windows那样太大以及需要系统资源太多,以致不能满足嵌入式系统的约束要求呢?与Windows不同,Linux本来就是模块化的,并且能够很容易缩减成紧缩配置,这种配置几乎与DOS差不多大,甚至能放到一张软盘上。此外,因为Linux源码是免费可用的,所以可以按照独特的嵌入式系统要求改编该操作系统。这样,并不令人惊奇,开放源码Linux已建成了一个新的操作系统开发和支持范例,在那里数以千计的开发人员继续贡献于不断发展的Linux代码库。此外,几十家面向Linux的软件公司已经出现——他们热切支持那些为建立从工厂自动化到智能设备范围很广的应用系统的开发人员的要求。小Linux对许多嵌入式系统,为了适应诸如RAM、固态盘、处理机速度,以及功耗的约束,嵌入的Linux的主要任务是,使系统所需的资源最小。嵌入式操作系统可能需要从一个芯片盘或紧凑闪存固态盘上自举;或者自举和运行在没有显示器和键盘(“无头”操作)的环境,或经有以太网连接,从远程设备装入应用程序。现成的小Linux有许多来源,其中有日益增多的面向应用的Linux配置和分发版,这些都被修改成适应于特定的应用。例如路由器、防火墙、互联网/网络设备、网络服务器、网关等。你也可能选择建立你自己喜欢的嵌入式Linux,从一个标准分发版开始,略去不要的模块。虽然如此,还应该考虑从别人的工作配置基础上开始你的工作,因为他们的版本的源仅是完全合法的,而且也是被鼓励。实时Linux许多嵌入式系统需要对现实世界的一些事件可预测,并且受限响应。这样的实时系统包括工厂自动化、数据采集和控制系统、音频/视频应用,以及许多其他计算机化的产品和设备。什么是“实时系统”?通常接受的“实时”性能的定义是,现实世界时间必须在确定的、可预测的,以及在相对短的时间间隔内得到响应。虽然Linux不是一个实时操作系统(Linux内核不提供所需要的事件优先级和抢占功能),但当前有几个扩充选项可用,这些选项把实时能力带给基于Linux的系统,最通常的方法是双内核方法。用这个方法,通用(非实时)OS运行作为实时内核的一个任务。通用操作系统提供诸如磁盘读/写、LAN/通信、串行/并行I/O、系统初始化、内存管理等功能,而实时内核处理时限世界事件。你可以把这个看作两者兼得,因为它能够保持流行的通用操作系统好处,而增加了实时OS的能力。就Linux来说,你能保持与标准Linux兼容,而以非干扰的方式增加了实时功能。当然,也可以专研并修改Linux,把改变成实时操作系统,因为它的源码是公开可用的,但如果这样做,你会面临这样严重缺点,即不论特性方面,还是驱动程序方面都不能与主流Linux同步前进。简言之,你的制定Linux将不能从Linux的不断进展中获得好处,而这种进展是世界范围内数以千计的开发人员共同协力的结果。Linux是一个操作系统,它担当计算机系统硬件与软件间的通信服务,Linux内核包含了你在任何操作系统所期望的所有特性。原文:UsingLinuxinEmbeddedSystemsUNIXevokesawiderangeofemotions:lovedbysomeforitspowerandflexibility,despisedbyothersforitseomplexandarcanecommands.UNIXhasestablishedacheckeredreputationintheworldofcomputing.EASEOFUSEUNIXisinfamousforitsglutofarcane,non-mnemonic,andcryptickeyboardcommands,eachwithmanycommand-lineswitches,whichcanbeincrediblyconfusingtoremember.ItsSVR4implementationcontainsmorethan2,000comands.Manyofthesefunctionscanbecombined,usingpipesandredirection.ThisillustratesoneofUNIX’sdesignfundamentals:thecreationofalargeassortmentofveryspecializedandmodularcommandsthatcanbecombinedtoaccomplishcomplextasks.WhileUNIXwasessentiallylimitedtousebysoftwareprofessionalsatuniversitiesandinapplicationsdevelopmenthouses,itscomplexcommand-linesyntaxandresultingflexibilitywereconsideredanadvantageratherthanaproblem.ButthissameflexibilityalsocreatesamajordrawbackforusingUNIXinabusiness-orientedmarket—themoreflexibleasystemis,themoredifficultitbecomestolearnandoperate.UNIX’sscriptlanguagesprovideoneformofhelp.Usingscripts,asystemadministratorcantailorthesystemtoasetofusers’needsquickly.AnotherfactormitigatingthedifficultiesofUNIX’sarcanecommandlanguagearetheGraphicUserInterfaces(GUIs),suchasMotif,SunView,orOpenLook.GUIs,however,placeanotherlevelofincompatibilityproblemsonwhatisalreadyacomplexsystem.Motifhasbeenportedtothemostdifferentarchitecturesand(becauseitfollowsthePresentationManagerstyle)isperhapsclosestinlookandfeeltoaPCinterfacesuchasMicrosoftWindows.SunViewisalsodominantbecauseofitslargeinstalledbaseandthenumbersofapplicationsprogrammerswhohavebecomefamiliarwithwritingsoftwaretoitsspecifications.BINARYCOMPATIBILITYUNIXmarketershavelookedwithsomeenvyatthehuge-baseofshrink-wrappedapplicationsavailableintheDOSworldandhavepromisedthatbinary-compatibleapplicationsforsystemsisjustaroundthecorner.Thesepromiseshaveyettobemetinanysignificantway.Whilebinarycompatibilityisno

1 / 9
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功