Completing Multicore, Embedded XINU

From REU@MU
Revision as of 15:40, 5 June 2020 by Jaustin (Talk | contribs)

Jump to: navigation, search

Project Description


As the number of multi-core systems in our world grows, it becomes increasingly important for students to work on hardware-supported multi-core systems. We hope to continue adding functionality to our current XINU operating system with the hopes of open sourcing our multi-core variant in the future for schools everywhere to utilize and build upon.

Project Goal


The Embedded XINU system has given Marquette Students a rare opportunity to learn about multi-core topics with actual hardware to support this functionality. Since Spring 2018, this has shown to have tremendous results. As multi-core systems are every where in the world today, this is a huge development. It is because of this, we will work to finish off the functionality of embedded multi-core XINU. We will do this by reviewing the previous work done and picking up where previous researchers left off with the hopes of continuing to push the boundaries of what Marquette’s system courses can ask of it’s students when designing projects. Long term, I plan to work with my colleagues and Dr. Dennis Brylow to “finish off” the core functionality of Embedded XINU with the intention of open-sourcing it. This is an opportunity to provide other universities with an updated version of XINU which will reach more computing students across the globe.

Tentative Milestones


Week 1: Complete Data Science Bootcamp, Solidify Project, and Meet with XINU team

Week 2: Implement proper inter-core communication to prevent race-conditions and deadlocks

Weeks 3-4: Begin Adding Memory Protection and Virtual Memory

Weeks 4-5: Develop the Ability to Allow Processes to Migrate between Cores

Weeks 5-6: Adding File-System Support

Weeks 6-7: Making Non-Blocking, Concurrent Data Structures

Weeks 8-10: Make the Entire Operating System PTHREAD Compliant