嵌入式环境给人的印象就是占用空间小。所以,普通的Linux或者Windows操作系统要变成嵌入式操作系统,首先就是要进行裁剪。然而,与桌面环境相比,嵌入式环境对于操作系统系统要求不仅仅是“小”,二者在设计要求上有着本质的不同。这些不同主要体现在可裁剪性、实时性和可靠性等三个方面。
随机应变——可裁剪性
从硬件环境来看,桌面操作系统具有标准化的、存储和I/O架构,而嵌入式环境中的RTOS的硬件环境只有标准化的,没有标准化的存储、I/O和显示器架构。
从应用环境来看,桌面操作系统面向复杂多变的应用,而RTOS面向单一设备的单一应用。
从开发界面来看,桌面操作系统试图给开发人员提供一个“黑箱”,让开发人员通过一系列标准的系统调用来使用操作系统中的功能,而嵌入式试图为开发人员提供一个“白箱”,让开发人员可以自主控制系统的所有资源。
桌面操作系统的研究开发指导思想是尽可能在不改变自身的前提下具有广泛的适应性。也就是说:不论应用环境怎么变化,好都不要对自身内部产生什么影响,也不要求自身做太多的变化。反过来,应用于嵌入式环境的RTOS,在研发的时候就必须立足于改变自身、开放自身,让开发人员可以根据硬件环境和应用环境的不同而对操作系统进行灵活的裁剪和配置,因为对于任何一个具体的嵌入式设备,它的功能是确定的,因此只要从原有操作系统中把这个特定应用所需的功能拿进来即可。
应当指出的是:如果一个操作系统平台只能依靠手工的方式去掉一些代码,这根本就不是可裁剪性。所谓可裁剪性是在软件工程阶段利用软件配置方法实现软件构件的“即插即用”。
可裁剪性带给用户的一个直接的好处是硬件成本降低,这对于成本敏感的应用,如消费电子类设备,具有重要的现实意义。由于设备中只包含应用程序用到的那部分操作系统功能,这就使得系统变得简单、易把握,从而提高系统的可靠性。
ASMBII004 ASMBII004 ASMBII004 140DDI36400C 140DDI36400C DDI36400C DDI36400C
MA0185100 MA0185100 MA0185100 140DDI67300 140DDI67300 DDI67300 DDI67300
MA0186100 MA0186100 MA0186100 140DDI67300C 140DDI67300C DDI67300C DDI67300C
MA0331000 MA0331000 MA0331000 140DDI84100 140DDI84100 DDI84100 DDI84100
MA0329001 MA0329001 MA0329001 140DDI84100C 140DDI84100C DDI84100C DDI84100C
490RIO00211 490RIO00211 490RIO00211 140DDI85300 140DDI85300 DDI85300 DDI85300
490RIO00400 490RIO00400 490RIO00400 140DDI85300C 140DDI85300C DDI85300C DDI85300C
490RIO0S411 490RIO0S411 490RIO0S411 140DDM39000 140DDM39000 DDM39000 DDM39000
490RIO00406 490RIO00406 490RIO00406 140DDM39000C 140DDM39000C DDM39000C DDM39000C
490RIO00411 490RIO00411 490RIO00411 140DDM69000 140DDM69000 DDM69000 DDM69000
490RIO0C411 490RIO0C411 490RIO0C411 140DDM69000C 140DDM69000C DDM69000C DDM69000C
140CRA21110 140CRA21110 140CRA21110 140DDO15310 140DDO15310 DDO15310 DDO15310
140CRA21110C 140CRA21110C 140CRA21110C 140DDO15310C 140DDO15310C DDO15310C DDO15310C
140CRA21120 140CRA21120 140CRA21120 140DDO35300 140DDO35300 DDO35300 DDO35300
140CRA21120C 140CRA21120C 140CRA21120C 140DDO35300C 140DDO35300C DDO35300C DDO35300C
140CRA21210 140CRA21210 140CRA21210 140DDO35301 140DDO35301 DDO35301 DDO35301
140CRA21210C 140CRA21210C 140CRA21210C 140DDO35301C 140DDO35301C DDO35301C DDO35301C
140CRA21220 140CRA21220 140CRA21220 140DDO35310 140DDO35310 DDO35310 DDO35310
140CRA21220C 140CRA21220C 140CRA21220C 140DDO35310C 140DDO35310C DDO35310C DDO35310C
140NOE77101 140NOE77101 140NOE77101 140DDO36400 140DDO36400 DDO36400 DDO36400
140NOE77101C 140NOE77101C 140NOE77101C 140DDO36400C 140DDO36400C DDO36400C DDO36400C
140NOE77111 140NOE77111 140NOE77111 140DDO84300 140DDO84300 DDO84300 DDO84300
140NOE77111C 140NOE77111C 140NOE77111C 140DDO84300C 140DDO84300C DDO84300C DDO84300C
140NOM21100 140NOM21100 140NOM21100 140DDO88500 140DDO88500 DDO88500 DDO88500
140NOM21100C 140NOM21100C 140NOM21100C 140DDO88500C 140DDO88500C DDO88500C DDO88500C
140NOM21200 140NOM21200 140NOM21200 140DII33000 140DII33000 DII33000 DII33000
140NOM21200C 140NOM21200C 140NOM21200C 140DII33000C 140DII33000C DII33000C DII33000C
140NOM25200 140NOM25200 140NOM25200 140DIO33000 140DIO33000 DIO33000 DIO33000
140NOM25200C 140NOM25200C 140NOM25200C 140DIO33000C 140DIO33000C DIO33000C DIO33000C
140NWM10000 140NWM10000 140NWM10000 140DRA84000 140DRA84000 DRA84000 DRA84000
140EIA92100 140EIA92100 140EIA92100 140DRA84000C 140DRA84000C DRA84000C DRA84000C
140EIA92100C 140EIA92100C 140EIA92100C 140DRC83000 140DRC83000 DRC83000 DRC83000
140NOA62200 140NOA62200 140NOA62200 140DRC83000C 140DRC83000C DRC83000C DRC83000C
140ESI06210 140ESI06210 140ESI06210 140DSI35300 140DSI35300 DSI35300 DSI35300
140ESI06210C 140ESI06210C 140ESI06210C 140DSI35300C 140DSI35300C DSI35300C DSI35300C
140NOC77100 140NOC77100 140NOC77100 140DVO85300 140DVO85300 DVO85300 DVO85300
490NAE91100 490NAE91100 490NAE91100 140DVO85300C 140DVO85300C DVO85300C DVO85300C
467NHP81100 467NHP81100 467NHP81100 140EDK21100 140EDK21100 EDK21100 EDK21100
490NAD91103 490NAD91103 490NAD91103 140EDK77100 140EDK77100 EDK77100 EDK77100
490NAD91104 490NAD91104 490NAD91104 140EHC10500 140EHC10500 EHC10500 EHC10500
490NAD91105 490NAD91105 490NAD91105 140EHC10500C 140EHC10500C EHC10500C EHC10500C
490NAC72100 490NAC72100 490NAC72100 140EHC20200 140EHC20200 EHC20200 EHC20200
490NRP25300 490NRP25300 490NRP25300 140EHC20200C 140EHC20200C EHC20200C EHC20200C
490NRP25400 490NRP25400 490NRP25400 140EIA92100 140EIA92100 EIA92100 EIA92100
490NAA21302 490NAA21302 490NAA21302 140EIA92100C 140EIA92100C EIA92100C EIA92100C