快捷搜索:  as  2018  FtCWSyGV  С˵  test  xxx  Ψһ  w3viyKQx

和记娱h188App:嵌入式Linux操作系统的应用场景有多广

和记娱h188App

现在 广泛用于种种谋略利用,不仅包括 微型 手表、手持设备( 和蜂窝电话)、因特网装配、瘦客户机、防火墙、工业机械人和电话根基举措措施设备,以致还包括了基于集群的超级谋略机。让我们看一下 用作嵌入式系统必要供给哪些功能,以及它在今朝可用的选择中最具吸引力的缘故原由所在。

嵌入式系统的呈现

用于节制设备的谋略机,也叫做嵌入式系统,它的历史险些和谋略机自身的历史一样长。它们最初于六十年代晚期在通讯中被用于节制机电电话互换机。因为在以前的十多年里,谋略机财产赓续朝着更小的系统偏向成长,嵌入式系统也与之一路为这些小型机械供给了更多的功能。垂垂地,就必要把这些嵌入式系统连接到某种收集上,因而也就孕育发生了对收集栈的要求,这前进了系统的繁杂程度并要求更多的存储器接口,还有,您猜对了,操作系统的办事。

七十年代晚期呈现了用作嵌入式系统的现成的操作系统,现在有许多可行的选择规划。此中,一些主要的竞争者开始崭露锋芒,比如,VxWorks、pSOS、Neculeus 和 Windows CE。

在嵌入式系统中应用 Linux 的优点和毛病

虽然大年夜多半 Linux 系统运行在 PC 平台上,但 Linux 也可以作为嵌入式系统的靠得住主力。Linux 盛行的“back-to-basics”措施使得它的安装和治理比 加倍简单机动,这对付那些 专家们来说又是一个优点,他们已经由于 Linux 中有许多敕令和编程接口同传统的 一样而赏识了。

范例的压缩包装 Linux 系统颠末打包,在拥有硬盘和大年夜容量内存的 PC 机上运行,嵌入式系统可不要这么高的设置设置设备摆设摆设。一个功能完整的 Linux 内核要求大年夜约 1 MB 内存。而 Linux 微内核只占用此中很小一部分内存,包括虚拟内存和所有核心的操作系统功能在内,只需占用 CPU 系统的 100 K 内存。只要有 500 K 的内存,一个有收集栈和基础实用法度榜样的完全的 Linux 系统就可以在一台 8 位总线(SX)的 386 微处置惩罚器上运行的很好了。因为内存要求经常是必要的利用所抉择的,比如 Web 办事器或者 代理,Linux 系统以致可以仅应用 256 KB ROM 和 512 KB RAM 进行事情。是以它是一个瞄准嵌入式市场的轻量级操作系统。

与传统的实时操作系统比拟(),采纳象嵌入式 Linux 这样的开放源码的操作系统的别的一个好处是 Linux 开拓团体看来会比 的供应商更快地支持新的 IP 协讲和其它协议。例如,用于 Linux 的设备驱动法度榜样要比用于商业操作系统的设备驱动法度榜样多,如收集接口卡(NIC)驱动法度榜样以及并口和串口驱动法度榜样。

闪存

快闪 RAM 内存是大年夜多半 Palm 设备用来存储操作系统的专用的存储器。它具有容许操作系统进级的优点,还可以用于数字式蜂窝电话、数字式拍照机、LAN 互换机、PC 卡、数字式、嵌入式节制器和其它小型设备。嵌入式系统,如嵌入式 Linux,不要求有磁盘驱动器,只管可能应用其它的内存组织要领。是以假如,打个比方,Linux 用完了闪存,它就可以将此中一部分作为只读的文件系统来存储额外的法度榜样和静态数据。

核心 Linux 操作系统本身的微内核体系布局相称简单。收集和文件系统以模块形式置于微内核的上层。驱动法度榜样和其它部件可在运行时作为可加载模块编译到或者是添加到内核。这为构造定制的可供给了高度模块化的构件措施。而在范例环境下该系统需结合定制的驱动法度榜样和利用法度榜样以供给附加功能。

嵌入式系统也经常要求通用的功能,为了避免重复劳动,这些功能的实现运用了许多现成的法度榜样和驱动法度榜样,它们可以用于公共外设和利用。Linux 可以在外设范围广泛的多半微处置惩罚器上运行,并早已经有了现成的利用库。

Linux 用于嵌入式的因特网设备也是很相宜的,缘故原由是它支持多处置惩罚器系统,该特点使 Linux 具有了伸缩性。因而设计职员可以选择在双处置惩罚器系统上运行实时利用,前进整体的处置惩罚能力。例如,您可以在一个处置惩罚器运行 GUI,同时在另一个处置惩罚器上运行 Linux 系统。

在嵌入式系统上运行 Linux 的一个毛病是 Linux 体系供给实时机能必要添加实时软件模块。而这些模块运行的内核空间恰是操作系统实现调整策略、硬件中断非常和履行法度榜样的部分。因为这些实时软件模块是在内核空间运行的,是以代码差错可能会破坏操作系统从而影响全部系统的靠得住性,这对付实时利用将是一个异常严重的弱点。

另一方面,现成的 完全是为实时机能而设计的,它经由过程在由用户而非系统级进程启动时分配给某个进程以高于其它进程的优先级的要领来实现靠得住性。进程在操作系统看来便是在内存里或硬盘驱动器上履行的法度榜样。给他们指定进程 ID 或者数字标识符为的是让和记娱h188App操作系统跟踪正在履行的法度榜样和这些法度榜样的相关联的优先等级。这样的要领包管了 RTOS 光阴能比 Linux 供给更高的靠得住性(可预见性)。但最紧张的,这照样一种加倍经济的选择。

不合类型的嵌入式 Linux 系统

已经有许多嵌入式 Linux 系统的示例;可以有把握地说,某种形式的 Linux 能在险些任一台履行代码的谋略机上运行。例如,ELKS(可嵌入 Linux 内核子集)规划计划在 Palm Pilot 上应用 Linux。下面列出了一些加倍广为人知的小型嵌入式 Linux 版本:

ETLinux — 设计用于在小型工业谋略机,尤其是 PC/104 模块上运行的 Linux 的完全分发版。

LEM — 运行在 386 上的小型(《8 MB)多用户、收集 Linux 版本。

LOAF — “Linux On A Floppy”分发版,运行在 386 上。

uClinux — 在没有 MMU 的系统上运行的 Linux。今朝支持 68K、 和 ColdFire 微处置惩罚器。

uLinux — 在 386 上运行的 tiny Linux 分发版。

ThinLinux — 面向专用的拍照机办事器、 节制器、 播放器和其它类似的嵌入式利用的最小化的 Linux 分发版。

软件和硬件要求

许多的用户接口对象和法度榜样增强了 Linux 基础内核的多功能性。就此而论,可以把 Linux 看作是这样一个继续范围,从只有存储器治理、义务转换和器办事最小化的微内核不停到完备的一系列文件系统和收集办事的功能完善的办事器。

最小的嵌入式 Linux 系统仅必要三个基础元素:

向导实用法度榜样

Linux 微内核,由内存治理、进程治理和办事构成。

初始化历程

要实现最低限度的事情能力,您还必要添加。

硬件驱动法度榜样

一个或多个利用进程,以供给所需功能。

跟着要求的增添,您可能还必要:

一个文件系统(可能是在 ROM 或者是 RAM 里);

TCP/IP 收集栈;

储存半瞬态数据和供给互换空间的磁盘;

32 位内置 CPU(所有完全的 Linux 系统都必要);

相关的硬件规划。

下面是一些现有的为 Linux 操作系统定制的嵌入式硬件规划。

PLEB:带有 ARM SA-1100 / ArmLinux Ucsimm / Uclinux Flash EPROM 的袖珍 Linux 嵌入式机械Linux Lab: Linux Lab 规划旨在赞助人们开拓 Linux 数据采集和历程节制软件。它计划供给从硬件支持到利用开拓的广阔范围内利用的标准化开拓情况。

节制器域网:Linux GP和记娱h188AppIB 的节制器域网(CAN)总线驱动法度榜样;Linux GPIB 包是一个对通俗 GPIB(IEEE 488.1)硬件的支持包。驱动法度榜样支持 NaTIonal Instruments AT-GPIB、TNT488.2 以及 PCII 和 PCIIa 板。这个包里有完备的开拓情况,包括测试和设置设置设备摆设摆设对象、库以及对 tcl 和 python 说话的支持。

硬件平台选项

遴选最佳硬件的历程会相称繁杂,问题起源于公司内部政策、成见、其它规划的遗留问题、短缺周全的或者正确的信息以及资源 — 需斟酌总的产品资源,而不仅仅是 CPU 本身。无意偶尔,一旦把 CPU 应用其它外围设备所必需的总线逻辑和延迟光阴斟酌在内,那么快速而廉价的 CPU 也可能变得昂贵。要谋略随意率性给定的项目所需的 CPU 速率,首先要现实地看看为了完成一个给定的义务 CPU 得运行多快然后再乘以三。还要确定总线必要运行多快。假如还有二级总线,比如 PCI 总线,那么将它们也斟酌在内。一条慢的总线(即一条被 DMA 通信壅闭的总线)将会显明低落高速 CPU 的速率。下面是一些嵌入式 Linux 利用的最佳硬件。

Br和记娱h188Appight Star Engineering:Bright Star Engineering 的 ipEngine-1 是支持嵌入式 Linux 的信用卡大年夜小的。它使用了基于 PowerPC 的 CPU,并供给了一组板上外设,有 Ethernet、/视频节制器、USB、串口 I/O 以及一个 16K 门的可由用户设置设置设备摆设摆设的 FPGA。BSE 的嵌入式 Linux 设置设置设备摆设摆设容许 Linux 从 ipEngine 的板上 4MB 闪存中向导。

Calibri:CalibriTM-133 是将嵌入式 Linux 作为其操作系统来应用的收集设备,它方便应用、紧凑,并且可以用于多种用途。它为防火墙、VPN 和路由要求供给了一种高效、低资源的。

EmbeddedPlanet: EmbeddedPlanet 创造了后 PC 期间的谋略机,它呈现时就装有 MontaVista 的 HardHat Linux。由基于 PowerPC 的谋略引擎和匹配的 I/O 卡驱动,Linux Planet 装在一个彩色的透明盒子里并且带有,还可以造访数字及模拟 I/O。

Eurotech:Eurotech 供给了嵌入式 PC SBC 并资助了 ET-Linux,一个为在小型工业谋略机上运行而专门设计的基于 glibc 2.1.2 的完全的 Linux 系统。

Microprocess Ingenierie:Microprocess 为财产和嵌入式市场开拓、临盆以及贩卖标准的和定制的产品。Microprocess 在实时软件方面活动范围普及举世,并具有系统集成的专业常识。它的产品,比如 740 PowerPC compactPCI 板可以与标准的 Linux 分发版或者嵌入式 Linux 版本一路订购。

Moreton Bay:Moreton Bay 宣布基于 Linux 的 Internet 路由器,其范围在 NETtel 2520 和 NETtel 2500 之间。这些小型的、易于连接的智能路由器设计旨在为平面收集供给简便、安然和价格适中的外部网友好的虚拟私有收集(VPN)。NETtel 路由器系列运行的是嵌入式 Linux 内核。现有一套开拓对象能够把定制代码存在闪存中并在 NETtel 内部履行。代码可能含有特定的加密或者身份验证协议,或者在 NETtel 被用作远程节制设备代码时,会含有一些本地监视脚本。

Matrix Orbital:这是个可选的、但不是保举的附加项。Matrix Orbital 临盆的一系列串行 和 VFD 被许多 Linux 用户添加到了他们的嵌入式系统中。这条临盆线的范围包括了 8x2 到 40x4 的字符 s、20x2 和 20x4 的 VFD 加上 240x64 图形 LC(128x128 还在临盆之中)。运用显示器的通信不是经由过程 RS232 便是经由过程 I2C 实现的,两者都是其所有模块上的标准。模块的 BIOS 中包孕一个周全的敕令集。

实时嵌入式 Linux 利用

有关嵌入式系统最紧张的事务之一便是要求有一个实时操作系统。这里实时有好几种定义。对有些人来说,实时意味着在 1 微秒的光阴内对事故作出反映,但对别的一些人来说,那就可能是 50 毫秒了。实时的硬度也各不相同。一些系统必要硬实时相应,在很短的光阴内对事故作出确定性相应。然则,当我们对许多系统进行仔细阐发时,我们发明事实上对相应光阴的要求只是靠近实时。实时的要求经常是光阴懈弛冲空间的协调。跟着内存越来越便宜,CPU 速率越来越快,现在靠近实时比硬实时加倍常见,许多商用的所谓实时操作系统远非硬实时。平日环境下,当您进入这些系统的具体设计部分时,就需前进鉴戒必须异常仔细地设计驱动器的中断和利用以满意实时要求。

RT-Linux(实时扩展的 Linux 系统)里含有光阴紧要的函数可以用中断治理器来正确节制中断处置惩罚,从而很好地确保了关键性中断可以在必要时获得履行。这种措施的硬度主要取决于 CPU 中断布局和情况转换的硬件支持。这种措施可以满意广泛范围内的实时要求。纵然没有实时扩展,Linux 也能很好地处置惩罚多个事故流。例如,运行于低端 上的 Linux PC 系统能让多个 10BaseT 接口有效地履行,同时又以全速的 56KBPS 运行字符级串口,而不会损掉任何数据。

值得斟酌的实时硬件和软件 Linux API 有 RTLinux、RTAI、EL 和 Linux-SRT。RTLinux 是一个最初在新墨西哥理工学院开拓的硬实时 Linux API。RTAI(DIAPM)是由 Polytechnic Politecnico di Milano(DIAPM)工程部的法度榜样员们开拓的 RTLinux 实时 API 的副产品。EL/IX 是一个计划中的基于 POSIX 硬实时 Linux API,由 Red Hat 提议。Linux-SRT 是个实时 API 的软实时替代品,它可以使所有的 Linux 法度榜样无需改动或者从新编译即可增强机能。

请参阅本文后面的参考资料部分,查找有关前面内容的资料和一些 Web 站点,那里供给了用于不合类型的标准 Linux 操作系统的软件扩展、开拓对象、支持以及培训课程。

短暂切实着实定性相应光阴

某些实时嵌入式系统必要迅速对外部事故作出相应,以完成一项特定义务。比如,嵌入一枚导弹的一个定制的微节制器在指向导弹瞄准它周围情况的一个特定目标之前,必要迅速对诸如移动目标、气象和人等的外部事故作出迅速相应。短暂切实着实定性相应光阴是指嵌入式系统可以确定它对外部事故作出相应的光阴。

设置设置设备摆设摆设步骤

现在让我们来看一下若何 make LEM,它是一个小型的可嵌入 Linux 分发版,既供给收集又供给 X 办事器。您可以下载该分发版,只管它并非必需。您必要一个完全的 Linux 分发版来建立自己的嵌入式 Linux 操作系统,此中将包括您所必要的统统(实用法度榜样、源代码、编译器、调和记娱h188App试器和文档)。下面是能用来 make LEM 的软件列表:

TInyLogin: TInyLogin 是一套 TIny UNIX 实用法度榜样,它用于登录嵌入式系统、吸收其验证身份、为其改动密码,并能掩护其用户和用户组。为了增强系统安然性它还支持影子口令。正如它的名字所暗示的, TinyLogin 异常小,对嵌入式系统上的 BusyBox 是极好的弥补。

BusyBox:BusyBox 是一个多调用的二进制文件,它供给了 POSIX 式的敕令和专用函数的最小子集。它得当于异常小的嵌入式系统,比如向导磁盘等等。分外用于 Debian 拯救/安装系统(它引发了对最初的 BusyBox 的开拓)、Linux Routeur 规划、LEM、lineo 及其它地方。Busybox 是由 Erik Andersen 掩护的。

Ash:Ash 是个异常小的 Bourne shell。

Sysvinit:Sysvinit 是 Linux 最常用的 init 包。我们将会用到 init 和 C 说话版 start-stop-daemon。

总结

在嵌入式利用的领域里,从因特网设备到专用的节制系统,Linux 操作系统的前景都很灼烁。所有新造的微型谋略机芯片中大年夜约有 95% 都是用于嵌入式利用的。因为 Linux 功能强大年夜、靠得住、机动而且具有伸缩性,再加上它支持大年夜量的微处置惩罚器体系布局、硬件设备、图形支持和通信协议,这些都使它作为许多规划和产品的软件平台越来越盛行。

因为可以公开免费获得 Linux 源代码,是以对 Linux 和它支持的软件组件的许多改动和设置设置设备摆设摆设也获得了赓续改进,以满意采纳 Linux 的市场和利用的多种需求。别的还有小型版本和实时增强版本。只管 Linux 开始是作为 PC 体系布局的操作系统,然则现在已经有了非 X86 CPU 的版本(带或不带内存节制单元),包括 PowerPC、ARM、MIPS、68K 以致是微节制器。然则,请留意,在不久的将来,在许多其它的信息技巧(IT)领域会呈现更多!

责任编辑:ct

您可能还会对下面的文章感兴趣: