目前國內外比較成熟的無線傳感器網絡操作系統有:螺旋焊接鋼管加州大學伯克利分校的,加州大學洛杉磯分校的,瑞士蘇黎世聯邦理工大學的,康奈爾大學的,科羅拉多大學的,漢城大學的,歐洲項目組研發的和瑞士計算機科學院開發的,中科院計算所開發的等。系統使用流行,已經有很多研究機構和公司進行了成功的移植和商業開發。下面以為例,介紹其總體框架和調度機制??傮w框架是一種基于組件的編程架構,支持模塊化結構和事件驅動的程序設計。應用程序由一個或多個組件構成。組件包括兩類:模塊和配置,組件間通過配置文件實現連接,形成可執行程序。組件提供或使用接口,這些接口是雙向的并且是訪問組件的途徑。每個接口都定義了一組函數,包括命令和事件兩類。
命令由接口的提供者實現:事件則由接口的使用者實現。螺旋焊接鋼管組件由下到上可以分為硬件抽象組件綜合抽象組件高層抽象組件。高層抽象組件向底層組件發出命令,底層組件向高層組件發送事件。除了操作系統提供的處理器初始化系統調度和運行時庫個組件是的以外,每個應用程序可以非常靈活地選擇和使用操作系統組件。的物理層硬件為框架的底層,傳感器收發器以及時鐘等硬件能觸發事件的發生,交由上層處理,相對下層的組件也能觸發事件交由上層處理,而上層會發出命令給下層處理。為了協調各個組件任務的有序處理,需要操作系統采取一定的調度機制。調度機制提供了任務和事件兩級調度。事件可以看作是不同組件之間傳遞狀態信息的信號,中程序的運行正是由一個個事件驅動。事件處理程序只根據本組件的當前狀態做少量的工作,主要工作則由其拋出的任務完成。任務可以看作是原子操作,盡管它可以被事件處理程序暫時中斷,但執行到底。任務實際上是一種延時計算機制,一般用于對事件要求不高的應用中。
任務之間是平等的,沒有等級之分。任務調度遵循模式,螺旋焊接鋼管即任務之間不搶占,而事件大部分情況下事件是中斷可搶占任務,事件與事件之間也能相互搶占。為了誠少中斷服務程序的運行時間,降低中斷響應延遲,中斷服務程序的設計應盡可能地精簡,以此來縮短中斷響應時間。把一些并不需要的中斷服務程序中立即執行的代碼以函數的形式封裝成任務,在中斷服務程序中將任務函數地址放入任務隊列,退出中斷服務程序后由內核調度執行。內核使用的是一一個循環隊列來維持任務列表。雖然被廣泛應用,但在一些具體應用場合可能會因為節點發送信息過于頻繁,或采集信息量過大,導致節點過載。為避免這種基于任務調度過載,在設計調度策略時,需采用修正策略加以處理,目前文獻中常用的有以下種處理方式:基于優先級的任務調度。