Giter Club home page Giter Club logo

tinbes03's Introduction

TINBES03

Operating Systems


The course is divided into 2 parts:

  • ArduinOS
  • Linux

ArduinOS

In the ArduinOS part, you have to program a Operating System for the Arduino Uno. It has to fit the following requirements:

1. Het OS leest opdrachten die op de command line worden gegeven (3).
2. Vanuit de command line kan data in bestanden worden opgeslagen, een lijst getoond van opgeslagen bestanden,
de inhoud van bestanden getoond, bestanden gewist en de hoeveelheid beschikbare vrije ruimte getoond (4).
3. Er kunnen variabelen in het geheugen opgeslagen worden van de typen CHAR, INT, FLOAT en STRING, weer
teruggehaald uit het geheugen, en van waarde veranderd (5).
4. Een bestand in het bestandssysteem kan als proces gestart, gepauzeerd en gestopt worden (6).
5. Er wordt van verschillende processen bijgehouden wat de toestand is (running, suspended, terminated), de waarde
van de program counter, en welke variabelen bij dat proces horen (6, 7).
6. Het OS kan instructies in een bytecode-programma uitvoeren (6).
7. Het OS kan meerdere processen tegelijk uitvoeren (afwisselend  ́e  ́en instructie van elk proces) (7).
8. Vanuit een bytecode-programma kan data van de typen CHAR, INT, FLOAT en STRING naar bestanden geschreven
worden en uit bestanden gelezen (4, 6).
9. Vanuit een bytecode-programma kunnen andere processen opgestart (geforkt) worden en kan gewacht worden op
het voltooien van een ander proces (6, 7).
10. Bonus: Er zijn faciliteiten in het OS aanwezig voor het toekennen van prioriteiten aan processen, en een proces
wordt uitgevoerd met de toegekende prioriteit (8).
11. Bonus: Er zijn faciliteiten in het OS aanwezig voor het uitwisselen van data tussen twee processen door middel van
shared memory (9).
12. Bonus: Er zijn faciliteiten in het OS aanwezig voor het gebruik van semaforen voor gedeelde bestanden of shared
memory (9).
13. Bonus: Er is een compiler aanwezig die (een variant van) C- of Python-code omzet naar bytecode geschikt voor het
OS (hoeft niet op Arduino te draaien; parser hoeft niet zelfgeschreven te zijn).

Linux

In the Linux part, you have to hand in 17 assignments, in which you learn about the Linux operating system.

tinbes03's People

Contributors

tdregmans avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.