从硬件环境来看,桌面操作系统具有标准化的、存储和I/O架构,而嵌入式环境中的RTOS的硬件环境只有标准化的,没有标准化的存储、I/O和显示器架构。
从应用环境来看,桌面操作系统面向复杂多变的应用,而RTOS面向单一设备的单一应用。
从开发界面来看,桌面操作系统试图给开发提供一个“黑箱”,让开发通过一系列标准的系统调用来使用操作系统中的功能,而嵌入式试图为开发提供一个“白箱”,让开发可以自主控制系统的所有资源。
桌面操作系统的研究开发指导思想是尽可能在不改变自身的前提下具有广泛的适应。也就是说:不论应用环境怎么变化,好都不要对自身内部产生什么影响,也不要求自身做太多的变化。反过来,应用于嵌入式环境的RTOS,在研发的时候就必须立足于改变自身、开放自身,让开发可以根据硬件环境和应用环境的不同而对操作系统进行灵活的裁剪和配置,因为对于任何一个具体的嵌入式设备,它的功能是确定的,因此只要从原有操作系统中把这个特定应用所需的功能拿进来即可。
应当指出的是:如果一个操作系统平台只能依靠手工的方式去掉一些代码,这根本就不是可裁剪。所谓可裁剪是在软件工程阶段利用软件配置方法实现软件构件的“即插即用”。
可裁剪带给用户的一个直接的好处是硬件成本降低,这对于成本敏感的应用,如消费电子类设备,具有重要的现实意义。由于设备中只包含应用程序用到的那部分操作系统功能,这就使得系统变得简单、易把握,从而提高系统的可靠。
到位——实时
许多人都把实时理解为速度快。那么,速度快到什么程度才算是达到实时呢?其实,所谓实时,其核心含义在于确定,而不是单纯的速度快。也就是说,RTOS所要求的是在规定的时间内做完应该做的事情,并且操作系统的行为(执行线索)是确定的,这是写出高可靠程序的基础。如果完成同样的动作,有的时候快,有的时候慢,且执行线索千差万别,程序员无法把握,可靠就无从。
嵌入式系统为什么对实时要求那么高呢?因为嵌入式系统主要是对仪器设备的动作进行监测控制的,而一般的桌面操作系统基本上是根据人在键盘和鼠标发出的命令进行工作。相对而言,仪器设备的动作具有严格的、机械的时序要求,而人的动作和反应在时序上并不那么严格。比如,用于控制火箭发动机的嵌入式系统,它所发出的指令不仅要速度快,而且多个发动机之间的时序要求严格,否则就会差之毫厘、谬之千里。在这样的应用环境中,非实时的普通操作系统无论如何是无法适应的。
如果我们所开发的设备并不是像航空航天器那样生命攸关或者生产控制那样的关键任务系统,而是像消费电子类那样,即使出现错误也不会造成灾难后果的设备,那么实时(严格地讲是确定)是否还具有现实意义呢?答案是肯定的!设备的高可靠可以有效地降低维护成本;软件运行效率高也会降低对的要求,从而降低硬件成本。对于消费电子产品这类价格十分敏感的产品,实时、可靠仍然是值得重视的问题。
坚如磐石――可靠
桌面操作系统与RTOS相比,另一个差别就是对于稳定、可靠方面的设计思路。一方面,桌面操作系统比较庞大、复杂,而RTOS比较小巧、简捷,而“越简单、越可靠,越复杂、故障概率越大”这又是一个常理。另一方面,更重要的是:桌面操作环境与嵌入式环境在设计思路上有一个重大的不同——桌面环境假定应用软件与操作系统相比而言可以是不可靠的,而嵌入式环境假定应用软件与操作系统一样可靠。
运行于嵌入式环境中的RTOS要求应用软件具有与操作系统同样的可靠,这种设计思路对应用开发提出了更高的要求,同时也要求操作系统自身足够开放。
Tektronix WCA380 DC – 8 GHz Real Time Spectrum Analyzer
West Bond 4546E 2-way Semi-Automatic Wedge-Wedge Bonder
Osaka Vacuum TG1810 TG-1810 Compound Molecular Pump
Varian Turbo-V 1800 Turbo Pump * Refurbished * NICE
Osaka Vacuum TG1300 TG-1300 Compound Molecular Pump
HP Agilent 71603B 3 Gb/s Error Performance Analyzer BER
Gigatronics 900 cf. 059 Signal Generator .05-22 GHz NEW
JDS Uniphase 6×6 SG Matrix Fiber Optic Switch JDSU
Newport 400 mm Motorized Linear Stage TWS400DC ESP
Tektronix VX4240 VXI Waveform Analyzer w/ Option 02
ASYST OFH3000-001 Prealigner OFH3000 Pre-aligner
JDS Uniphase 4×6 6×4 SG Matrix Fiber Optic Switch JDSU
VAT 14052-PE44-ACD1 Gate Valve 14″
Seiko TT8550 TT-8550 D-Tran Robot GOOD
AJA International 100/300 13.56 Mhz 300W RF generator
Seren Power Supply R301MKII P/N 9600730020 RF Generator
Osaka Vacuum TG550 TG-550 Compound Molecular Pump
JDS Uniphase 1×24 SB Fiber Optic Switch JDSU – GOOD
Genmark Automation S08R5GP Controller
Brooks PRI Equipe PRE-300B-U PRE-300BU Pre-aligner
Brooks PRI Equipe ABM-407B-1-S-CE-S293 Wafer Robot
Olympus BX-DUV-RLAA Microscope Assembly w/ U-D5BDREMC
ASYST 05050-014 Prealigner Pre-aligner
AE Advance Energy MDX 1.5K RF Generator 3152164-025 A
Kensington CCD Prealigner NEW S/N 98-493-05 Pre-aligner
Olympus U-URBC Vertical Illuminator w Fiber Guide Input
Kensington Labs 8500 Motorized Linear Stage (Newport)
Keithley 590 w/option 100KHz C-V Analyzer NICE
SVG 914252-002 912850-001 Cambridge Hi-Temp Belt
MECS UTW-3100P UTW-3000 CS-1000 Robot Controller
MECS UTW-3100P UTW3100P Wafer Handling Robot
Newport 300 mm 12 in Motorized Linear Stage TS300DC ESP
HP Agilent 16751A Logic Analyzer Module
AVT Oscar F-810C 8MPixel Color CCD camera
Olympus LMPlanApo 150x/0.90 BD inf/0 Objective *NICE*
Optimag Olympus EP004 Hi-resolution Camera
Olympus BX-DUV-TVV1.75 UV Microscope Shutter Assembly
Olympus BX-DUV-LHAD Arc Lamp Interface Module
AJA International MC2 Automatic Matching Controller
AJA Seren AT3 RF Matching Network P/N 9400150013
Osaka Vacuum TC1300 Power Supply Turbopump Controller
Precision Vactronics Programmable Position Controller
Optronics Laboratories 730-InGaAs Integrating Sphere TE
Axsys Model 8000 Laser Tracking Autofocus Assembly
HP Agilent 85093A 3.5 mm RF Electronic Calibration Kit
HP A600+ CPU 12105-60024 12105A Board
HP Agilent E5250A Low Leakage Switch Mainframe GOOD
HP Agilent E5252A Low Leakage Switch Matrix GOOD
Tosoh Quartz Item Part Number 26310-01 NEW in BOX
Tosoh Quartz Item Part Number 26311-01 NEW in BOX
Photometrics PXL CH1 CH-1 Kodak KAF-1000 Camera
Agilent 16750B Agilent-Refurbished w/ comp. Accessories
TTC Fireberd 6000 option 6007 G.703 Jitter Gen Wideband
Newport 100 mm 4 in. Motorized Linear Stage TS100DC ESP
Newport 1250 mm 5in Motorized Linear Stage MTM-1250 ESP