Device Driver Abstraction for Multithreaded Sensor Network Operating Systems
نویسندگان
چکیده
To support the increasing number of sensor devices with various characteristics and requirements, sensor network operating systems should provide an appropriate device driver model that can cover a wide range of device types. Unfortunately, current sensor network operating systems force the user to build complex drivers for even simple devices, provide restricted interfaces, or do not provide any mechanisms. We present a device driver model that is flexible enough to support both simple devices with simple drivers, and complex devices with portable and high-performance device drivers. Users can write a device driver for simple devices with only a few lines of code using the usermode device driver. Devices that need highly efficient code or portability can be supported by a single-layer or 2-layer kernel-mode device driver. Moreover, shared access and power management can easily be included in the device driver using the device manager. We also provide guidelines for choosing a proper device driver model with concrete examples of real-world devices and support our claims through the evaluation of the device driver model using the RETOS kernel.
منابع مشابه
Demo Abstract: Cross-level Simulation in COOJA
Traditional WSN simulators are limited to simulating nodes at one single abstraction level. This makes system development and evolution difficult since developers cannot use the same simulator for both high-level algorithm development and low-level development such as device-driver implementations. The Contiki simulator COOJA allows for cross-level simulation, a novel type of wireless sensor ne...
متن کاملModelling of Device Driver Software by Reflection of the Device Hardware Structure
Embedded systems are highly optimised to operate in the physical world they are embedded to. Hence, dedicated peripheral devices are designed which need support by a device driver to raise the level of abstraction for the application programmer. Even with methods of hardware/software co-design, devices and drivers are still designed by two designer groups. This paper depicts a systematic approa...
متن کاملOn the Construction of Reliable Device Drivers
This dissertation is dedicated to the problem of device driver reliability. Software defects in device drivers constitute the biggest source of failure in operating systems, causing significant damage through downtime and data loss. Previous research on driver reliability has concentrated on detecting and mitigating defects in existing drivers using static analysis or runtime isolation. In cont...
متن کاملModeling and Verifying Abstract Multithreaded Systems
Multithreaded systems consist of programs (threads), an operating system and one or more processors. We describe abstraction techniques from programs, the operating system and processors to extract a finite state machine that reflects the thread manager in its system context. To assure the correctness and fairness of the concurrent execution, we apply common verification techniques, in particul...
متن کاملMultithreading Optimization Techniques for Sensor Network Operating Systems
While a multithreading approach provides a convenient sensor application developing environment with automatic control flow and stack managment, it is considered to have a larger data memory requirement and energy consumption than an event-driven model. Current threaded sensor operating systems unfortunately do not provide appropriate solutions. This paper presents multithreading optimization t...
متن کامل