{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:33:39Z","timestamp":1750307619554,"version":"3.41.0"},"reference-count":25,"publisher":"Association for Computing Machinery (ACM)","issue":"2","license":[{"start":{"date-parts":[[2009,1,1]],"date-time":"2009-01-01T00:00:00Z","timestamp":1230768000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Embed. Comput. Syst."],"published-print":{"date-parts":[[2009,1]]},"abstract":"<jats:p>Wireless sensor networks are characterized by very tight code size and power constraints and by a lack of well-established standard software development platforms such as Posix. In this article, we present a comparative study between a few fairly different such platforms, namely MANTIS, TinyOS, and ZigBee, when considering them from the application developer's perspective, that is, by focusing mostly on functional aspects, rather than on performance or code size. In other words, we compare both the tasking model used by these platforms and the API libraries they offer. Sensor network applications are basically event based, so most of the software platforms are also built on considering event handling mechanism, however some use a more traditional thread based model. In this article, we consider implementations of a simple generic application in MANTIS, TinyOS, and the Ember ZigBee development framework, with the goal of depicting major differences between these platforms, and suggesting a programming style aimed at maximizing portability between them.<\/jats:p>","DOI":"10.1145\/1457255.1457264","type":"journal-article","created":{"date-parts":[[2009,2,10]],"date-time":"2009-02-10T16:42:19Z","timestamp":1234284139000},"page":"1-23","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":12,"title":["A comparison of software platforms for wireless sensor networks"],"prefix":"10.1145","volume":"8","author":[{"given":"Mohammad Mostafizur Rahman","family":"Mozumdar","sequence":"first","affiliation":[{"name":"Politecnico Di Torino, Torino, Italy"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Luciano","family":"Lavagno","sequence":"additional","affiliation":[{"name":"Politecnico Di Torino, Torino, Italy"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Laura","family":"Vanzago","sequence":"additional","affiliation":[{"name":"STMicroelectronics, Agrate, Milan, Italy"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2009,2,9]]},"reference":[{"volume-title":"Proceedings of the 24th International Conference on Distributed Computing Systems (ICDCS'04)","author":"Abdelzaher T.","key":"e_1_2_1_1_1","unstructured":"Abdelzaher , T. , Blum , B. , Cao , Q. , Chen , Y. , Evans , D. , George , J. , George , S. , Gu , L. , He , T. , Krishnamurthy , S. , Luo , L. , Son , S. , Stankovic , J. , Stoleru , R. , and Wood , A . 2004. Envirotrack: Towards an environmental computing paradigm for distributed sensor networks . In Proceedings of the 24th International Conference on Distributed Computing Systems (ICDCS'04) . IEEE, Los Alamitos, CA, 582--589. Abdelzaher, T., Blum, B., Cao, Q., Chen, Y., Evans, D., George, J., George, S., Gu, L., He, T., Krishnamurthy, S., Luo, L., Son, S., Stankovic, J., Stoleru, R., and Wood, A. 2004. Envirotrack: Towards an environmental computing paradigm for distributed sensor networks. In Proceedings of the 24th International Conference on Distributed Computing Systems (ICDCS'04). IEEE, Los Alamitos, CA, 582--589."},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/581630.581639"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.5555\/1018425.1020315"},{"volume-title":"Proceedings of the Workshop on End-To-End, Sense-And-Respond Systems, Applications and Services. ACM","author":"Bakshi A.","key":"e_1_2_1_4_1","unstructured":"Bakshi , A. , Prasanna , V. K. , Reich , J. , and Larner , D . 2005. The abstract task graph: a methodology for architecture-independent programming of networked sensor systems . In Proceedings of the Workshop on End-To-End, Sense-And-Respond Systems, Applications and Services. ACM , New York, 19--24. Bakshi, A., Prasanna, V. K., Reich, J., and Larner, D. 2005. The abstract task graph: a methodology for architecture-independent programming of networked sensor systems. In Proceedings of the Workshop on End-To-End, Sense-And-Respond Systems, Applications and Services. ACM, New York, 19--24."},{"key":"e_1_2_1_5_1","unstructured":"Barry R. 2003. FreeRTOS A FREE open source RTOS for small embedded real time systems. http:\/\/www.freertos.org\/PC\/.  Barry R. 2003. FreeRTOS A FREE open source RTOS for small embedded real time systems. http:\/\/www.freertos.org\/PC\/."},{"key":"e_1_2_1_6_1","unstructured":"BeeKit. 2004. Freescale's BeeKit. www.freescale.com\/zigbee.  BeeKit. 2004. Freescale's BeeKit. www.freescale.com\/zigbee."},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.5555\/1160162.1160178"},{"key":"e_1_2_1_8_1","volume-title":"Jennic: Basic Operating System (BOS) API","author":"BOS.","year":"2006","unstructured":"BOS. 2006 . Jennic: Basic Operating System (BOS) API . http:\/\/www.jennic.com\/. BOS. 2006. Jennic: Basic Operating System (BOS) API. http:\/\/www.jennic.com\/."},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1109\/LCN.2004.38"},{"key":"e_1_2_1_10_1","unstructured":"Ember. 2001. Zigbee Wireless Semiconductor Solutions by Ember. www.ember.com.  Ember. 2001. Zigbee Wireless Semiconductor Solutions by Ember. www.ember.com."},{"key":"e_1_2_1_11_1","unstructured":"Freescale. 2008. Freescale 802.15.4 Media Access Controller MyWirelessApp User Guide. http:\/\/www.freescale.com.  Freescale. 2008. Freescale 802.15.4 Media Access Controller MyWirelessApp User Guide. http:\/\/www.freescale.com."},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/564691.564775"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1007\/11502593_12"},{"volume-title":"Synchronous Programming of Reactive Systems","author":"Halbwachs N.","key":"e_1_2_1_14_1","unstructured":"Halbwachs , N. 1993. Synchronous Programming of Reactive Systems . Kluwer Academic Publishers , Dordrecht, The Netherlands. Halbwachs, N. 1993. Synchronous Programming of Reactive Systems. Kluwer Academic Publishers, Dordrecht, The Netherlands."},{"key":"e_1_2_1_15_1","unstructured":"IEEE. 2003. IEEE 802.15.4 WPAN-LR Task Group. http:\/\/www.ieee802.org\/15\/pub\/TG4.html.  IEEE. 2003. IEEE 802.15.4 WPAN-LR Task Group. http:\/\/www.ieee802.org\/15\/pub\/TG4.html."},{"volume-title":"Proceedings of the 14th Annual International Symposium on Aerospace\/Defense Sensing, Simulation, and Control. Elsevier Science Ltd.","author":"Jaikaeo C.","key":"e_1_2_1_16_1","unstructured":"Jaikaeo , C. , Srisathapornphat , C. , and Shen , C . -C. 2000. Querying and tasking in sensor networks . In Proceedings of the 14th Annual International Symposium on Aerospace\/Defense Sensing, Simulation, and Control. Elsevier Science Ltd. , Oxford, UK. Jaikaeo, C., Srisathapornphat, C., and Shen, C.-C. 2000. Querying and tasking in sensor networks. In Proceedings of the 14th Annual International Symposium on Aerospace\/Defense Sensing, Simulation, and Control. Elsevier Science Ltd., Oxford, UK."},{"key":"e_1_2_1_17_1","unstructured":"Levis P. Madden S. Gay D. Polastre J. Szewczyk R. Whitehouse K. Woo A. Gay D. Hill J. Welsh M. Brewer E. and Culler D. 2004. TinyOS: An Operating System for Sensor Networks. Springer-Verlag Berlin Germany.  Levis P. Madden S. Gay D. Polastre J. Szewczyk R. Whitehouse K. Woo A. Gay D. Hill J. Welsh M. Brewer E. and Culler D. 2004. TinyOS: An Operating System for Sensor Networks. Springer-Verlag Berlin Germany."},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/1061318.1061322"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/DATE.2005.289"},{"volume-title":"Proceedings of the 5th Annual IEEE Communications Society Conference on Sensor, Mesh and Ad Hoc Communications and Networks (SECON'08)","author":"Mozumdar M. M. R.","key":"e_1_2_1_20_1","unstructured":"Mozumdar , M. M. R. , Gregoretti , F. , Lavagno , L. , Vanzago , L. , and Olivieri , S . 2008. A framework for modeling, simulation and automatic code generation of sensor network application . In Proceedings of the 5th Annual IEEE Communications Society Conference on Sensor, Mesh and Ad Hoc Communications and Networks (SECON'08) . IEEE, Los Alamitos, CA. Mozumdar, M. M. R., Gregoretti, F., Lavagno, L., Vanzago, L., and Olivieri, S. 2008. A framework for modeling, simulation and automatic code generation of sensor network application. In Proceedings of the 5th Annual IEEE Communications Society Conference on Sensor, Mesh and Ad Hoc Communications and Networks (SECON'08). IEEE, Los Alamitos, CA."},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/1052199.1052213"},{"key":"e_1_2_1_22_1","volume-title":"Real-Time Workshop - Generate C code from Simulink models and MATLAB code. http:\/\/www.mathworks.com\/products\/rtw\/.","author":"Rtw","year":"2008","unstructured":"Rtw . 2008 . Real-Time Workshop - Generate C code from Simulink models and MATLAB code. http:\/\/www.mathworks.com\/products\/rtw\/. Rtw. 2008. Real-Time Workshop - Generate C code from Simulink models and MATLAB code. http:\/\/www.mathworks.com\/products\/rtw\/."},{"key":"e_1_2_1_23_1","unstructured":"SF. 2008. Stateflow - Design and simulate state machines and control logic. http:\/\/www.mathworks.com\/products\/stateflow\/.  SF. 2008. Stateflow - Design and simulate state machines and control logic. http:\/\/www.mathworks.com\/products\/stateflow\/."},{"key":"e_1_2_1_24_1","first-page":"15","article-title":"ZigBee","volume":"802","author":"Texas","year":"1996","unstructured":"Texas . 1996 . ZigBee : IEEE 802 . 15 .4 from Texas Instruments. Texas. 1996. ZigBee: IEEE 802.15.4 from Texas Instruments.","journal-title":"IEEE"},{"key":"e_1_2_1_25_1","unstructured":"ZigBee. 2002. ZigBee Alliance. http:\/\/www.zigbee.org\/.  ZigBee. 2002. ZigBee Alliance. http:\/\/www.zigbee.org\/."}],"container-title":["ACM Transactions on Embedded Computing Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1457255.1457264","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1457255.1457264","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T12:45:48Z","timestamp":1750250748000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1457255.1457264"}},"subtitle":["MANTIS, TinyOS, and ZigBee"],"short-title":[],"issued":{"date-parts":[[2009,1]]},"references-count":25,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2009,1]]}},"alternative-id":["10.1145\/1457255.1457264"],"URL":"https:\/\/doi.org\/10.1145\/1457255.1457264","relation":{},"ISSN":["1539-9087","1558-3465"],"issn-type":[{"type":"print","value":"1539-9087"},{"type":"electronic","value":"1558-3465"}],"subject":[],"published":{"date-parts":[[2009,1]]},"assertion":[{"value":"2008-06-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2008-07-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2009-02-09","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}