Thursday, June 26, 2008

Scalable Multi-Tasking using Preemption Thresholds

by Manas Saksena & Yun Wang

Preemptive multi-tasking is a commonly used architecture for designing and implementing embedded real-time software. However, preemptive multi-tasking comes with its own costs. These costs include overheads due to preemptions and context-switches that result in waste of CPU bandwidth. Also, each task incurs a memory cost largely due to the need to maintain a separate stack for each task. These costs increase with the number of tasks and can be significant in complex real-time software.

In this paper, we propose results from our ongoing research in which we are developing a design method with scalable multi-tasking implementations for complex realtime software. Our design method is based on an extension of fixed priority preemptive scheduling using preemption thresholds that was proposed in [Y. Wang and M. Saksena. Fixed priority scheduling with
preemption threshold. In Proceedings, IEEE International Conference on Real-Time Computing Systems and Applications, December 1999]
Using this new scheduling model we show how we can design multi-tasking implementations that are far more scalable than using pure preemptive multi-tasking implementations.

  • Penerapan Preemption Threshold pada penjadwalan proses-proses Multitasking
  • Preemption Threshold adalah model penjadwalan yang mengkombinasikan pendekatan preemptive dengan non preemptive

Key word
1. Scalable Multitasking
2. Cost of preemptive
3. Cost of context switching
4. Fixed priority preemptive scheduling
.

Software VM Management for MMU-less Embedded Systems

by Siddharth Choudhuri & Tony Givargis

Abstract

For an embedded system designer, the rise in processing speeds of embedded processors and microcontroller evolution has lead to the possibility of running computation and data intensive applications on small embedded devices that earlier only ran on desktop-class systems. From a memory stand point, there is a similar need for running larger and more data intensive applications on embedded devices.
However, support for large memory address spaces, specifically, virtual memory, for MMU-less embedded systems is lacking. In this research, we present a software virtual memory scheme for MMU-less systems based on an application level virtual memory library and a virtual memory aware assembler. Our virtual memory support is transparent to the programmer, can be tuned for a specific application, correct by construction, and fully automated. Our experiments validate the feasibility of virtual memory for MMU-less embedded systems using benchmark programs.

--> pengelolaan virtual memory pada sistem embedded yang tidak memiliki/ didukung MMU

Key word :
1. Virtual Memory
2. Pengelolaan Virtual Memory
--- dengan software
--- dengan Memory Manajemen Unit
3. Memory Manajemen Unit
4. Embedded System
5. MMU-less Embedded system
.