新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 嵌入式RTOS的可裁剪性及其實(shí)現(xiàn)

嵌入式RTOS的可裁剪性及其實(shí)現(xiàn)

作者: 時(shí)間:2012-09-08 來源:網(wǎng)絡(luò) 收藏

由于宿主對(duì)象的多樣性,為適應(yīng)不同的要求,無論在硬件方面還是在軟件方面,必須具有很強(qiáng)的,并且便于修改。

所謂操作系統(tǒng)的,就是一個(gè)規(guī)模大且功能齊全的操作系統(tǒng),在結(jié)構(gòu)上保證了用戶可在其中有選擇地保留某些模塊,而刪減掉一些模塊的性能。目標(biāo)系統(tǒng)設(shè)計(jì)者的這個(gè)做法,也常常叫做對(duì)操作系統(tǒng)進(jìn)行配置。因此,操作系統(tǒng)的也常被叫做操作系統(tǒng)的可配置性。

所謂的配置方法有兩種:工種是在系統(tǒng)進(jìn)行編譯連接時(shí)進(jìn)行配置;另一種是在系統(tǒng)運(yùn)行時(shí)進(jìn)行配置。

在編譯連接時(shí)的配置方法一般都是通過條件編譯來實(shí)現(xiàn)的,即在操作系統(tǒng)中都有一個(gè)配置文件,在這個(gè)文件中系統(tǒng)的設(shè)計(jì)者可通過對(duì)一些配置常數(shù)的設(shè)置來選擇使用或不使用的模塊。于是,在對(duì)系統(tǒng)編譯連接時(shí),編譯系統(tǒng)就會(huì)按配置常數(shù)的設(shè)置值對(duì)與之對(duì)應(yīng)的模塊進(jìn)行編譯或不編譯。于是,那些不被編譯的模塊就自然地不包含在系統(tǒng)中而被刪掉了,這樣就可以大大減小系統(tǒng)所占用的內(nèi)存。所以,條件編譯是實(shí)現(xiàn)系統(tǒng)裁剪的有效手段。但這需要一個(gè)前提條件,即用戶要獲得待裁剪的操作系統(tǒng)的源代碼。

在運(yùn)行時(shí)對(duì)系統(tǒng)進(jìn)行配置,是依靠系統(tǒng)在初始化運(yùn)行階段執(zhí)行一些條件轉(zhuǎn)移語句來實(shí)現(xiàn)的。只不過這些條件語句是根據(jù)事先由目標(biāo)系統(tǒng)開發(fā)人員編寫的配置文件中的一些參數(shù)來跳轉(zhuǎn)的。所以,也實(shí)現(xiàn)了系統(tǒng)功能上的裁剪,但不是物理上的裁剪。也就是說,被裁剪的模塊的代碼仍然還存在,只不過未被執(zhí)行。所以,這種方法不能減少系統(tǒng)所占用的內(nèi)存,只是使運(yùn)行速度有某種程度的提高。但這種裁剪方法的優(yōu)點(diǎn)是,目標(biāo)系統(tǒng)開發(fā)人員可以沒有源代碼,并且操作起來很方便,因此是商品軟件經(jīng)常采用的方法。

當(dāng)然,由于目標(biāo)系統(tǒng)的多樣性,尤其是在對(duì)產(chǎn)品個(gè)性化要求極高的今天,致使在設(shè)計(jì)中經(jīng)常出現(xiàn)單純依靠裁剪已經(jīng)不可能獲得一個(gè)滿意的操作系統(tǒng)的情況。那么在這個(gè)時(shí)候,唯一的解決辦法是修改或者添加功能模塊。根據(jù)前面的內(nèi)容,顯然在一個(gè)具有的操作系統(tǒng)上修改或添加是最方便的。這也是嵌人式操作系統(tǒng)大多都采用結(jié)構(gòu)的一個(gè)重要原因。

本文引用地址:http://2s4d.com/article/257268.htm


評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉