Skip to content

Joshelin/OS-project

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

85 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OS-project

YAEOS

INTRODUCTION

Sistema Operativo accademico basato su processore ARM7TDMI emulato.

Occorre installare µARM per testare il progetto.

Github:

https://github.com/Plutone11011/OS-project


AUTHORS

 
Lorenzo Borelli 0000789622
Federico Biagi 0000758635
Yihong Chen 0000801605

COMPILAZIONE/LINKING

Dopo aver installato µARM ed i relativi pacchetti (Vedi Readme).
Compilare usando Makefile, digitando make.
L'eseguibile si chiamerà main.


SCELTE PROGETTUALI

Abbiamo suddiviso il progetto in 2 cartelle principali

"src" per tutti i file sorgente:

-Alloc.c 
-Queue.c
-Tree.c
-Semaphore.c

"header" per tutti i file header:

-Alloc.h 
-Queue.h
-Tree.h
-Semaphore.h
-libuarm.h
-uARMtypes.h
-uARMconst.h
-PCB.h

Alloc

Gestisce i pcb (Process control block), consentendo di allocarli e deallocarli.

Queue

Gestisce code di pcb allocati con priorità decrescente.

Tree

Gestisce alberi di pcb allocati.

Semaphore

Gestisce i semafori tramite una Hash table.
Ogni semaforo consente di bloccare e/o liberare pcb (thread) concorrenti tramite mutua esclusione con priorità (Usando Queue.c).
Consente inoltre di liberare l'esecuzione di un pcb e tutti i suoi figli (thread), 'bypassando' la coda (Terminate process tree).

To be continued!!!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C 75.1%
  • C++ 23.4%
  • Makefile 1.5%