嵌入式Linux操作系统的广泛应用分析
给他们指定进程 ID 或者数字标识符为的是让操作系统跟踪正在执行的程序和这些程序的相关联的优先等级。这样的方式保证了 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。目前支持 Motorola 68K、MCF5206 和 MCF5207 ColdFire 微处理器。 uLinux — 在 386 上运行的 tiny Linux 分发版。 ThinLinux — 面向专用的照相机服务器、X-10 控制器、MP3 播放器和其它类似的嵌入式应用的最小化的 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 GPIB 的控制器域网(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 应用的最佳硬件解决方案。 Bright Star Engineering:Bright Star Engineering 的 ipEngine-1 是支持嵌入式 Linux 的信用卡大小的单片机。它利用了基于 PowerPC 的 CPU,并提供了一组板上外设,有 Ethernet、LCD/视频控制器、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 为产业和嵌入式市场开