Publication Date
8-2010
Type of Culminating Activity
Thesis
Degree Title
Master of Science in Computer Engineering
Department
Electrical and Computer Engineering
Supervisory Committee Chair
Nader Rafla, Ph.D.
Abstract
Increasingly, embedded real-time applications use multi-threading. The benefits of multi-threading include greater throughput, improved responsiveness, and ease of development and maintenance. However, there are costs and pitfalls associated with multi-threading.
In some of hard real-time applications, with very precise timing requirements, multi-threading itself becomes an overhead cost mainly due to scheduling and contextswitching components of the real-time operating system (RTOS). Different scheduling algorithms have been suggested to improve the overall system performance. However, context-switching still consumes much of the processor’s time and becomes a major overhead cost especially for hard real-time embedded systems.
A typical RTOS context switch consumes 50 to 80 processor clock cycles (depending on processor architecture and context size) to store and restore the thread context. If a real-time application needs to respond to an event repeatedly less than this time, then the overall system performance may not be acceptable. The suggested approach in this thesis improves the context-switching time drastically. This technique has been implemented in hardware, as part of the processor state along with new central processing unit (CPU) instructions to take care of the context-switching process without interacting with external memory. With the suggested approach, the thread contextswitch can be achieved in 4 CPU clock cycles independent of context size. This is a significant improvement to thread context switching.
Recommended Citation
Gauba, Deepak Kumar, "Hardware Implementation of Real-Time Operating System’s Thread Context Switch" (2010). Boise State University Theses and Dissertations. 141.
https://scholarworks.boisestate.edu/td/141