uC/OS-II之動態記憶體管理
柯典嘉
Abstract
柯典嘉
Abstract
There is an increasing demand for more memory to satisfy complex execution of applications even in embedded or real-time systems. The implementation of more memory is usually done by using paging or virtual memory. However, page faults in such systems impact the performance of memory access significantly and result in unpredictable response time. So, reducing page fault rate is critical to improve the system performance. In this thesis, a dynamic memory management scheme based on paging on μC/OS-II is proposed. Memory pages are allocated to tasks relying on task priorities, so pages of high-priority tasks are more likely to be kept in memory, while those of low-priority tasks may be easier replaced. By this way, pages are prevented from being re-allocated frequently, resulting in a lower page fault rate. In my experiment, the page fault rate could reduce 66\%. More experiments under different scenarios are also designed to test how the performance would be influenced. The results show that such prioritized scheme improves the overall performance of page fault rate, especially with wide memory access range, more number of tasks, and low aging strategy. I believe dynamic memory management with task priority can effectively improve the overall performance of many embedded and real-time systems.
A significance statement is not available in the OpenAlex record.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
There is an increasing demand for more memory to satisfy complex execution of applications even in embedded or real-time systems. The implementation of more memory is usually done by using paging or virtual memory. However, page faults in such systems impact the performance of memory access significantly and result in unpredictable response time. So, reducing page fault rate is critical to improve the system performance. In this thesis, a dynamic memory management scheme based on paging on μC/OS-II is proposed. Memory pages are allocated to tasks relying on task priorities, so pages of high-priority tasks are more likely to be kept in memory, while those of low-priority tasks may be easier replaced. By this way, pages are prevented from being re-allocated frequently, resulting in a lower page fault rate. In my experiment, the page fault rate could reduce 66\%. More experiments under different scenarios are also designed to test how the performance would be influenced. The results show that such prioritized scheme improves the overall performance of page fault rate, especially with wide memory access range, more number of tasks, and low aging strategy. I believe dynamic memory management with task priority can effectively improve the overall performance of many embedded and real-time systems.
Key concepts: Demand paging, Page fault, Computer science, Paging, Virtual memory, Task (project management), Memory management, Page