ETRI Journal
- 제29권3호
- /
- Pages.270-280
- /
- 2007
- /
- 1225-6463(pISSN)
- /
- 2233-7326(eISSN)
Kernel Thread Scheduling in Real-Time Linux for Wearable Computers
- Kang, Dong-Wook (Department of Computer Science & Engineeneering, POSTECH, and is currently with the Embedded Software Research Division, ETRI) ;
- Lee, Woo-Joong (Department of Computer Science & Engineering, POSTECH) ;
- Park, Chan-Ik (Department of Computer Science & Engineering, POSTECH)
- 투고 : 2006.10.01
- 발행 : 2007.06.30
초록
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.