从开发界面来看,桌面操作系统试图给开发提供一个“黑箱”,让开发通过一系列标准的系统调用来使用操作系统中的功能,而嵌入式试图为开发提供一个“白箱”,让开发可以自主控制系统的所有资源。
桌面操作系统的研究开发指导思想是尽可能在不改变自身的前提下具有广泛的适应。也就是说:不论应用环境怎么变化,好都不要对自身内部产生什么影响,也不要求自身做太多的变化。反过来,应用于嵌入式环境的RTOS,在研发的时候就必须立足于改变自身、开放自身,让开发可以根据硬件环境和应用环境的不同而对操作系统进行灵活的裁剪和配置,因为对于任何一个具体的嵌入式设备,它的功能是确定的,因此只要从原有操作系统中把这个特定应用所需的功能拿进来即可。
应当指出的是:如果一个操作系统平台只能依靠手工的方式去掉一些代码,这根本就不是可裁剪。所谓可裁剪是在软件工程阶段利用软件配置方法实现软件构件的“即插即用”。
可裁剪带给用户的一个直接的好处是硬件成本降低,这对于成本敏感的应用,如消费电子类设备,具有重要的现实意义。由于设备中只包含应用程序用到的那部分操作系统功能,这就使得系统变得简单、易把握,从而提高系统的可靠。
到位——实时
许多人都把实时理解为速度快。那么,速度快到什么程度才算是达到实时呢?其实,所谓实时,其核心含义在于确定,而不是单纯的速度快。也就是说,RTOS所要求的是在规定的时间内做完应该做的事情,并且操作系统的行为(执行线索)是确定的,这是写出高可靠程序的基础。如果完成同样的动作,有的时候快,有的时候慢,且执行线索千差万别,程序员无法把握,可靠就无从保证。
嵌入式系统为什么对实时要求那么高呢?因为嵌入式系统主要是对仪器设备的动作进行监测控制的,而一般的桌面操作系统基本上是根据人在键盘和鼠标发出的命令进行工作。相对而言,仪器设备的动作具有严格的、机械的时序要求,而人的动作和反应在时序上并不那么严格。比如,用于控制火箭发动机的嵌入式系统,它所发出的指令不仅要速度快,而且多个发动机之间的时序要求严格,否则就会差之毫厘、谬之千里。在这样的应用环境中,非实时的普通操作系统无论如何是无法适应的。
323A4747ETP37RKIT,323A4747ETP41,323A4747ETP4A,323A4747ETP6C,323A4747ETP8A,323A4747NZP27B,323A4747UCP5,323A4747UQP1A,323A4747UUP4,323A4747UUP5,323A5750P10,323A5750P11,323A5750P12,323A5750P13,323A5750P14,323A5750P16,323A5750P18,323A5750P20,323A5750P6,323A5750P7,323A5750P8,323A5750P9,323A5758G1,323A8923,323B7988P01,323B7988P02,323B7989P02,324A9109P107,324A9243P001,324A9586P001,324A9586P003,325,3268A1039P20A,326A196P002,326A2370P030,327659309C,3276593-09C,327659314,3276593-14,327932RA119A1,328A200HIOXX,328A7161P001,328A7161P003,328A7161P004,328A7230P119,328A7327P002,328A8427P001,328A8427P010,328A8478P002,328A8478P005,328A8478P107,328A9259001 (287A177133P001),329A3529P001,329A3529P020,329A3529P021,32D3126T,
GE公司GE Speedtronic Spares可变调速装置备件:343,365,450,600,610,814,1500,2272,2862,3001,3010,3130,3476,4153,4157,5806
,7415,8501,9012,14875,17021,18000,28320,42643,48220,64005,67097,67800,81303
,82262,98038,109452,114627,136855,148811,174600,200153,281048,282232,312602
,376911,387532,398530,398554,398557,398637,398682,398697,398737,398779,398785
,398803,398875,398879,398887,,98985,399137,399601,408222,408230,469480
522771,522772,721111,800234,1020516,1228803,1878509,359236,407140,111047
,111078,111705,670000,671035,987762,178500,260284,101107,466501,1197100,1510685
,6129100,2984712,3152201,0411043,3802000,8940005,15048634,19218632,71210225,31000000
447739150,99981004,32000000,00332303 31000913 20013000 111439004 530000000 605320002 597514501 9070000000 30471583020 702459000000 90010100000000 #2-B PERMATEX 0.35X1500 0000-7812-02 00079-0325-0002
001-1197-100 005-7416-34-0275 007-05FA-P25J EMO 282 00705FAP25JEMO282
01-002849 011-1197-100 01151-0685 01168J76P0001 0116B6650G1
0117C2164G01 0117C5050G001 01223J53P0001 01336J17P0010
01336J17P0017 01336J17P0019 01336J17P0401 0158D1083P002
30HR1,30-HR1,31,311A5177 P1,311A5177P1,311A5177P3,311A5177P5,,311A5178P002,311A5178P011,311A5178PT2,311A5178PT5,311A5178PT5 D,311A5449P005,311A5449P006,311A5782P002,311A5801P003,311A5802P001,311A5802P002,311A5802P008,311X0945WIBL100F,311X0945WIBL10-0F,311X0945WIBL246C,311X0945WIBL24-6C,311X0945WIBL246D,311X0945WIBL24-6D,311X0945WIBL246E,311X0945WIBL24-6E,311X0945WIBL246F,311X0945WIBL24-6F,312A6046P003,312A6077P001,312A6077P004,312A6089P001,312A6090P001,312A6090P002,312A6091P001,312A6091P002,312A6091P003,312A6091P004,313954-002 7913,313954-002? 7713,313954-0027926,313965-009,313A3129P0001,314A5945P002 REV G,314A5945P002REVG,314A5945P2
,315A2066P001,315A2618P010,315A2660P003,315A2739P011,315A4147P2,315A4147P8,315A4204P001,315A4459P0004,315A4459P2,315A4459P4,315A9332P001,315A9332P1,318A1093,318A9427P001,318A95422,318A9542-2,318A95423,318A9542-3,318A95425,318A9542-5