Multicore Embedded Operating System Components for Education

Revision as of 15:48, 11 June 2018 by Bweither (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

The main topic to be completed for the Summer REU 2018 program is the multicore scheduler for the Embedded Multicore Xinu that Marquette's Operating Systems class currently uses to teach on the Raspberry Pi 3. A scheduler was chosen to be the first thing to be implemented by following the general outline of the OS class itself. It is the first part of the OS the class builds that is significantly different from its single-core counterpart. Having students write their own multicore schedulers as an assignment for the class would be a great exercise in both programming the hardware, as well as conceptualizing the way multicore systems work. It will help students to understand how single problems can be solved by splitting them into parallel parts, as well as solving completely unrelated tasks concurrently.

Tentative Timeline:

Week 3 Have a working ready list shared between and accessible by all cores

Week 5 Be able to pull any process off ready list and assign it to any core at any time

Week 7 Have a working scheduler

Week 10 Complete testing and finish writing paper to present.