ITRON40規(guī)范的實(shí)時(shí)操作系統(tǒng)NORTive_第1頁(yè)
ITRON40規(guī)范的實(shí)時(shí)操作系統(tǒng)NORTive_第2頁(yè)
ITRON40規(guī)范的實(shí)時(shí)操作系統(tǒng)NORTive_第3頁(yè)
ITRON40規(guī)范的實(shí)時(shí)操作系統(tǒng)NORTive_第4頁(yè)
ITRON40規(guī)范的實(shí)時(shí)操作系統(tǒng)NORTive_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、ITRON4 0規(guī)范的實(shí)時(shí)操作系統(tǒng) NORTi ve基于u ITRON4.0規(guī)范的實(shí)時(shí)操作系統(tǒng)(NORTi version 4)-12011-03-21 22:45特長(zhǎng)高速應(yīng)答性NORTi是搶占式多任務(wù)操作系統(tǒng),當(dāng)事件發(fā)生時(shí)通過(guò)基于優(yōu)先度的調(diào)度程序,實(shí)時(shí)地切換任務(wù)。系統(tǒng)內(nèi)核由仔細(xì)斟酌過(guò)的代碼構(gòu)成,在系統(tǒng)調(diào)用內(nèi)部不必通過(guò)查詢(xún),1次即可選擇操作對(duì)象,而且中斷屏蔽時(shí)間被縮短到以前的一半,能最大限度地發(fā)揮CPU性能。此外,操作系統(tǒng)能夠?qū)雰?yōu)先度高于OS的中斷程序。此時(shí),中斷屏蔽時(shí)間無(wú)限趨近于零。小型最佳優(yōu)化了TCB(Task Control Clock任務(wù)管理模塊)等操作系統(tǒng)內(nèi)部管理模塊大小,不會(huì)浪費(fèi)

2、寶貴的RAM領(lǐng)域1個(gè)字節(jié)C語(yǔ)言編寫(xiě)的內(nèi)核NORTi的大部分源代碼是用容易理解的C語(yǔ)言編寫(xiě)的,有人認(rèn)為用C語(yǔ)言編寫(xiě)的操作系統(tǒng)性能不如匯編語(yǔ)言編寫(xiě)的操作系統(tǒng),其實(shí)并非如此。用C語(yǔ)言編寫(xiě)的操作系統(tǒng)通過(guò)編譯器分配寄存器,可以使用最少的寄存器完成存儲(chǔ)/復(fù)原等操作,相應(yīng)系統(tǒng)就可高速運(yùn)行。并且,因?yàn)閼?yīng)用過(guò)的源代碼可以兼容多種CPU,故新版CPU發(fā)布后,馬上就能保證可靠運(yùn)行。兼容u ITRON4.0與u ITRON3.0兩種規(guī)范日本TRON協(xié)會(huì)的u ITRON4.0規(guī)范并不兼容3.0規(guī)范。而在NORTi里不僅支持u ITRON4.0規(guī)范,也實(shí)裝了u ITRON3.0規(guī)范的接口。在以前版本中開(kāi)發(fā)的程序,不經(jīng)修改

3、即可與現(xiàn)系統(tǒng)共存直接使用。完整的u ITRON NORTi中完整的實(shí)裝了u ITRON4.0/3.0規(guī)范,并認(rèn)真地進(jìn)行了優(yōu)化組合、另外還提供了豐富的同步通信手段(不包括CPU異常處理程序定義)。支持多種處理器/編譯程序/調(diào)試工具由于NORTi支持大部分的1632位處理器,所以即使目標(biāo)機(jī)器不同中,也可以用相同的作法使用NORTi。此外為了支持更多的開(kāi)發(fā)環(huán)境,MiSPO公司正在與多家開(kāi)發(fā)工具制造商進(jìn)行合作,積極地尋求對(duì)策。任務(wù)的狀態(tài)在NORTi中可并行處理的程序單位稱(chēng)為任務(wù),任務(wù)始終處于NON-EXISTENT(未生成狀態(tài)),DORMANT(停止?fàn)顟B(tài)),READY(準(zhǔn)備狀態(tài)),RUNNING(執(zhí)行

4、狀態(tài)),WAITING(等待狀態(tài)),SUSPENDED(強(qiáng)制等待狀態(tài)),WAITING-SUSPENDED(雙重等待狀態(tài))等7個(gè)狀態(tài)的任1狀態(tài)。準(zhǔn)備狀態(tài)(READY)因?yàn)楦邇?yōu)先度處于執(zhí)行狀態(tài),或者相同優(yōu)先級(jí)的任務(wù)被提前執(zhí)行,而等待的狀態(tài)。執(zhí)行狀態(tài)(RUNNING)任務(wù)正在被處理器執(zhí)行的狀態(tài)。處于RUNNING狀態(tài)的任務(wù)同時(shí)只能存在1個(gè)。對(duì)于任務(wù)而言,READY狀態(tài)和RUNNING狀態(tài)沒(méi)有太大的差別,最優(yōu)先的READY任務(wù)也可以被稱(chēng)為RUNNING任務(wù)。等待狀態(tài)(WAITING)等待狀態(tài)是指通過(guò)自任務(wù)呼叫的系統(tǒng)調(diào)用而停止執(zhí)行的狀態(tài)。在事件驅(qū)動(dòng)的多任務(wù)系統(tǒng)中,被啟動(dòng)的任務(wù)大部分的時(shí)間都應(yīng)該處于等

5、待狀態(tài)中。否則,不能利用任務(wù)等待的時(shí)間執(zhí)行其他的任務(wù)。等待狀態(tài)根據(jù)其特點(diǎn)分為以下幾類(lèi)。起床等待(slp_tsk,tslp_tsk)時(shí)間等待(dly_tsk)事件標(biāo)識(shí)(event flag)成立等待(wai_flg,twai_flg)信號(hào)(semaphore)獲得等待(wai_sem,twai_sem)排他資源(mutex)獲得等待(loc_mtx,tloc_mtx)信箱(mail box)接收消息(message)等待(rcv_mbx,trcv_mbx)消息緩存(message buffer)發(fā)送消息等待(snd_mbf,tsnd_mbf)消息緩存(message buffer)接收消息等待(

6、rcv_mbf,trcv_mbf)數(shù)據(jù)隊(duì)列(data queue)發(fā)送消息等待(snd_dtp,tsnd_dtp)數(shù)據(jù)隊(duì)列(data queue)接收消息等待(rcv_dtp,trcv_dtp)會(huì)合(rendezvous)呼叫等待(cal_por,tcal_por)會(huì)合(rendezvous)應(yīng)答等待(acp_por,tacp_por)會(huì)合(rendezvous)結(jié)束等待(cal_por,tcal_por)可變長(zhǎng)內(nèi)存塊(memory block)獲得等待(get_mpl,tget_mpl)固定長(zhǎng)內(nèi)存塊(memory block)獲得等待(get_mpf,tget_mpf)強(qiáng)制等待狀態(tài)(SUSP

7、ENDED)任務(wù)被其他任務(wù)中止執(zhí)行后進(jìn)入的狀態(tài)。該狀態(tài)被利用的機(jī)會(huì)很少。設(shè)置的目的主要為了調(diào)試時(shí)暫時(shí)停止正在執(zhí)行的任務(wù)。雙重等待狀態(tài)(WAITING-SUSPENDED)是為了方便管理而分離出來(lái)的,其與強(qiáng)制等待狀態(tài)大致相同。只是當(dāng)任務(wù)被其他任務(wù)停止時(shí)不是處于準(zhǔn)備狀態(tài),而是處于等待狀態(tài)。當(dāng)?shù)却龡l件滿(mǎn)足時(shí),任務(wù)從等待狀態(tài)遷移到強(qiáng)制等待狀態(tài),而不是執(zhí)行狀態(tài)。停止?fàn)顟B(tài)(DORMANT)停止?fàn)顟B(tài)是指任務(wù)沒(méi)有被啟動(dòng)時(shí)的狀態(tài)或任務(wù)結(jié)束時(shí)的狀態(tài),執(zhí)行中的任務(wù)即可以被自己呼叫的系統(tǒng)調(diào)用中止,也可以被其他任務(wù)強(qiáng)制中止,遷移到停止?fàn)顟B(tài)。未生成狀態(tài)(NON-EXISTENT)是指任務(wù)未被生成的狀態(tài),或任務(wù)被刪除的狀態(tài)

8、。任務(wù)切換發(fā)生的時(shí)機(jī)NORTi由于是多任務(wù)操作系統(tǒng),當(dāng)前執(zhí)行的任務(wù)可以被切換到更高優(yōu)先度的任務(wù)。任務(wù)切換發(fā)生的時(shí)機(jī)有以下4類(lèi)(1)當(dāng)前被執(zhí)行任務(wù)啟動(dòng)了優(yōu)先度高于自身的任務(wù),或者解除了更高優(yōu)先度任務(wù)的等待。(2)非任務(wù)上下文程序(中斷處理程序/中斷服務(wù)程序/時(shí)間事件處理程序)啟動(dòng)優(yōu)先度高于當(dāng)前被執(zhí)行任務(wù)的任務(wù),或者解除了更高優(yōu)先度任務(wù)的等待。(3)等待狀態(tài)中優(yōu)先度高于當(dāng)前被執(zhí)行任務(wù)的任務(wù)因超時(shí)(timeout)而被解除了等待。(4)執(zhí)行中的任務(wù)自己進(jìn)入等待狀態(tài),如降低優(yōu)先度時(shí),才能發(fā)生任務(wù)切換。對(duì)于優(yōu)先度相同或較低時(shí),可以通過(guò)rot_rdq和chg_pri等系統(tǒng)調(diào)用將執(zhí)行中的任務(wù)回轉(zhuǎn)到等待執(zhí)行隊(duì)

9、列的末尾,來(lái)實(shí)現(xiàn)相同優(yōu)先級(jí)的任務(wù)間的互相切換。用語(yǔ)目標(biāo)對(duì)象(object)和ID系統(tǒng)調(diào)用的操作對(duì)象系統(tǒng)稱(chēng)為目標(biāo)對(duì)象,為了識(shí)別目標(biāo)對(duì)象,通過(guò)用戶(hù)指定的號(hào)碼被稱(chēng)為ID。在內(nèi)核及軟件模塊的內(nèi)部,用戶(hù)不能直接指定的ID稱(chēng)為目標(biāo)對(duì)象ID。具有ID的目標(biāo)對(duì)象包括:任務(wù)、信號(hào)、事件標(biāo)識(shí)、信箱、消息緩存、會(huì)合用端口、可變長(zhǎng)/固定長(zhǎng)內(nèi)存池、數(shù)據(jù)隊(duì)列、排他資源、周期處理程序、報(bào)警處理程序、中斷服務(wù)程序等。通過(guò)目標(biāo)對(duì)象ID區(qū)分的目標(biāo)對(duì)象包括:中斷處理程序、會(huì)合、靜態(tài)生成的中斷服務(wù)程序任務(wù)上下文(context)直譯為上下文,指系統(tǒng)內(nèi)部某一時(shí)刻任務(wù)的全體執(zhí)行環(huán)境,稱(chēng)為該任務(wù)的上下文。他是指任務(wù)被切換時(shí),系統(tǒng)中被保存/

10、復(fù)原對(duì)象的總稱(chēng)。也可以具體解釋為CPU的寄存器狀態(tài)。當(dāng)在多任務(wù)中使用DSP(Digital signal processing數(shù)字信號(hào)處理)、浮點(diǎn)小數(shù)運(yùn)算單元時(shí),其寄存器類(lèi)也必須進(jìn)行上下文更換。若NORTi對(duì)其不支持時(shí),用戶(hù)有必要對(duì)浮點(diǎn)運(yùn)算等進(jìn)行排他處理。非任務(wù)上下文程序中斷處理程序與時(shí)間事件處理程序合稱(chēng)為非任務(wù)上下文程序。時(shí)間事件處理程序包括周期啟動(dòng)處理程序、報(bào)警處理程序、溢出處理程序3種。(在u ITRON3.0規(guī)范中,非任務(wù)上下文程序被稱(chēng)為任務(wù)獨(dú)立部分、時(shí)間事件處理程序被稱(chēng)為時(shí)間處理程序)。由于非任務(wù)上下文程序的各個(gè)處理程序并不是任務(wù),因此不能把自任務(wù)作為目標(biāo)對(duì)象呼叫系統(tǒng)調(diào)用。調(diào)度(di

11、spatch)選擇執(zhí)行的任務(wù)并進(jìn)行任務(wù)切換的過(guò)程被稱(chēng)為調(diào)度。系統(tǒng)調(diào)用包括發(fā)生調(diào)度和不發(fā)生調(diào)度兩種。即使在發(fā)生調(diào)度的系統(tǒng)調(diào)用中,如果剛進(jìn)入READY狀態(tài)的任務(wù)優(yōu)先度低于RUNNING狀態(tài)的優(yōu)先度,也不發(fā)生任務(wù)切換。另外,通過(guò)非任務(wù)上下文程序呼叫的系統(tǒng)調(diào)用發(fā)生調(diào)度時(shí),當(dāng)系統(tǒng)向任務(wù)的上下文還原時(shí)再統(tǒng)一執(zhí)行,這被稱(chēng)為延遲調(diào)度。同步/通信功能同步功能在任務(wù)等候協(xié)作時(shí)使用,通信功能在任務(wù)間傳遞數(shù)據(jù)。由于通信一般都要求同步,因此將同步、通信功能放在一起表述。即使不使用同步通信功能,如果慎重設(shè)計(jì)程序,通過(guò)使用公用變量,任務(wù)間的協(xié)作及數(shù)據(jù)的傳遞也是可能的,但使用OS提供的同步/通信功能更加簡(jiǎn)單、安全。在NORT

12、i中定義了信號(hào)、事件標(biāo)識(shí)、信箱、消息緩存、會(huì)合用端口、數(shù)據(jù)隊(duì)列、排他資源等7種具有各自物征的同步通信功能。任務(wù)等待隊(duì)列對(duì)于1個(gè)目標(biāo)對(duì)象,當(dāng)有多個(gè)任務(wù)要求時(shí),可以將任務(wù)排成任務(wù)等待隊(duì)列。其包括信號(hào)獲得等待任務(wù)、事件標(biāo)識(shí)成立等待任務(wù)、信箱的消息接收等待任務(wù)、消息緩存的消息發(fā)送/接收等待任務(wù)、端口的會(huì)合呼叫/接收等待任務(wù),可變長(zhǎng)/固定長(zhǎng)內(nèi)存池的內(nèi)存塊獲得等待任務(wù),數(shù)據(jù)隊(duì)列送信/受信等待任務(wù),排他資源獲得等待任務(wù)等。任務(wù)等待隊(duì)列原則上為先進(jìn)先出(FIFO:First In First Out),信號(hào)、信箱、消息緩存受信側(cè)、可變長(zhǎng)/固定長(zhǎng)內(nèi)存池、排他資源等也可以按任務(wù)的優(yōu)先度或消息的優(yōu)先度進(jìn)行排列。消息

13、等待行列(queuing)當(dāng)對(duì)其他任務(wù)的要求不被受理時(shí)不發(fā)生錯(cuò)誤,而將要求排成的隊(duì)列稱(chēng)為消息等待隊(duì)列。任務(wù)的啟動(dòng)要求、信箱/消息緩存/數(shù)據(jù)隊(duì)列的消息都可以被排成等待隊(duì)列。啟動(dòng)任務(wù)要求的等待行列通過(guò)記錄啟動(dòng)要求次數(shù)的計(jì)數(shù)器實(shí)現(xiàn)。信箱消息的等待行列通過(guò)指針連接的線型鏈實(shí)現(xiàn)。消息緩存/數(shù)據(jù)隊(duì)列消息的等待行列通過(guò)環(huán)形緩存實(shí)現(xiàn)。事件標(biāo)識(shí)和任務(wù)異常沒(méi)有消息等待行列,他們通過(guò)OR運(yùn)算結(jié)果來(lái)決定發(fā)生的事件及保留異常發(fā)生的原因。這種只記錄事件的有無(wú)、而不記錄次數(shù)的特征和消息等待隊(duì)列是不同的。無(wú)等待(polling)和超時(shí)(timeout)對(duì)于發(fā)生等待的系統(tǒng)調(diào)用,準(zhǔn)備了無(wú)等待和超時(shí)中斷兩種機(jī)能。若無(wú)等待的系統(tǒng)調(diào)用

14、必須發(fā)生等待的話(huà)將產(chǎn)生錯(cuò)誤。參數(shù)(parameter)與返回值(return parameter)在u ITRON4.0規(guī)范中,從用戶(hù)方傳遞過(guò)來(lái)的數(shù)據(jù)被稱(chēng)為參數(shù),從系統(tǒng)調(diào)用側(cè)返回的數(shù)據(jù)稱(chēng)為返回值。在本書(shū)中用C來(lái)表達(dá)一般的參數(shù)。系統(tǒng)調(diào)用的返回值原則上是錯(cuò)誤代碼(error code),當(dāng)返回其他值時(shí),需將保存該值的地址指針作為參數(shù)傳遞。系統(tǒng)調(diào)用(system call)和服務(wù)程序(service call)通過(guò)應(yīng)用程序調(diào)用系統(tǒng)內(nèi)核及軟件模塊的接口(API)稱(chēng)為服務(wù)程序。內(nèi)核中的服務(wù)程序,特稱(chēng)為系統(tǒng)調(diào)用。排他控制在多任務(wù)中,不能被同時(shí)訪問(wèn)的對(duì)象可以被復(fù)數(shù)的任務(wù)訪問(wèn)。系統(tǒng)中有許多排他(nore-en

15、trant)函數(shù)、公用數(shù)據(jù)等不能被同時(shí)利用的對(duì)象。為防止這些資源被同時(shí)訪問(wèn)而實(shí)行的管理稱(chēng)為排他控制。通常使用信號(hào)(semaphore)或排他資源(mutex)如果通過(guò)統(tǒng)一任務(wù)的優(yōu)先度,在訪問(wèn)資源時(shí),不必發(fā)生競(jìng)爭(zhēng)任務(wù)的切換。那么就可以不進(jìn)行排他控制(統(tǒng)一優(yōu)先度是不進(jìn)行排他控制的有效手段)。實(shí)際上,使用semaphore時(shí),因?yàn)榻?jīng)常發(fā)生高優(yōu)先度的任務(wù)等待低優(yōu)先度任務(wù)返回semaphore的這種優(yōu)先度逆轉(zhuǎn)的復(fù)雜問(wèn)題,所以有時(shí)暫時(shí)提高競(jìng)爭(zhēng)區(qū)間的優(yōu)先度效果很好。在使用mutex時(shí),有時(shí)也可以通過(guò)提高任務(wù)優(yōu)先度來(lái)解決問(wèn)題,但是當(dāng)進(jìn)行排他控制的時(shí)間很短的話(huà),通過(guò)暫時(shí)禁止調(diào)度或禁止中斷,可以簡(jiǎn)單地實(shí)現(xiàn)排他控制

16、。閑置任務(wù)(idle task)閑置任務(wù)在其他所有任務(wù)停止時(shí)被執(zhí)行,在內(nèi)核中也有閑置任務(wù)。在用戶(hù)程序中,無(wú)限循環(huán)的最低優(yōu)先度的任務(wù)即為閑置任務(wù)。閑置任務(wù)雖然什么也不執(zhí)行,但卻有重要意義。在事件驅(qū)動(dòng)方式的多任務(wù)系統(tǒng)中,若閑置任務(wù)始終不被執(zhí)行,表示CPU的性能不足或者徒勞耗費(fèi)CPU資源的任務(wù)存在。靜態(tài)錯(cuò)誤和動(dòng)態(tài)錯(cuò)誤從系統(tǒng)調(diào)用中返回的錯(cuò)誤分為靜態(tài)錯(cuò)誤和動(dòng)態(tài)錯(cuò)誤兩種。靜態(tài)錯(cuò)誤是由于使用了范圍外ID號(hào)碼等異常參數(shù),與系統(tǒng)狀態(tài)無(wú)關(guān)而必然發(fā)生的錯(cuò)誤。當(dāng)程序調(diào)試完成后將自動(dòng)消息失。動(dòng)態(tài)錯(cuò)誤是指還沒(méi)有進(jìn)入等待隊(duì)列的任務(wù)被解除等待那樣,與系統(tǒng)的狀態(tài)或定時(shí)器(timing)等有關(guān)的錯(cuò)誤。象polling失敗那樣,用

17、戶(hù)也可以編制積極利用動(dòng)態(tài)錯(cuò)誤的程序。在NORTi中,為了實(shí)現(xiàn)高速化,也內(nèi)置了不檢查靜態(tài)參數(shù)錯(cuò)誤的程序連接庫(kù)。上下文錯(cuò)誤(context error)有些系統(tǒng)調(diào)用是不能由非任務(wù)上下文程序(中斷處理程序和時(shí)間事件處理程序)進(jìn)行調(diào)用的。否則,將從系統(tǒng)調(diào)用返回上下文錯(cuò)誤。因?yàn)檫@是靜態(tài)的錯(cuò)誤,所以在不檢查靜態(tài)參數(shù)的程序庫(kù)中,不能查出這個(gè)錯(cuò)誤。靜態(tài)API與動(dòng)態(tài)API在u ITRON4.0規(guī)范中,以大寫(xiě)字母記述的生成系的系統(tǒng)調(diào)用稱(chēng)為靜態(tài)API,但OS對(duì)其并不直接支持。靜態(tài)API結(jié)構(gòu)在編譯時(shí),由TCB等管理模塊確保其在系統(tǒng)啟動(dòng)時(shí)進(jìn)行初始化。即在編譯前,需要生成對(duì)應(yīng)靜態(tài)API的代碼,因此在u ITRON4.0規(guī)

18、范中導(dǎo)入了配置程序。NORTi的基礎(chǔ)是生成動(dòng)態(tài)對(duì)象,因此NORTi的配置程序,在初始化時(shí)通過(guò)將配置文件中的靜態(tài)API替換為通常的動(dòng)態(tài)API的代碼來(lái)實(shí)現(xiàn)靜態(tài)API。通用原則系統(tǒng)調(diào)用的名稱(chēng)ITRON的系統(tǒng)調(diào)用基本上是xxx_yyy類(lèi)型,xxx是操作方法的省略名,yyy是操作對(duì)象的省略名。從xxx_yyy派生的系統(tǒng)調(diào)用,在前面增加1個(gè)字母,變?yōu)閦xxx_yyy類(lèi)型,如在polling的系統(tǒng)調(diào)用前面加p,有timeout的系統(tǒng)調(diào)用前面加t,獨(dú)自的系統(tǒng)調(diào)用前面加v數(shù)據(jù)類(lèi)型的名稱(chēng)ITRON的數(shù)據(jù)類(lèi)型全部使用大寫(xiě)字母,指針類(lèi)型的名稱(chēng)為P_,結(jié)構(gòu)體類(lèi)型的名稱(chēng)原則上為T(mén)_。參數(shù)的名稱(chēng)在系統(tǒng)調(diào)用的定義中,參數(shù)名稱(chēng)

19、原則如下p_數(shù)據(jù)地址指針pk_結(jié)構(gòu)體地址指針ppk_結(jié)構(gòu)體地址指針的指針id IDno編號(hào)atr屬性cd代碼sz大小(字節(jié)數(shù))cnt個(gè)數(shù)ptn位組合模式(bit pattern)i初始值0和負(fù)數(shù)的處理在系統(tǒng)調(diào)用的輸入輸出中,多數(shù)情況下0具有特殊的含義,以任務(wù)ID為例,用0指定自任務(wù)。所謂自任務(wù)是指呼叫的系統(tǒng)調(diào)用的操作對(duì)象為自身的任務(wù),由于0具有特殊意義,因此ID號(hào)碼和優(yōu)先度都是從1開(kāi)始的,在ITRON規(guī)范中負(fù)值與系統(tǒng)有關(guān),如系統(tǒng)調(diào)用的錯(cuò)誤代碼為負(fù)。在u ITRON3.0規(guī)范前,負(fù)的ID號(hào)碼(-1)(-4)作為系統(tǒng)用被保留,但在u ITRON4.0規(guī)范中已經(jīng)被取消,在NORTi中也不使用。數(shù)據(jù)類(lèi)

20、型(32位CPU)在IRON中,下列再定義類(lèi)型由系統(tǒng)調(diào)用使用。INT,UINT為32位。通用的數(shù)據(jù)類(lèi)型typedef signed char B;帶符號(hào)的8位整數(shù)typedef unsigned char UB;無(wú)符號(hào)的8位整數(shù)typedef short H;帶符號(hào)的16位整數(shù)typedef unsigned short UH;無(wú)符號(hào)的16位整數(shù)typedef long W;帶符號(hào)的32位整數(shù)typedef unsigned long UW;無(wú)符號(hào)的32位整數(shù)typedef char VB類(lèi)型不定的數(shù)據(jù)(8位大小)typedef short VH類(lèi)型不定的數(shù)據(jù)(16位大小)typedef lo

21、ng VW;類(lèi)型不定的數(shù)據(jù)(32位大小)typedef void*VP指向類(lèi)型不定數(shù)據(jù)的指針typedef void(*FP)();一般為程序的先頭地址IRON特有數(shù)據(jù)類(lèi)型typedef int INT帶符號(hào)的整數(shù)typedef unsigned int UINT無(wú)符號(hào)的整數(shù)typedef int BOOL布爾值(FALSE(0)或TRUE(1)typedef INT FN;函數(shù)代碼typedef int ID;目標(biāo)對(duì)象的ID代碼typedef int RDVNO;會(huì)合(rendezvous)號(hào)碼typedef unsigned int ATR;目標(biāo)對(duì)象屬性typedef int ER;錯(cuò)誤代碼typedef int PRI;任務(wù)優(yōu)先度typedef long TMO;超時(shí)(timeout)typedef int ER_ID;錯(cuò)誤代碼或目標(biāo)對(duì)象ID號(hào)碼typedef long DLYTIME;延遲時(shí)間typedef unsigned int STAT;目標(biāo)對(duì)象的狀態(tài)typedef unsigned int MODE;服務(wù)程序的動(dòng)作模式typedef unsign

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論