In numerous embedded operation systems, embedded Linux system is widely used inembedded system development because of its opened source codes, good scalable andportability performance. However, Linux is firstly designed as a time-sharing system toimprove the system throughput and overall performance. It is difficult to meet somerequirements of embedded real-time application systems, so it is necessary to research thereal-time performance of embedded Linux kernel.Based on the research of Linux kernel, the advantages of Linux as embeddedoperation system and the shortcomings of real-time performance are analyzed in the paper,and the main emphasis is how to improve the real-time performance of Linux. The taskscheduling strategy is the critical issue of real-time performance of Linux. According to thetask_struct definition of Linux, the paper use multi-level feedback scheduler for nonreal-time tasks and use FIFO (First Input First Output) and RR (Round-Robin) schedulerfor real-time tasks. The paper put forward two methods to improve the real-timeperformance of embedded Linux kernel. (1) Using dual kernel, RT-Linux is transplanted toLinux as the real-time kernel to process the real-time tasks. The system uses virtualinterrupt mechanism and interrupt response is processed by real-time kernel to solve theproblem of the interrupt mask. (2) Loading real-time scheduler improve systemperformance in terms of Linux task scheduling mechanism. For static periodic task, thesystem uses the RM scheduler,and it assigns short-period task higher priority. Fordynamic task, the system uses the EDF scheduler. According to the task of the earliestdeadline, it assigns early-deadline task higher priority. The test results indicate that themethods can effectively improve the real-time performance of embedded Linux kernel. |