模塊
發(fā)布時(shí)間:2012/4/3 0:55:31 訪問次數(shù):672
在SOS中,模塊是可以實(shí)現(xiàn)萊些功能或者任務(wù)的 MST517A-M-LF二進(jìn)制可執(zhí)行文件,就相當(dāng)于TinyOS中的組件。模塊可能會(huì)同時(shí)負(fù)責(zé)很多部分的功能,包括底層驅(qū)動(dòng)、路由協(xié)議、應(yīng)用程序等。
SOS的內(nèi)核程序一般情況下是不需要變化的,除非底層硬件發(fā)生了改變或者源代碼的管理必須改變。在SOS中一個(gè)實(shí)際的應(yīng)用程序一般由一個(gè)模塊或者多個(gè)的相互交互的模塊組成,模塊之間,位置獨(dú)立,主要是通過消息機(jī)制或者函數(shù)接口來相互聯(lián)系。SOS的發(fā)展面臨的最大困難就是維護(hù)模塊性和模塊的安全性。
模塊結(jié)構(gòu)
SOS實(shí)現(xiàn)了一個(gè)定義完整并且優(yōu)化的帶有入口和出口的模塊,這一類模塊組成一個(gè)模塊結(jié)構(gòu),SOS通過這樣的一個(gè)結(jié)構(gòu)來維護(hù)模塊性。模塊之間用兩種入口機(jī)制來相互流通。第一種是通過內(nèi)核的調(diào)度表,另一種是通過被模塊注冊(cè)的對(duì)方使用的函數(shù)。
模塊的消息處理是通過模塊的一個(gè)特定的函數(shù)來處理的,這個(gè)消息處理函數(shù)有兩個(gè)參數(shù),一個(gè)是正被分發(fā)的消息本身,一個(gè)是模塊的狀態(tài)。這兩個(gè)參數(shù)都是一個(gè)結(jié)構(gòu)體。所有模塊的消息處理函數(shù)都必須依照SOS的內(nèi)核定義,實(shí)現(xiàn)兩個(gè)方法:init和final。init消息處理函數(shù)的作用是初始化模塊的初始狀態(tài),初始化定時(shí)器,初始化一些注冊(cè)函數(shù)以及一些訂閱的函數(shù)。fina消息處理函數(shù)的作用是程序遐出時(shí)釋放資源,包括內(nèi)存、定時(shí)器、被注冊(cè)過的函數(shù)指針。模塊的消息處理函數(shù)還需要處理一些特定的消息,如定時(shí)器的觸發(fā)、傳感器讀數(shù)據(jù)以及從別的模塊或者別的傳感器傳來的包含數(shù)據(jù)的消息。SOS中的消息是異的,這點(diǎn)類似TinyOS。SOS的內(nèi)核調(diào)度表會(huì)從優(yōu)先級(jí)隊(duì)列中,依次取出消息并將此消息發(fā)送給其對(duì)應(yīng)的目的模塊的消息處理函數(shù)。模塊內(nèi)部的直接函數(shù)是被用來做一些需要同步處理的操作。這些內(nèi)部函數(shù)需要注冊(cè)和訂閱才能使用,模塊的狀態(tài)信息保存在內(nèi)存的block塊中,模塊的地址是可再定位的,程序的狀態(tài)是由SOS內(nèi)核管理的,內(nèi)部函數(shù)的位置是通過一個(gè)注冊(cè)過程確定的,而消息處理函數(shù)則是處于可以執(zhí)行的二進(jìn)制的一段連續(xù)的塊中。
SOS的內(nèi)核程序一般情況下是不需要變化的,除非底層硬件發(fā)生了改變或者源代碼的管理必須改變。在SOS中一個(gè)實(shí)際的應(yīng)用程序一般由一個(gè)模塊或者多個(gè)的相互交互的模塊組成,模塊之間,位置獨(dú)立,主要是通過消息機(jī)制或者函數(shù)接口來相互聯(lián)系。SOS的發(fā)展面臨的最大困難就是維護(hù)模塊性和模塊的安全性。
模塊結(jié)構(gòu)
SOS實(shí)現(xiàn)了一個(gè)定義完整并且優(yōu)化的帶有入口和出口的模塊,這一類模塊組成一個(gè)模塊結(jié)構(gòu),SOS通過這樣的一個(gè)結(jié)構(gòu)來維護(hù)模塊性。模塊之間用兩種入口機(jī)制來相互流通。第一種是通過內(nèi)核的調(diào)度表,另一種是通過被模塊注冊(cè)的對(duì)方使用的函數(shù)。
模塊的消息處理是通過模塊的一個(gè)特定的函數(shù)來處理的,這個(gè)消息處理函數(shù)有兩個(gè)參數(shù),一個(gè)是正被分發(fā)的消息本身,一個(gè)是模塊的狀態(tài)。這兩個(gè)參數(shù)都是一個(gè)結(jié)構(gòu)體。所有模塊的消息處理函數(shù)都必須依照SOS的內(nèi)核定義,實(shí)現(xiàn)兩個(gè)方法:init和final。init消息處理函數(shù)的作用是初始化模塊的初始狀態(tài),初始化定時(shí)器,初始化一些注冊(cè)函數(shù)以及一些訂閱的函數(shù)。fina消息處理函數(shù)的作用是程序遐出時(shí)釋放資源,包括內(nèi)存、定時(shí)器、被注冊(cè)過的函數(shù)指針。模塊的消息處理函數(shù)還需要處理一些特定的消息,如定時(shí)器的觸發(fā)、傳感器讀數(shù)據(jù)以及從別的模塊或者別的傳感器傳來的包含數(shù)據(jù)的消息。SOS中的消息是異的,這點(diǎn)類似TinyOS。SOS的內(nèi)核調(diào)度表會(huì)從優(yōu)先級(jí)隊(duì)列中,依次取出消息并將此消息發(fā)送給其對(duì)應(yīng)的目的模塊的消息處理函數(shù)。模塊內(nèi)部的直接函數(shù)是被用來做一些需要同步處理的操作。這些內(nèi)部函數(shù)需要注冊(cè)和訂閱才能使用,模塊的狀態(tài)信息保存在內(nèi)存的block塊中,模塊的地址是可再定位的,程序的狀態(tài)是由SOS內(nèi)核管理的,內(nèi)部函數(shù)的位置是通過一個(gè)注冊(cè)過程確定的,而消息處理函數(shù)則是處于可以執(zhí)行的二進(jìn)制的一段連續(xù)的塊中。
在SOS中,模塊是可以實(shí)現(xiàn)萊些功能或者任務(wù)的 MST517A-M-LF二進(jìn)制可執(zhí)行文件,就相當(dāng)于TinyOS中的組件。模塊可能會(huì)同時(shí)負(fù)責(zé)很多部分的功能,包括底層驅(qū)動(dòng)、路由協(xié)議、應(yīng)用程序等。
SOS的內(nèi)核程序一般情況下是不需要變化的,除非底層硬件發(fā)生了改變或者源代碼的管理必須改變。在SOS中一個(gè)實(shí)際的應(yīng)用程序一般由一個(gè)模塊或者多個(gè)的相互交互的模塊組成,模塊之間,位置獨(dú)立,主要是通過消息機(jī)制或者函數(shù)接口來相互聯(lián)系。SOS的發(fā)展面臨的最大困難就是維護(hù)模塊性和模塊的安全性。
模塊結(jié)構(gòu)
SOS實(shí)現(xiàn)了一個(gè)定義完整并且優(yōu)化的帶有入口和出口的模塊,這一類模塊組成一個(gè)模塊結(jié)構(gòu),SOS通過這樣的一個(gè)結(jié)構(gòu)來維護(hù)模塊性。模塊之間用兩種入口機(jī)制來相互流通。第一種是通過內(nèi)核的調(diào)度表,另一種是通過被模塊注冊(cè)的對(duì)方使用的函數(shù)。
模塊的消息處理是通過模塊的一個(gè)特定的函數(shù)來處理的,這個(gè)消息處理函數(shù)有兩個(gè)參數(shù),一個(gè)是正被分發(fā)的消息本身,一個(gè)是模塊的狀態(tài)。這兩個(gè)參數(shù)都是一個(gè)結(jié)構(gòu)體。所有模塊的消息處理函數(shù)都必須依照SOS的內(nèi)核定義,實(shí)現(xiàn)兩個(gè)方法:init和final。init消息處理函數(shù)的作用是初始化模塊的初始狀態(tài),初始化定時(shí)器,初始化一些注冊(cè)函數(shù)以及一些訂閱的函數(shù)。fina消息處理函數(shù)的作用是程序遐出時(shí)釋放資源,包括內(nèi)存、定時(shí)器、被注冊(cè)過的函數(shù)指針。模塊的消息處理函數(shù)還需要處理一些特定的消息,如定時(shí)器的觸發(fā)、傳感器讀數(shù)據(jù)以及從別的模塊或者別的傳感器傳來的包含數(shù)據(jù)的消息。SOS中的消息是異的,這點(diǎn)類似TinyOS。SOS的內(nèi)核調(diào)度表會(huì)從優(yōu)先級(jí)隊(duì)列中,依次取出消息并將此消息發(fā)送給其對(duì)應(yīng)的目的模塊的消息處理函數(shù)。模塊內(nèi)部的直接函數(shù)是被用來做一些需要同步處理的操作。這些內(nèi)部函數(shù)需要注冊(cè)和訂閱才能使用,模塊的狀態(tài)信息保存在內(nèi)存的block塊中,模塊的地址是可再定位的,程序的狀態(tài)是由SOS內(nèi)核管理的,內(nèi)部函數(shù)的位置是通過一個(gè)注冊(cè)過程確定的,而消息處理函數(shù)則是處于可以執(zhí)行的二進(jìn)制的一段連續(xù)的塊中。
SOS的內(nèi)核程序一般情況下是不需要變化的,除非底層硬件發(fā)生了改變或者源代碼的管理必須改變。在SOS中一個(gè)實(shí)際的應(yīng)用程序一般由一個(gè)模塊或者多個(gè)的相互交互的模塊組成,模塊之間,位置獨(dú)立,主要是通過消息機(jī)制或者函數(shù)接口來相互聯(lián)系。SOS的發(fā)展面臨的最大困難就是維護(hù)模塊性和模塊的安全性。
模塊結(jié)構(gòu)
SOS實(shí)現(xiàn)了一個(gè)定義完整并且優(yōu)化的帶有入口和出口的模塊,這一類模塊組成一個(gè)模塊結(jié)構(gòu),SOS通過這樣的一個(gè)結(jié)構(gòu)來維護(hù)模塊性。模塊之間用兩種入口機(jī)制來相互流通。第一種是通過內(nèi)核的調(diào)度表,另一種是通過被模塊注冊(cè)的對(duì)方使用的函數(shù)。
模塊的消息處理是通過模塊的一個(gè)特定的函數(shù)來處理的,這個(gè)消息處理函數(shù)有兩個(gè)參數(shù),一個(gè)是正被分發(fā)的消息本身,一個(gè)是模塊的狀態(tài)。這兩個(gè)參數(shù)都是一個(gè)結(jié)構(gòu)體。所有模塊的消息處理函數(shù)都必須依照SOS的內(nèi)核定義,實(shí)現(xiàn)兩個(gè)方法:init和final。init消息處理函數(shù)的作用是初始化模塊的初始狀態(tài),初始化定時(shí)器,初始化一些注冊(cè)函數(shù)以及一些訂閱的函數(shù)。fina消息處理函數(shù)的作用是程序遐出時(shí)釋放資源,包括內(nèi)存、定時(shí)器、被注冊(cè)過的函數(shù)指針。模塊的消息處理函數(shù)還需要處理一些特定的消息,如定時(shí)器的觸發(fā)、傳感器讀數(shù)據(jù)以及從別的模塊或者別的傳感器傳來的包含數(shù)據(jù)的消息。SOS中的消息是異的,這點(diǎn)類似TinyOS。SOS的內(nèi)核調(diào)度表會(huì)從優(yōu)先級(jí)隊(duì)列中,依次取出消息并將此消息發(fā)送給其對(duì)應(yīng)的目的模塊的消息處理函數(shù)。模塊內(nèi)部的直接函數(shù)是被用來做一些需要同步處理的操作。這些內(nèi)部函數(shù)需要注冊(cè)和訂閱才能使用,模塊的狀態(tài)信息保存在內(nèi)存的block塊中,模塊的地址是可再定位的,程序的狀態(tài)是由SOS內(nèi)核管理的,內(nèi)部函數(shù)的位置是通過一個(gè)注冊(cè)過程確定的,而消息處理函數(shù)則是處于可以執(zhí)行的二進(jìn)制的一段連續(xù)的塊中。
上一篇:系統(tǒng)架構(gòu)
上一篇:模塊交互
熱門點(diǎn)擊
- 最壞與最佳情況覆蓋
- 直流固態(tài)繼電器
- 無線傳感器的分層
- 圓周覆蓋
- 電子元器件在國(guó)民經(jīng)濟(jì)中的重要地位
- eshIDE for TinyOS平臺(tái)運(yùn)行
- WT22、WI24和WXWX型方形多圈微調(diào)線
- 矩形多圈微調(diào)玻璃釉電位器
- WH121-1、WH121-1A、WH121
- 電容器規(guī)格的標(biāo)志方法
推薦技術(shù)資料
- PCB布線要點(diǎn)
- 整機(jī)電路圖見圖4。將電路畫好、檢查無誤之后就開始進(jìn)行電... [詳細(xì)]
- CV/CC InnoSwitch3-AQ 開
- URF1DxxM-60WR3系
- 1-6W URA24xxN-x
- 閉環(huán)磁通門信號(hào)調(diào)節(jié)芯片NSDRV401
- SK-RiSC-SOM-H27X-V1.1應(yīng)
- RISC技術(shù)8位微控制器參數(shù)設(shè)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究