18.97.14.84
18.97.14.84
close menu
멀티쓰레드 기반 센서네트워크 운영체제에서 동작하는 상태머신 프레임워크
State Machine Frameworks Operating in Sensor Network Operation System based on Multi-Thread
이승근 ( Seung Keun Lee ) , 김병곤 ( Byung Kon Kim ) , 최병규 ( Byung Kyu Choi ) , 허신 ( Shin Heu )
UCI I410-ECN-0102-2012-000-001083444

무선 센서네트워크는 유비쿼터스 컴퓨팅에서 생활환경과 컴퓨터 사이의 중계자 역할을 하는 매우 중요한 연구 분야이다. 매우 제약적인 자원 환경에서 동작하여야 하는 센서 노드의 특성 때문에 제한된 자원을 효율적으로 관리할 수 있는 센서네트워크 운영체제가 요구된다. 또한 센서네트워크는 외부 물리 환경의 변화에 반응하여 동작하는 시스템이기 때문에 여러 이벤트를 동시에 신속하게 처리 할 수 있어야 한다. 이러한 요구조건을 만족시킬 수 있도록 TinyOS나 MANTIS, NanoQplus 등 센서네트워크용 운영체제에서 다양한 기법들이 제시되고 있다. 하지만, 센서네트워크 응용 프로그램을 개발하는 프로그래머 입장에서는 제약이 심한 개발 환경과 개발을 용이하게 할 수 있도록 하는 프레임워크가 부족한 문제점도 매우 크다. 이를 위해 본 논문에서는 반응형 시스템에 적합한 상태머신 프레임워크를 멀티쓰레드 기반의 센서네트워크운영체제인 NanoQplus에 구현하였다. 또한 효과적인 이벤트 처리를 위한 이벤트 브로커 모듈 및 상태머신간 메시지 공유를 위한 메시지 자료구조와 메시지 및 메시지큐를 핸들링하고 상태머신의 전이를 수행하는 실행 모듈을 제안한다. 추가적으로 상태머신 프레임워크기반의 응용 프로그램을 좀 더 용이한 개발을 지원할 수 있는 CASE(Computer-aided software engineering)툴을 개발하였다.

A wireless sensor network(WSN) which roles as a mediator between living environment and computers in ubiquitous computing is very essential research area. Due to the constraint that sensor nodes should work in very resource-restricted circumstances, an operating system that can manage resources effectively is demanded. Also, a sensor network should be able to deal with many events quickly and simultaneously in order to respond to various physical changes in outer environment. The Sensor Network Operating System such as TinyOS, MANTIS and NanoQplus is much designed so that it can satisfy such requirement. But, for programmers who develop application program for sensor networks, they have lack of frameworks which the development is easily possible from restricted development environment. In this paper for this, we implemented a state machine framework apt for responsive systems in NanoQplus which is multi-thread-based sensor network operating system. In addition we propose an event broker module(EBM) for effective event dispatching, a message data structure for message sharing among state machines, and an execution module that handles messages and their queue and performs state transition of the machines. Furthermore, we could do the development more easily an application program with a state-based framework by developing CASE tools.

[자료제공 : 네이버학술정보]
×