Skip to content

Archfx/tinyos

 
 

Repository files navigation

TinyOS🐞

TinyOSis a tutorial series about minimal operating system kernel implementation based on the comprehensive tutorial series mini-risscv-os. This operating system kernel is based on RISC-V. instrucion set architecture. Credits to the original authors. A fully built environment is available as a docker environment. This tutorial will cover several chapters related to implementing a operating system from begining.

Requirements

In order to complete the tutorial you just need only two things

  1. TinyOS repo
  2. Docker

Beyond the technical requirements, inorder to understand the concepts I highly recommend looking at my firmware tutorial series before starting on this.

Setup the Environement on Docker

Fully bulid docker environemt with all the requirements installed including

  • gcc toolchain
  • qemu with RISC-V simulator

can be found in the following docker-hub reposiroty.

You can follow the below instructions to get it mount on your docker stack.

docker pull archfx/rvutils:qemu # pull the docker container
git clone https://github.com/Archfx/tinyos #clone this repository
docker run -t -p 6080:6080 -v "${PWD}/:/tinyos" -w /tinyos --name rvutils archfx/rvutils:qemu #Mount the repo to the docker container

# Opern another terminal 
docker exec -it rvutils /bin/bash

Chapters

Building and Simulation

  • Changes the current working directory to the specified one and then
make # Build the OS
make qemu # Simulate the OS

Note: Press Ctrl-A and then X to exit QEMU

Licensing

This repo adheres to the original repo licenses. mini-riscv-os is freely redistributable under the two-clause BSD License. Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.

Reference

About

tinyos🐞: Baremetal minimal multi-tasking OS kernel for RISC-V

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 80.6%
  • Assembly 15.2%
  • Makefile 4.2%