Learning operating system development using Linux kernel and Raspberry Pi
s-matyukevich.github.io
Learning operating system development using Linux kernel and Raspberry Pi
1–10 of 40 posts
Re: Learning operating system development using Linux kernel and Raspberry Pi
#2Re: Learning operating system development using Linux kernel and Raspberry Pi
#3The offical Raspberry Pi distro of Linux is already called “Raspberry Pi OS”: https://www.raspberrypi.org/downloads/raspberry-pi-os/
Re: Learning operating system development using Linux kernel and Raspberry Pi
#4The offical Raspberry Pi distro of Linux is already called “Raspberry Pi OS”: https://www.raspberrypi.org/downloads/raspberry-pi-os/
Renamed from "Raspbian". Perhaps the article was written before the name change?
Re: Learning operating system development using Linux kernel and Raspberry Pi
#5The offical Raspberry Pi distro of Linux is already called “Raspberry Pi OS”: https://www.raspberrypi.org/downloads/raspberry-pi-os/
Re: Learning operating system development using Linux kernel and Raspberry Pi
#6I think for educational purposes it will be very interesting and useful if someone develop from scratch a simple System V UNIX for RPi based on Bach's description in his seminal book on "The Design of the UNIX Operating System" [2]. The book also covers multi processors topic as supported by modern platforms such as RPi.
[1]https://www.arm.com/resources/education/books/operating-syst...
[2]https://github.com/suvratapte/Maurice-Bach-Notes/blob/master...
Re: Learning operating system development using Linux kernel and Raspberry Pi
#7Re: Learning operating system development using Linux kernel and Raspberry Pi
#8Might be a bit controversial but I found writing drivers for Linux on my raspberry pi helped me understand kernels, virtual memory etc. I used Linux Device Drivers (ldd3) which is free online. The book was written for the 2.6 kernel but someone on GitHub updated the code for the latest kernels.
I expect if I found a random piece of hardware that was close to an existing one that adding the driver, or updating things so that it worked on the new hardware would be possible. It's just not a situation I've come across.
What I found useful/educational was writing a simple linux security module.
1. LSMs are essentially isolated. 2. They don't care about hardware. 3. You can do lots of things with them. Even horrid evils things.
For example I put together the following module in which the kernel calls back to userspace every single time you execute a binary, to decide whether it should be permitted or not:
https://github.com/skx/linux-security-modules
(And yes, I appreciate that is almost exactly as horrid as it sounds! So much fun to hack around with though.)
Re: Learning operating system development using Linux kernel and Raspberry Pi
#9Might be a bit controversial but I found writing drivers for Linux on my raspberry pi helped me understand kernels, virtual memory etc. I used Linux Device Drivers (ldd3) which is free online. The book was written for the 2.6 kernel but someone on GitHub updated the code for the latest kernels.
Re: Learning operating system development using Linux kernel and Raspberry Pi
#10The offical Raspberry Pi distro of Linux is already called “Raspberry Pi OS”: https://www.raspberrypi.org/downloads/raspberry-pi-os/