1 / 14

Akira Tsukamoto System Platform Laboratory NEC Corporation

This system by Akira Tsukamoto at NEC Corporation designs a WRR Scheduler to enable seamless task switching and execution even with real-time and normal tasks. The WRR Scheduler adjusts task execution time based on priority using O(1) algorithm. It enhances the Linux scheduler up to Kernel 2.4 while optimizing task queue management for FIFO, RR, and WRR tasks.

rflores
Download Presentation

Akira Tsukamoto System Platform Laboratory NEC Corporation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Akira Tsukamoto System Platform Laboratory NEC Corporation

  2. Design of WRR Scheduler ■In the previous Linux scheduler, while the real time task (FIFO and RR) exist, the normal task (OTHER) is not selected at all (task switching does not occur and the OTHER task has to wait ). ■In the newly introduced WRR scheduler, the OTHER task is executed even when the WRR task exists. ■Round robin algorithm possible to adjust execution time per task according to the priority ■ The scheduler hasO(n) algorithm up to Kernel 2.4 ■In this method, when the WRR task exists, ■Realizes switching of OTHER and WRR task queues by O(1). ■Switches from the WRR task queue by O(1) when RR and FIFO tasks are inserted. ■The number of added codes is 200 lines or so ■Based on the scheduler of the Linux original algorithm up to Kernel 2.4 The method is explained referring the patch described later.

  3. It has to wait until all FIFO and RR ended.

  4. OTHER is executed

  5. Process activation The bigger the figure, the longer the execution time of the corresponding task. Priority setting

  6. Function to be called when calculating the task of high priority in runqueue (goodness value) For the WRR task, modifies to the non-calculation process because the goodness value is not required. Function to be called when the task in the sleep status is inserted into runqueue Added a counter to decide if the FIFO, RR, or WRR task exists or not by O(1). Function to be called at the time of actual task switching. See the detail in the following slide. Function to enforce task attribute (FIFO, RR, WRR) setting and priority setting Inserts wrr into wrr_runqueue when changing the normal task (OTHER) to WRR task. Function to operate newly set www_runqueue

  7. excerpts or so

  8. Checked the workings of task switching in the implemented WRR scheduler. Enforced tracing two WRR tasks by System Director Embedded.

More Related