The design of the UNIX operating system
The design of the UNIX operating system
Power analysis of embedded software: a first step towards software power minimization
IEEE Transactions on Very Large Scale Integration (VLSI) Systems - Special issue on low-power design
The energy efficiency of IRAM architectures
Proceedings of the 24th annual international symposium on Computer architecture
Low power design in deep submicron electronics
The filter cache: an energy efficient memory structure
MICRO 30 Proceedings of the 30th annual ACM/IEEE international symposium on Microarchitecture
MediaBench: a tool for evaluating and synthesizing multimedia and communicatons systems
MICRO 30 Proceedings of the 30th annual ACM/IEEE international symposium on Microarchitecture
Design of Dynamically Reconfigurable Real-Time Software Using Port-Based Objects
IEEE Transactions on Software Engineering
System-level power optimization: techniques and tools
ISLPED '99 Proceedings of the 1999 international symposium on Low power electronics and design
Power analysis of embedded operating systems
Proceedings of the 37th Annual Design Automation Conference
Wattch: a framework for architectural-level power analysis and optimizations
Proceedings of the 27th annual international symposium on Computer architecture
Energy-driven integrated hardware-software optimizations using SimplePower
Proceedings of the 27th annual international symposium on Computer architecture
The performance and energy consumption of three embedded real-time operating systems
CASES '01 Proceedings of the 2001 international conference on Compilers, architecture, and synthesis for embedded systems
Real-Time Systems
Microc/OS-II
Embedded Microprocessor Systems: Real World Design
Embedded Microprocessor Systems: Real World Design
Every joule is precious: the case for revisiting operating system design for energy efficiency
EW 9 Proceedings of the 9th workshop on ACM SIGOPS European workshop: beyond the PC: new challenges for the operating system
IEEE Design & Test
System-on-a-Chip Cosimulation and Compilation
IEEE Design & Test
The Case for Higher-Level Power Management
HOTOS '99 Proceedings of the The Seventh Workshop on Hot Topics in Operating Systems
PowerScope: A Tool for Profiling the Energy Usage of Mobile Applications
WMCSA '99 Proceedings of the Second IEEE Workshop on Mobile Computer Systems and Applications
Real-Time Operating Systems for Embedded Computing
ICCD '97 Proceedings of the 1997 International Conference on Computer Design (ICCD '97)
Software Power Estimation and Optimization for High Performance, 32-bit Embedded Processors
ICCD '98 Proceedings of the International Conference on Computer Design
System-Level Performance Estimation Strategy for Sw and Hw
ICCD '98 Proceedings of the International Conference on Computer Design
Designing the M·CORETM M3 CPU Architecture
ICCD '99 Proceedings of the 1999 IEEE International Conference on Computer Design
Dynamic allocation for scratch-pad memory using compile-time decisions
ACM Transactions on Embedded Computing Systems (TECS)
Memory overflow protection for embedded systems using run-time checks, reuse, and compression
ACM Transactions on Embedded Computing Systems (TECS)
Heap data allocation to scratch-pad memory in embedded systems
Journal of Embedded Computing - Cache exploitation in embedded systems
Evaluation of priority based real time scheduling algorithms: choices and tradeoffs
Proceedings of the 2008 ACM symposium on Applied computing
A real-time embedded kernel for nonvisual robotic sensors
EURASIP Journal on Embedded Systems - Operating System Support for Embedded Real-Time Applications
Proceedings of the Conference on Design, Automation and Test in Europe
GREENCOM-CPSCOM '10 Proceedings of the 2010 IEEE/ACM Int'l Conference on Green Computing and Communications & Int'l Conference on Cyber, Physical and Social Computing
Power/energy estimator for designing WSN nodes with ambient energy harvesting feature
EURASIP Journal on Embedded Systems - Special issue on networked embedded systems for energy management and buildings
Functional-Level Energy Characterization of µC/OS-II and Cache Locking for Energy Saving
Bell Labs Technical Journal
Design and implementation of an embedded python run-time system
USENIX ATC'12 Proceedings of the 2012 USENIX conference on Annual Technical Conference
Hi-index | 14.98 |
This paper presents the modeling of embedded systems with SimBed, an execution-driven simulation testbed that measures the execution behavior and power consumption of embedded applications and RTOSs by executing them on an accurate architectural model of a microcontroller with simulated real-time stimuli. We briefly describe the simulation environment and present a study that compares three RTOSs: µC/OS-II, a popular public-domain embedded real-time operating system; Echidna, a sophisticated, industrial-strength (commercial) RTOS; and NOS, a bare-bones multirate task scheduler reminiscent of typical "roll--your-own" RTOSs found in many commercial embedded systems. The microcontroller simulated in this study is the Motorola M--CORE processor: a low-power, 32-bit CPU core with 16-bit instructions, running at 20MHz. Our simulations show what happens when RTOSs are pushed beyond their limits and they depict situations in which unexpected interrupts or unaccounted-for task invocations disrupt timing, even when the CPU is lightly loaded. In general, there appears no clear winner in timing accuracy between preemptive systems and cooperative systems. The power-consumption measurements show that RTOS overhead is a factor of two to four higher than it needs to be, compared to the energy consumption of the minimal scheduler. In addition, poorly designed idle loops can cause the system to double its energy consumption驴energy that could be saved by a simple hardware sleep mechanism.