Yet another operating system for IoT devices

Document created by Kyunghwan Kwon on Mar 16, 2017Last modified by Kyunghwan Kwon on Mar 17, 2017
Version 1Show Document
  • View in full screen mode

 

About this project

yaos is an embedded operating system for IoT devices. It is designed for energy efficiency and hardware independent development.

 

 

Project info

Type : Operating System

Progress : In progress

Difficulty : Intermediate

License : Apache 2.0

Code Repository : GitHub - onkwon/yaos: Operating System for Internet of Things(IoT) devices 

The Team :

Who made this ?

Kyunghwan KwonDevelop kernel corekwon@toanyone.net

Things used in this project

Software Tools :

GCC

 

Story

It provides the system call interface entering privileged mode as a user task runs in user(unprivileged) mode.

 

Two types of task are handled: normal and real time tasks. Round-robin scheduler for normal tasks while priority scheduler for real time tasks. Each task is given a priority which can be dynamically changed. For a real time task a higher priority task always preempts lower priority tasks while the same priority tasks take place in turn under round-robin scheduling.

 

The concept of virtual file system is implemented. The embedded flash in SoC can be mounted as the root file system while a ramfs is mounted as a devfs for a device node.

 

And there are some more features. Please check it out. Any feedback on improvements, suggestion, or whatever would be appreciated.

Attachments

    Outcomes