Δημοσιεύτηκε: 09 Δεκ 2017, 22:02
από babaliaris
Καλησπέρα!

Είμαι φοιτητής στο Πολυτεχνείο Κρήτης και μόλις τελείωσα το project του μαθήματος Λειτουργικά Συστήματα στο οποίο έπρεπε να φτιάξουμε ένα μικρό λειτουργικό σύστημα που είναι παρόμοιο με το Unix.

Το project μπορείτε να το βρείτε στο github. Καλό είναι να το τρέξετε σε ubuntu 16.0.4 για να έχει συμβατότητα ο compiler. Γενικά πρέπει να υποστηρίζεται το πρότυπο C11.
Γενικά πρέπει να τρέχει σε οποιδήποτε Linux distribution αλλά είναι δοκιμασμένο σε Ubuntu.

Το project είναι open source αλλά ο δημιουργός του είναι ο καθηγητής μας Βασίλης Σαμολαδάς.

Εμείς έπρεπε να υλοποιήουσουμε τον scheduler, πολυνηματικές διεργασίες και τα system calls pipes, sockets, sysinfo.

Για τον scheduler χρησιμοποιήσαμε τον αλγόριθμο multilevel feedback queue.

Για να κάνεται compile το project (Επίσης δείτε και το readme στο github):
Κώδικας: Επιλογή όλων
cd project_path
touch .depend
make depend
make


Μπορείτε να τρέξετε ένα basic shell και να τρέξετε και μερικά προγράμματα για να το τεστάρετε ως εξής:
Κώδικας: Επιλογή όλων
cd project_path
./tinyos_shell 1 0


Αυτό θα τρέξει το λειτουργικό χρησιμοποιώντας ένα shell για επικοινωνία με τον χρήστη με 1 πυρήνα και 0 terminals.

Για να δείτε το documentation δείτε τις οδηγίες στο github.

Οι δικές μου υλοποιήσεις είναι στα αρχεία:
kernel_proc.c / .h
kernel_sched.c / .h
kernel_pipe.c
kernel_socket.c
kernel_threads.c

Ελπίζω να σας αρέσει.