Skip to content

An old project to port xv6 to the Raspberry Pi, there are better more complete out there, published as an example of baremetal programming on a Pi.

License

Notifications You must be signed in to change notification settings

jhohertz/rpi-baremetal-bootstrap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This was a start at porting MIT's xv6 teaching OS to the Raspberry Pi.

The effort stalled when I got to the VM details. XV6 makes use of the nice way the x86 VM tables all map nicely into 4k blocks. ARM has a mix of sizes needed, and I didn't have time to sort out the details at the time. I could have done it in a simple but vastly wasteful way, but didn't want to do that.

When I came back to it, it there were a couple other efforts that had sprung up and done the job already.

I don't plan to do anything with this, but it is a useful example of bare metal programming the Pi.

All it does, is map it's code into the kernel area at the top half of the memory area, sets the bottom half as user space memory, jump into the "kernel", and blink the LED on the Pi.

Some bits of xv6 were ported, those things at the "leaf" ends of the dependency graphs, as I was intending to build inward from that perspective, and downward from the bootstrap,

About

An old project to port xv6 to the Raspberry Pi, there are better more complete out there, published as an example of baremetal programming on a Pi.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published