Infra-estrutura de Sistema Operacional para Atualização de Código
Resumo
Diversos sistemas embarcados apresentam sérias limitações de processamento, memória e energia. Para permitir correções de bugs ou adição de novas funcionalidades, o software que executa sob esses sistemas deve ser capaz de prover um mecanismo de atualização de código que use o mínimo de recursos possíveis e não influencie nos serviços disponibilizados pelo sistema. Neste artigo é apresentada uma infra-estrutura de sistema operacional, ainda em desenvolvimento, para atualização de código. Os resultados preliminares mostram que essa infra-estrutura tem um baixo consumo de memória e adiciona pouco overhead para a aplicação.Referências
Boulis, A., Han, C.-C., and Srivastava, M. B. (2003). Design and implementation of a framework for efficient and programmable sensor networks. In MobiSys ’03: Proceedings of the 1st international conference on Mobile systems, applications and services, pages 187–200, New York, NY, USA. ACM Press.
Felser, M., Kapitza, R., Kleinöder, J., and Schröder-Preikschat, W. (2007). Dynamic software update of resource-constrained distributed embedded systems. In International Embedded Systems Symposium 2007 (IESS ’07).
Fröhlich, A. A. (2001). Application-Oriented Operating Systems. Number 17 in GMD Research Series. GMD - Forschungszentrum Informationstechnik, Sankt Augustin.
Fröhlich, A. A. and Schröder-Preikschat, W. (2000). Scenario Adapters: Efficiently Adapting Components. In Proceedings of the 4th World Multiconference on Systemics, Cybernetics and Informatics, Orlando, U.S.A.
Han, C.-C., Kumar, R., Shea, R., Kohler, E., and Srivastava, M. (2005). A dynamic operating system for sensor nodes. In MobiSys ’05: Proceedings of the 3rd international conference on Mobile systems, applications, and services, pages 163–176, New York, NY, USA. ACM.
Hill, J., Szewczyk, R., Woo, A., Hollar, S., Culler, D. E., and Pister, K. S. J. (2000). System architecture directions for networked sensors. In Architectural Support for Programming Languages and Operating Systems, pages 93–104.
Hjalmtysson, G. and Gray, R. (1998). Dynamic C++ classes—A lightweight mechanism to update code in a running program. In USENIX Annual Technical Conf., pages 65–76.
Hui, J. W. and Culler, D. (2004). The dynamic behavior of a data dissemination protocol for network programming at scale. In SenSys ’04: Proceedings of the 2nd international conference on Embedded networked sensor systems, pages 81–94, New York, NY, USA. ACM.
Koshy, J. and Pandey, R. (2005). Remote incremental linking for energy-efficient reprogramming of sensor networks. In Proceedings of the second European Workshop on Wireless Sensor Networks (EWSN 2005), pages 354–365.
Levis, P. and Culler, D. (2002). Mate: A tiny virtual machine for sensor networks. In International Conference on Architectural Support for Programming Languages and Operating Systems, San Jose, CA, USA.
Marrón, P. J., Lachenmann, A., Minder, D., Hähner, J., Sauter, R., and Rothermel, K. (2005). TinyCubus: A flexible and adaptive framework for sensor networks. In Proceedings of the Second European Workshop on Wireless Sensor Networks (EWSN 2005), pages 278–289.
Marrón, P. J., Gauger, M., Lachenmann, A., Minder, D., Saukh, O., and Rothermel, K. (2006). Flexcup: A flexible and efficient code update mechanism for sensor networks. In Proceedings of the Third European Workshop on Wireless Sensor Networks (EWSN 2006), pages 212–227.
Stathopoulos, T., Heidemann, J., and Estrin, D. (2003). A remote code update mechanism for wireless sensor networks. Technical report, Los Angeles, CA, USA.
Stroustrup, B. (1997). The C++ Programming Language. Addison-Wesley, 3 edition.
Felser, M., Kapitza, R., Kleinöder, J., and Schröder-Preikschat, W. (2007). Dynamic software update of resource-constrained distributed embedded systems. In International Embedded Systems Symposium 2007 (IESS ’07).
Fröhlich, A. A. (2001). Application-Oriented Operating Systems. Number 17 in GMD Research Series. GMD - Forschungszentrum Informationstechnik, Sankt Augustin.
Fröhlich, A. A. and Schröder-Preikschat, W. (2000). Scenario Adapters: Efficiently Adapting Components. In Proceedings of the 4th World Multiconference on Systemics, Cybernetics and Informatics, Orlando, U.S.A.
Han, C.-C., Kumar, R., Shea, R., Kohler, E., and Srivastava, M. (2005). A dynamic operating system for sensor nodes. In MobiSys ’05: Proceedings of the 3rd international conference on Mobile systems, applications, and services, pages 163–176, New York, NY, USA. ACM.
Hill, J., Szewczyk, R., Woo, A., Hollar, S., Culler, D. E., and Pister, K. S. J. (2000). System architecture directions for networked sensors. In Architectural Support for Programming Languages and Operating Systems, pages 93–104.
Hjalmtysson, G. and Gray, R. (1998). Dynamic C++ classes—A lightweight mechanism to update code in a running program. In USENIX Annual Technical Conf., pages 65–76.
Hui, J. W. and Culler, D. (2004). The dynamic behavior of a data dissemination protocol for network programming at scale. In SenSys ’04: Proceedings of the 2nd international conference on Embedded networked sensor systems, pages 81–94, New York, NY, USA. ACM.
Koshy, J. and Pandey, R. (2005). Remote incremental linking for energy-efficient reprogramming of sensor networks. In Proceedings of the second European Workshop on Wireless Sensor Networks (EWSN 2005), pages 354–365.
Levis, P. and Culler, D. (2002). Mate: A tiny virtual machine for sensor networks. In International Conference on Architectural Support for Programming Languages and Operating Systems, San Jose, CA, USA.
Marrón, P. J., Lachenmann, A., Minder, D., Hähner, J., Sauter, R., and Rothermel, K. (2005). TinyCubus: A flexible and adaptive framework for sensor networks. In Proceedings of the Second European Workshop on Wireless Sensor Networks (EWSN 2005), pages 278–289.
Marrón, P. J., Gauger, M., Lachenmann, A., Minder, D., Saukh, O., and Rothermel, K. (2006). Flexcup: A flexible and efficient code update mechanism for sensor networks. In Proceedings of the Third European Workshop on Wireless Sensor Networks (EWSN 2006), pages 212–227.
Stathopoulos, T., Heidemann, J., and Estrin, D. (2003). A remote code update mechanism for wireless sensor networks. Technical report, Los Angeles, CA, USA.
Stroustrup, B. (1997). The C++ Programming Language. Addison-Wesley, 3 edition.
Publicado
12/07/2008
Como Citar
GRACIOLI, Giovani; FRÖHLICH, Antônio Augusto.
Infra-estrutura de Sistema Operacional para Atualização de Código. In: WORKSHOP DE SISTEMAS OPERACIONAIS (WSO), 5. , 2008, Belém/PA.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2008
.
p. 81-87.
