
Kernel Thread Scheduling in Real‐Time Linux for Wearable Computers
Author(s) -
Kang Dongwook,
Lee Woojoong,
Park Chanik
Publication year - 2007
Publication title -
etri journal
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.295
H-Index - 46
eISSN - 2233-7326
pISSN - 1225-6463
DOI - 10.4218/etrij.07.0506.0019
Subject(s) - computer science , sysfs , thread (computing) , configfs , kernel (algebra) , scheduling (production processes) , linux kernel , operating system , real time operating system , real time computing , parallel computing , embedded system , engineering , operations management , mathematics , combinatorics
In Linux, real‐time tasks are supported by separating real‐time task priorities from non‐real‐time task priorities. However, this separation of priority ranges may not be effective when real‐time tasks make the system calls that are taken care of by the kernel threads. Thus, Linux is considered a soft real‐time system. Moreover, kernel threads are configured to have static priorities for throughputs. The static assignment of priorities to kernel threads causes trouble for real‐time tasks when real‐time tasks require kernel threads to be invoked to handle the system calls because kernel threads do not discriminate between real‐time and non‐real‐time tasks. We present a dynamic kernel thread scheduling mechanism with weighted average priority inheritance protocol (PIP), a variation of the PIP. The scheduling algorithm assigns proper priorities to kernel threads at runtime by monitoring the activities of user‐level real‐time tasks. Experimental results show that the algorithms can greatly improve the unexpected execution latency of real‐time tasks.