Font Size: a A A

Improvement Of MC/OSâ…¡-Based Embedded Real-Time Operating System Scheduling Algorithm

Posted on:2012-08-27Degree:MasterType:Thesis
Country:ChinaCandidate:Q HaoFull Text:PDF
GTID:2218330368999322Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
The quality and efficiency of the gramm scheduling algorithm are critical to the applicability and extent of realtimeness of the embedded kernel,μC /OS-Ⅱis a preemptive real-time multigramming kernel that boasts the following features:completeness, translatability, solidifiablity and modifiability. It supports up to 56 usergramms, accommodates semmaphores, mailboxes, message queues and other commonly.used inter-process communication mechanism. It also works with a variety of microcontrollers and microprocessors, and is thoroughly coded in ANSI C.μC/OS-Ⅱ's outstanding readability and translatability has made it easy to be ported to a good number of processor architectures and widely applied in areas which have increasingly demand for enhanced real-time features. Based on theμC/OS-Ⅱ-derived analysis, we made several improvements on its scheduling algorithm. Therefore, when the complexity of a project heightens and the number of gramms in aμC/OS2Ⅱoperating systems increases, one must switch to other development platforms once the number of gramms exceeds 64. This could result in voiding much of the pre-development work. Taking this situation and the gramm extendibility ofμC/OS2Ⅱinto consideration, and based on the original algorithm of priority scheduling, we broached two feasible algorithms with much enhanced gramm manageability One is to use the generic priority-determining table ofμC/OS2Ⅱ, redefine the bytes storing gramm priority, and by reestablishing a gramm table. After expanding the gramms from 64 to 256, and shoveling back the gramms into the gramm table, it will formulate a new, highest searching algorithm of the highest readiness of gramm priority. Another one is to use the two bytes left in the original priority-storing byte storage as indexes, rebuilding the gramm readiness table and expanding the gramm priorities from 64 to 256. On the ground of the open sourceμC/OS2Ⅱ,we made some modifications on the gramm priority scheduling algorithm of the original kernel, hence suitable to be applied on intricate development project with 64 or more gramms. We further draw our conclusions as the follow: algorithm one is superior and finer than algorithm two, for it is more clear and concise in theory, and more easily implemented. In engineering practices, there has been an elevated demand over the real-time feature of embedded system. In order to use the real-time kernel to develop embedded multi-gramm system programs, one should first devise a rational decomposition over system functions, formulate different gramms, and then determine priorities according to levels of gramm importance. The quality and efficiency of the gramm scheduling algorithm are critical to the applicability and extent of realtimeness of the embedded kernel.μC/OS-Ⅱis a preemptive real-time multigramming kernel that boasts the following features:completeness, translatability, solidifiablity and modifiability. It supports up to 56 user gramms, accommodates semmaphores, mailboxes, message queues. And other commonly used inter-process communication mechanism, works with a variety of microcontrollers and microprocessors, and is thoroughly coded in ANSI C.μC/OS-Ⅱ's outstanding readability and transplantibility has made it easy to be ported to a good number of processor architectures and widely applied in areas which have increasingly demand for enhanced real-time features. Based on theμC/OS-II-derived analysis, we made several improvements on its scheduling algorithm. Besides improving algorithm by comparing several embedded real-time systems of typical algorithm. This thesis also scrutinizes the decreased efficiency problem caused by enhanced project complexity and increased gramms running in aμC/OSⅡ. The kernel can handle up to 64 gramms, and as 8 of them are reserved for the system. The user is actually allotted to have 56 application gramms at most. Therefore, when the complexity of a project heightens and the number of gramms in aμC/OS2Ⅱoperating systems increases, one must switch to other development platforms. Due to the number of gramms exceed 64, which could result in voiding much of the pre-development work. Taking this situation and the gramm extendibility ofμC/OS2Ⅱinto consideration, and based on the original algorithm of priority scheduling, we broached two feasible algorithms with much enhanced gramm manageability One is to use the generic priority-determining table ofμC/OS2Ⅱ, redefine the bytes storing gramm priority. By reestablishing a gramm table, expanding the gramms from 64 to 256, and shoveling back the gramms into the gramm table. It can formulate a new, highest searching algorithm of the highest readiness of gramm priority. Another one is to use the two bytes left in the original priority-storing byte storage as indexes, rebuilding the gramm readiness table and expanding the gramm priorities from 64 to 256. On the ground of the open sourceμC/OS2Ⅱ,we made some modifications on the gramm priority scheduling algorithm of the original kernel, hence suitable to be applied on intricate development project with 64 or more gramms. We further draw our conclusions as the follow:algorithm one is superior and finer than algorithm two, for it is more clear and concise in theory, and more easily implemented.
Keywords/Search Tags:Real-time operating system, Algorithm, Embedded
PDF Full Text Request
Related items