Please use this identifier to cite or link to this item:
標題: 設計與實作一個適合於無線感測器網路的嵌入式作業系統
Design and Implementation of an Embedded Operating System for Wireless Sensor Networks
作者: 李佳翰
Li, Jia-Han
關鍵字: Embedded Operating System
Wireless sensor networks
出版社: 資訊科學系所
引用: [1] ATMEL AVR Atmega128L “8-bit Microcontroller with 128K Bytes In-System Programmable Flash”, 2006 [2] Adya, J. Howell, M. Theimer, W. J. Bolosky, and J. R. Douceur. “Cooperative Task Management Without Manual Stack Management”. In Proc. USENIX, 2002. [3] Berkeley mica motes. Web page. Visited 2004-06-22. [4] S. Bhatti, J. Carlson, H. Dai, J. Deng, J. Rose, A. Sheth, B. Shucker, C. Gruenwald, A. Torgerson, R. Han, "MANTIS OS: An Embedded Multithreaded Operating System for Wireless Micro Sensor Platforms, " ACM/Kluwer Mobile Networks & Applications (MONET),, Special Issue on Wireless Sensor Networks, vol. 10, no. 4, August ,2005 [5] BTnodes - A Distributed Environment for Prototyping Ad Hoc Networks , [6] M. Britton, L. Shum, L. Sacks and H. Haddadi, “A Biologically-Inspired Approach to Designing Wireless Sensor Networks , the European conference on Wireless Sensor Networks (EWSN), 2005 [7] Chih Cheh Han, Ram Kumar, Roy Shea, Eddie Kohler, Mani Srivastava, "SOS: A dynamic operating system for sensor networks", Proceedings of the Third International Conference on Mobile Systems, Applications, And Services (Mobisys 2005), Seattle, June 2005 [8] Adam Dunkels, Bjorn Gronvall, Thiemo Voigt.” Contiki - a Lightweight and Flexible Operating System for Tiny Networked Sensors,” IEEE Workshop on Embedded Networked Sensors , November 2004 [9] Emstar: a Software Environment for Developing and Deploying Wireless Sensor Networks,” Proceedings of USENIX, 2004 [10] Jason Hill, “A Software Architecture Supporting Networked Sensors,”, Master thesis, Department of Electrical Engineering and Computer Sciences, University of California at Berkeley. [11] Hamed Haddadi ,MSc Project Thesis “kOS:kind of operating system” ,August 2004 [12] F.Martin, B.Mikhak. and B.silverman, “MetaCricket: A designer's kit for making computational devices”,IBM Systems Journal ,2000 [13] Job Mulder, Stefan Dulman, Lodewijk van Hoesel, and Paul Havinga. “PEEROS - System Software for Wireless SensorNetworks”, 2003 [14] NEST Project [15] N.B Priyantha,A.Chakraborty, and H.Balakrishnan, ”The Cricket Location-support System ”,Proc.of the sixth Annual ACM International Conference on Mobil Computing and Networking (MoBICOM),August 2000 [16] PALOS : Power Aware Light-weight Operating System ,2002 [17] Philip Levis, et. al. “The Emergence of Networking Abstractions and Techniques in TinyOS,” Proceedings of the USENIX/ACM Symposium on Networked Systems Design and Implementation (NSDI), 2004 [18] Philip Levis, et. al. “System Architecture Directions for Network Sensors,” ASPLOS, 2000 [19] The ZebraNet Wildlife Tracker, [20] The Eyes Project [21] Ting Liu and Margaret Martonosi, “Impala: A Middleware System for Managing Autonomic, Parallel Sensor Systems,” ACM PPoPP, 2003. [22] Ting Liu et al., “Implementing Software on Resource-Constrained Mobile Sensors: Experiences with Impala and ZebraNet,” ACM MobiSys, 2004. [23] John Yannakopoulos1 and Angelos Bilas, “CORMOS: A Communication- Oriented Runtime System for Sensor Networks”, the European conference on Wireless Sensor Networks (EWSN), 2005
摘要: 以往傳統的嵌入式作業系統並不適合用於無線感測器網路,因為程式碼過於龐大,或是資源消耗過多。所以最近幾年有很多學者專家在研究設計無線感測器上的嵌入式作業系統,且研究成果都相當豐碩。然而其中有些系統並沒有具備處理即時性工作的能力,或於執行需長時間運算的工作時效率降低,以及消耗過多記憶體空間的情形發生。 所以本論文設計與實作一個適用於無線感測器網路的嵌入式作業系統。我們根據過往研究的缺點,以及無線感測器網路的特點,設計一個具搶奪軟性即時嵌入式作業系統。kernel採用允許搶奪的三層次優先權佇列排程方式,工作具備有三種型態,優先權由高至低分別為:高優先權工作/deferred ISRs、一般性工作與最低優先權工作。不同優先權的工作可以互相搶奪,這樣的排程方式能讓即時性工作優先執行,同一優先權工作執行方式為FIFO,且優先權一樣的工作只需共用一塊堆疊,能夠節省記憶體的使用。Task synchronization採用semaphore,記憶管理採用固定分割動態分配的方式,工作之間的溝通透過semaphore與shared memory。並且實做HAL與提供基本的週邊設備驅動程式,能方便讓系統移植到其他硬體平台。我們將系統移植在Mica2上,初步的記憶體的需求實驗結果為kernel程式碼大小約佔6K Bytes,SRAM使用為600 bytes。
The past traditional embedded operating systems are not well suited to the wireless sensor nodes because their source codes are too large to fit into the resource constrained sensor nodes. As a result, many new embedded operating systems for wireless sensor nodes are proposed in the last few years. For example, TinyOS, the current state of the art in sensor network operating systems, adopts the event-based programming model combined with a simple FIFO scheduler. However, the FIFO scheduling makes it hard to provide prompt response to time critical tasks. In this thesis, we design and implement an embedded operating system for wireless sensor networks but offers multi-threaded model with three Priority Queues scheduling scheme. These three queues are high priority task queue, normal priority task queue, and low priority task queue. Tasks in different classes are preemptable to provide prompt response to higher priority/time critical tasks. In contrast, tasks in the same classes are scheduled by FIFO to save memory space since tasks in the same queue can share the same stack. From the experimental result, the code size of our kernel only consumes 6 Kbytes of memory, which is well-suited to the resource limited sensor nodes.
其他識別: U0005-0408200616191100
Appears in Collections:資訊科學與工程學系所



Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.