raspberry-pi-os - Learning operating system development using Linux kernel and Raspberry Pi

  •        43

This repository contains a step-by-step guide that teaches how to create a simple operating system (OS) kernel from scratch. I call this OS Raspberry Pi OS or just RPi OS. The RPi OS source code is largely based on Linux kernel, but the OS has very limited functionality and supports only Raspberry PI 3. Each lesson is designed in such a way that it first explains how some kernel feature is implemented in the RPi OS, and then it tries to demonstrate how the same functionality works in the Linux kernel. Each lesson has a corresponding folder in the src directory, which contains a snapshot of the OS source code at the time when the lesson had just been completed. This allows the introduction of new concepts gracefully and helps readers to follow the evolution of the RPi OS. Understanding this guide doesn't require any specific OS development skills.

https://github.com/s-matyukevich/raspberry-pi-os

Tags
Implementation
License
Platform

   




Related Projects

Raspbian - Operating System for Raspberry Pi hardware

  •    C

Raspbian is a free operating system based on Debian optimized for the Raspberry Pi hardware. An operating system is the set of basic programs and utilities that make your Raspberry Pi run. However, Raspbian provides more than a pure OS: it comes with over 35,000 packages, pre-compiled software bundled in a nice format for easy installation on your Raspberry Pi.

Raspberry-Pi - Raspberry Pi A to Z List

  •    

Raspberry Pi A to Z List Basics Raspberry Pi The Raspberry Pi was originally designed for educational purposes to use in schools and universities, and to make class and study more interesting. Unfortunately, the practical use of the Raspberry Pi or a comparable single-board computer in Germany, Austria and Switzerland is still in its infancy. Listening to the topic, you will find only a few examples showing the use of the Raspberry Pi in school, in education or in study. The following tasks and exercises should help a little here. They are suitable for self-study or as a source for teachers and faculty to build their own Raspberry Pi workshop. The tasks also include exemplary ready-made solutions. 1. Getting Started: Tasks and Exercises with Raspberry Pi The following tasks and exercises are suitable for beginners who have not yet come into contact with the Raspberry Pi. The solutions are also interesting for those who already know the Raspberry Pi and have worked with it. The solutions are part of standard tasks that have to be done around the Raspberry Pi every now and then.

pi64 - A 64-bit OS for the Raspberry Pi 3

  •    Go

pi64 is an experimental 64-bit OS for the Raspberry Pi 3. It is based on Debian Stretch and backed by a 4.11 Linux kernel. The latest images are always available in the releases section.

gokrazy - a pure-Go userland for your Raspberry Pi 3 appliances

  •    Go

gokrazy packs your Go application(s) into an SD card image for the Raspberry Pi 3 which — aside from the Linux kernel and proprietary Raspberry Pi bootloader — only contains Go software. The motivation is that @stapelberg spends way more time on C software and their various issues than he would like. Hence, he is going Go-only where feasible.

pi-timolo - Raspberry PI-TIMOLO ( PI-TImelapse, MOtion, LOwLight ) uses RPI picamera and python for Remote Headless Security Monitoring & Auto Sync files with rclone remote storage services

  •    Python

Requires a Raspberry Pi computer and a RPI camera module installed. Make sure hardware is tested and works. Most RPI models will work OK. A quad core RPI will greatly improve performance due to threading. A recent version of Raspbian operating system is Recommended. Step 1 With mouse left button highlight curl command in code box below. Right click mouse in highlighted area and Copy. Step 2 On RPI putty SSH or terminal session right click, select paste then Enter to download and run script.


raspap-webgui - A simple, responsive web interface to control wifi and hostapd on the Raspberry Pi

  •    PHP

A simple, responsive web interface to control wifi, hostapd and related services on the Raspberry Pi. This project was inspired by a blog post by SirLagz about using a web page rather than ssh to configure wifi and hostapd settings on the Raspberry Pi. I mostly just prettified the UI by wrapping it in SB Admin 2, a Bootstrap based admin theme. Since then, the project has evolved to include greater control over many aspects of a networked RPi, better security, authentication, a Quick Installer, support for themes and more. RaspAP has been featured on sites such as Instructables, Adafruit, Raspberry Pi Weekly and Awesome Raspberry Pi and implemented in countless projects.

python-gpiozero - A simple interface to GPIO devices with Raspberry Pi

  •    Python

A simple interface to GPIO devices with Raspberry Pi. Created by Ben Nuttall of the Raspberry Pi Foundation, Dave Jones, and other contributors.

rpi-rgb-led-matrix - Controlling up to three chains of 64x64, 32x32, 16x32 or similar RGB LED displays using Raspberry Pi GPIO

  •    C++

A library to control commonly available 64x64, 32x32 or 16x32 RGB LED panels with the Raspberry Pi. Can support PWM up to 11Bit per channel, providing true 24bpp color with CIE1931 profile. Supports 3 chains with many panels each. On a Raspberry Pi 2 or 3, you can easily chain 12 panels in that chain (so 36 panels total), but you can theoretically stretch that to up to 96-ish panels (32 chain length) and still reach around 100Hz refresh rate with full 24Bit color (theoretical - never tested this; there might likely be timing problems with the panels that will creep up then).

pivpn - Simple OpenVPN installer, designed for raspberry pi.

  •    Shell

Visit the PiVPN site for more information. This is a set of shell scripts that serve to easily turn your Raspberry Pi (TM) into a VPN server using the free, open-source OpenVPN software. Have you been looking for a good guide or tutorial for installing openvpn on a raspberry pi or ubuntu based server? Run this script and you don't need a guide or tutorial, this will do it all for you, in a fraction of the time and with hardened security settings in place by default.

linux - Kernel source tree for Raspberry Pi Foundation-provided kernel builds

  •    C

Kernel source tree for Raspberry Pi Foundation-provided kernel builds. Issues unrelated to the linux kernel should be posted on the community forum at https://www.raspberrypi.org/forum

noobs - NOOBS (New Out Of Box Software) - An easy Operating System install manager for the Raspberry Pi

  •    Makefile

NOOBS is designed to make it easy to select and install operating systems for the Raspberry Pi without having to worry about manually imaging your SD card. *NOTE: The list of OSes in this image is indicative only. It will vary according to your Raspberry Pi model and the availability of OSes on our remote download repository.

tensorflow-on-arm - TensorFlow for Arm

  •    Shell

Inspired by the tensorflow-on-raspberry-pi. Tool for compile tensorflow for arm. Python wheels for TensorFlow are being officially supported. As well, this repository maintain up-to-date tensorflow wheels for raspberry pi.

raspberry-pi-turnkey - How to make a Raspberry Pi image that can be deployed anywhere and assigned to a WiFi network without SSH :ok_hand:

  •    Python

You can follow the instructions below to create a turnkey image, or you can just download my latest one at raspberry-pi-turnkey.schollz.com/2018-03-02-turnkey.zip (v1.2.0, 829MB) and follow the typical flashing instructions. Once you boot the Pi with this image, you will see a WiFi AP named "ConnectToConnect" (password same). Connect to it and navigate to 192.168.4.1 where you'll see a login form.

rust-on-raspberry-pi - [OUTDATED] Instructions for how to cross compile Rust projects for the Raspberry Pi

  •    Shell

This guide will show how Rust programs can be cross compiled for the Raspberry Pi using Cargo. These instructions may or may not work for your particular system, so you may have to adjust the procedure to fit your configuration. There is also a docker container version of the Rust cross-compiler for the Raspberry: https://github.com/Ragnaroek/rust-on-raspberry-docker. If you are using docker this may be a easier solution for cross-compiling your project.

raspotify - Spotify Connect client for the Raspberry Pi that Just Works™

  •    Shell

Spotify Connect client for the Raspberry Pi that Just Works™. Raspotify is a Spotify Connect client for Raspbian on the Raspberry Pi that Just Works™. Raspotify is a Debian package and associated repository which thinly wraps the awesome librespot library by Paul Lietar and others. It works out of the box on all three revisions of the Pi, immediately after installation.

Adafruit-Pi-Finder - Find and set up your brand new Raspberry Pi

  •    Javascript

The Pi Finder is intended to work with the latest version of Raspbian, so please make sure you have installed Raspbian on your SD card before continuing. You have your brand new Raspberry Pi, and you are ready to get hacking... Only problem is, you dont have an extra HDMI monitor and keyboard. So how can you find out the IP network address? PI FINDER TO THE RESCUE! Run this cross-platform application to locate your Raspberry Pi's IP address.

kubernetes-on-arm - Kubernetes ported to ARM boards like Raspberry Pi.

  •    Shell

Imagine... Your own testbed for Kubernetes with cheap Raspberry Pis and friends. This project was published in September 2015 as the first fully working way to easily set up Kubernetes on ARM devices.

autonomous-rc-car - Autonomous RC car using Raspberry Pi and ANN

  •    Python

This project aims to build an autonomous rc car using supervised learning of a neural network with a single hidden layer. We have not used any Machine Learning libraries since we wanted to implement the neural network from scratch to understand the concepts better. We have modified a remote controlled car to remove the dependency on the RF remote controller. A Raspberry Pi controls the DC motors via an L293D Motor Driver IC. You can find a post explaining this project in detail here. Here's a video of the car in action. We will be referring the DC motor controlling the left/right direction as the front motor and the motor controlling the forward/reverse direction as the back motor. Connect the BACK_MOTOR_DATA_ONE and BACK_MOTOR_DATA_TWO GPIO pins(GPIO17 and GPIO27) of the Raspberry Pi to the Input pins for Motor 1(Input 1, Input 2) and the BACK_MOTOR_ENABLE_PIN GPIO pin(GPIO22) to the Enable pin for Motor 1(Enable 1,2) in the L293D Motor Driver IC. Connect the Output pins for Motor 1(Output 1, Output 2) of the IC to the back motor.

tensorflow-on-raspberry-pi - TensorFlow for Raspberry Pi

  •    Python

Check out the official TensorFlow website for more information. It was a fun ride! With Raspberry Pi support now official, I will no longer be looking to update this repository. I'm sorry that I wasn't able to continue maintaining the repo as much as I wanted, but it was amazing watching the community continue to thrive.