Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

ΘΕΜΑ ΠΤΥΧΙΑΚΗΣ ΕΡΓΑΣΙΑΣ Μελέτη και υλοποίηση σε γλώσσα Assembly ενός απλοποιημένου Λειτουργικού Συστήματος στο περιβάλλον του Emu8086 ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣΦΟΙΤΗΤΗΣ.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "ΘΕΜΑ ΠΤΥΧΙΑΚΗΣ ΕΡΓΑΣΙΑΣ Μελέτη και υλοποίηση σε γλώσσα Assembly ενός απλοποιημένου Λειτουργικού Συστήματος στο περιβάλλον του Emu8086 ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣΦΟΙΤΗΤΗΣ."— Μεταγράφημα παρουσίασης:

1 ΘΕΜΑ ΠΤΥΧΙΑΚΗΣ ΕΡΓΑΣΙΑΣ Μελέτη και υλοποίηση σε γλώσσα Assembly ενός απλοποιημένου Λειτουργικού Συστήματος στο περιβάλλον του Emu8086 ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣΦΟΙΤΗΤΗΣ ΜΑΔΕΜΛΗΣ ΙΩΑΝΝΗΣ ΕΥΑΓΓΕΛΟΠΟΥΛΟΣ ΠΕΡΙΚΛΗΣ

2 ΣΚΟΠΟΣ  Μελέτη της αρχιτεκτονικής και του προγραμματισμού του επεξεργαστή 8088/8086 της Intel, καθώς επίσης και του περιβάλλοντος του προγράμματος EMU8086  Υλοποίηση σε γλώσσα Assembly στον emulator EMU8086 ενός απλοποιημένου λειτουργικού συστήματος που θα εκτελείται πάνω στην πλατφόρμα του MS-DOS  Χρήση Command Line Interface, εκτέλεση εντολών παρόμοιων με αυτών του MS-DOS  Διαχείριση αρχείων και καταλόγων στο σύστημα αρχείων του υπολογιστή

3 ΠΕΡΙΛΗΨΗ  ΚΕΦΑΛΑΙΟ 1: Ιστορικά στοιχεία - Ο επεξεργαστής Intel 8086 αναλυτικότερα και η ιστορία του MS-DOS  ΚΕΦΑΛΑΙΟ 2: Προγραμματισμός με Assembly – Η γλώσσα προγραμματισμού Assembly και ο emulator emu8086  ΚΕΦΑΛΑΙΟ 3: Ο προγραμματισμός του συστήματος «Percules» - Χρησιμότητα του προγράμματος, το command prompt και σετ των δεκτών εντολών  ΚΕΦΑΛΑΙΟ 4: Ο κώδικας πίσω από το σύστημα που αναπτύχθηκε

4 ΚΕΦΑΛΑΙΟ 1 Ιστορικά στοιχεία Ο μικροεπεξεργαστής 8086 της Intel  Εσωτερική αρχιτεκτονική 16 bit  Κυκλοφόρησε το 1978  Data Bus των 16 bit  Address Bus των 20 bit  Συχνότητα λειτουργίας 4,77 – 8 MHz  Σετ εντολών με 90 εντολές συνολικά  14 συνολικά καταχωρητές των 16 bit (4 από αυτούς χωρίζονται σε 2 των 8 bit)

5 Η ιστορία του MS-DOS  Η IBM ψάχνει για ένα νέο λειτουργικό σύστημα που θα εισήγαγε στον νέο IBM PC (τέλη του 1980)  Η Microsoft αγοράζει τα δικαιώματα του QDOS από την Seattle Computer Products και τον δημιουργό του Tim Paterson  Μετατροπή του QDOS (Quick and Dirty Operating System) ώστε να γίνει συμβατό με τις προδιαγραφές της IBM  Κυκλοφορεί το 1982 το PC της IBM που ονομάστηκε PC DOS με το νέο λειτουργικό σύστημα MS-DOS

6 Η ιστορία του MS-DOS  Γραμμή εντολών (command prompt)  Χρησιμοποιήθηκε ευρέως σε προσωπικούς υπολογιστές από τη δεκαετία του ’80 μέχρι τα μέσα της δεκαετίας του ’90  Το 1995 η Microsoft ανακοίνωσε την κατάργηση του MS-DOS και την αντικατάστασή του από τα Windows 95 που παρείχαν γραφική διεπαφή με το χρήστη  Το MS-DOS κυκλοφόρησε σε 8 συνολικά εκδόσεις μέχρι που σταμάτησε η ανάπτυξή του το 2000

7 ΚΕΦΑΛΑΙΟ 2 Προγραμματισμός με Assembly  Η Assembly δημιουργήθηκε το 1950 και ήταν από τις πρώτες γλώσσες προγραμματισμού που χρησιμοποιήθηκαν  Γλώσσα χαμηλού επιπέδου (είναι πολύ κοντά στη γλώσσα μηχανής και στο υλικό του υπολογιστή)  Χρησιμοποιεί συμβολική αναπαράσταση για να παρουσιάσει τον αριθμητικό κώδικα μηχανής και άλλες σταθερές απαραίτητες για τον προγραμματισμό ενός επεξεργαστή  Σήμερα χρησιμοποιείται κυρίως για άμεσο χειρισμό hardware καθώς έχει αντικατασταθεί από γλώσσες προγραμματισμού υψηλού επιπέδου  Η μετάφραση ενός προγράμματος από συμβολική γλώσσα σε γλώσσα μηχανής πραγματοποιείται από τον συμβολομεταφραστή (assembler)

8 Η γλώσσα προγραμματισμού Assembly  Αρχικά τα προγράμματα γραφόταν σε γλώσσα μηχανής  Η Assembly τότε βοήθησε τη ζωή των προγραμματιστών  Για τη συγγραφή του κώδικα της πτυχιακής χρησιμοποιήθηκε η γλώσσα Assembly στο περιβάλλον του emu8086 v4.08 Μία τυπική εντολή σε Assembly είναι η ακόλουθη: MOV al, 84h MOV είναι η εντολή (move), δηλαδή μετακίνησε Η συγκεκριμένη εντολή γράφει τη δεκαεξαδική τιμή 84 στον καταχωρητή που έχει όνομα AL

9 Το πρόγραμμα Emu8086  Το πρόγραμμα emu8086 συνδυάζει έναν συντάκτη κώδικα (editor), assembler και έναν εξομοιωτή λογισμικού  Έχει τη δυνατότητα να τρέξει στο δικό του περιβάλλον το πρόγραμμα που γράφεται, αλλά μπορεί να δημιουργήσει και εκτελέσιμα αρχεία (.com) που μπορούν να τρέξουν ανεξάρτητα σε περιβάλλον MS-DOS  Ο emu8086 μπορεί να τρέξει το πρόγραμμα εντολή-εντολή, και να παρατηρεί ο προγραμματιστής τις αλλαγές που πραγματοποιεί η κάθε εντολή στα περιεχόμενα των καταχωρητών και της μνήμης  ο διαδικτυακός τόπος του κατασκευαστή του emulator

10 Το πρόγραμμα Emu8086

11 Procedures, μακροεντολές και interrupts στον Emu8086  Για να χρησιμοποιηθεί το πληκτρολόγιο και η οθόνη για εισαγωγή και εμφάνιση δεδομένων στον emulator, χρησιμοποιείται η βιβλιοθήκη emu8086.inc  Το αρχείο αυτό περιέχει μία σειρά από μακροεντολές και procedures που βοηθούν σημαντικά τη ζωή του προγραμματιστή  Ο emulator υποστηρίζει μία σειρά από interrupts  Το interrupt μπορεί να θεωρηθεί ως μία σειρά από λειτουργίες και καθιστά τον προγραμματισμό πολύ ευκολότερο  Τα interrupt καλούνται με την εντολή INT και τον αριθμό του interrupt  Τα περισσότερα interrupt παίρνουν παραμέτρους από τον καταχωρητή AH αλλά και από άλλους καταχωρητές

12 Τα interrupts στον Emu8086  Έπαιξαν σημαντικό ρόλο στην ανάπτυξη του κώδικα αυτής της πτυχιακής Παράδειγμα χρήσης interrupt: mov dx, offset message ; Μήνυμα προς εμφάνιση mov ah, 9 ; Αριθμός του interrupt (αποθηκεύεται στον AH) int 21h ; Κλήση της interrupt int 21h (h = δεκαεξαδικό) message: db “Hello world$” ; Τα string πρέπει να τελειώνουν με το ; χαρακτήρα $ Ο παραπάνω κώδικας εμφανίζει το μήνυμα “Hello world” στην οθόνη

13 ΚΕΦΑΛΑΙΟ 3 Ο προγραμματισμός του Percules  Το πρόγραμμα που αναπτύχθηκε με ονομασία “Percules” αποτελεί ένα απλοποιημένο λειτουργικό σύστημα βασισμένο στο MS-DOS της Microsoft  Είναι σε θέση να εκτελεί ένα υποσύνολο εντολών σαν λειτουργικό σύστημα παρόμοιων με αυτών του MS-DOS  Πραγματοποιεί διαχείριση αρχείων και καταλόγων στα drives του Η/Υ όπου εκτελείται  Το εκτελέσιμο αρχείο του προγράμματος (OS_VER62.com) εκτελείται πάνω στην πλατφόρμα του MS-DOS  Προορίζεται για εκπαιδευτικούς κυρίως σκοπούς και γι’ αυτό το λόγο σχεδιάστηκε να είναι ιδιαίτερα φιλικό με το χρήστη παρ’ όλο που δεν παρέχει γραφικό περιβάλλον

14 Το λειτουργικό σύστημα Percules  Χρησιμοποιεί πληθώρα από MS-DOS interrupts  Χρήση command prompt παρόμοιο με αυτό του MS-DOS  Τα ονόματα των εντολών είναι όσο το δυνατόν πιο περιγραφικά όσον αφορά τη λειτουργία τους και μοιάζουν με ονόματα εντολών του MS-DOS και άλλοτε του UNIX  Για τη διευκόλυνση του χρήστη το σετ των διαθέσιμων εντολών εμφανίζεται πάντα μετά την εκτέλεση κάποιας εντολής και επιστροφή στο command prompt  Ο χρήστης δεν απαιτείται να γνωρίζει εντολές με πολύπλοκες παραμέτρους  Οι τυχόν παράμετροι που απαιτούνται από κάποιες εντολές ζητούνται από το χρήστη μετά την εισαγωγή της εντολής στο σύστημα

15 Το command prompt του Percules Η οθόνη υποδοχής και το command prompt του συστήματος Εκτέλεση της εντολής “ver” (δεξιά)

16 Η ροή του προγράμματος Σύγκριση του string που εισήχθη με όλο το σετ εντολών ΕΝΤΟΛΗ ΔΕΚΤΗ; ΑΡΧΗ command prompt (Εισαγωγή εντολής) Αποτελείται πράγματι η εντολή από Χ χαρακτήρες; Εμφάνιση μηνύματος (εντολή μη αποδεκτή) Εκτέλεση εντολής ΝΑΙΟΧΙ ΝΑΙ ΟΧΙ

17 Οι εντολές του Percules Εκτέλεση της εντολής “help” η οποία εμφανίζει στην οθόνη το σετ εντολών του συστήματος και επεξήγησή τους

18 Οι βασικότερες εντολές του Percules (dir, dir2)  Η εντολή “dir” εμφανίζει στην οθόνη όλα τα περιεχόμενα του τρέχοντος φακέλου  Η “dir2” εμφανίζει ορισμένα μόνο αρχεία με βάση κριτηρίων που εισάγει ο χρήστης Παράδειγμα χρήσης της dir

19 Οι βασικότερες εντολές του Percules (write, type/read)  Η εντολή “write” δίνει τη δυνατότητα στο χρήστη να γράψει σε ένα αρχείο κειμένου  Μπορεί να δημιουργήσει ένα νέο αρχείο κειμένου ή να γράψει σε κάποιο ήδη υπάρχον  Εάν το αρχείο κειμένου προϋπάρχει τα περιεχόμενα του διαγράφονται  Η εισαγωγή του κειμένου σταματά με τη λέξη “stop”  Η εντολή “type” κάνει την ίδια ακριβώς δουλειά με την “read”  Οι “read/type” εμφανίζουν στην οθόνη του χρήστη τα περιεχόμενα ενός αρχείου κειμένου  Το αρχείο κειμένου προς εμφάνιση πρέπει να τελειώνει με ENTER

20 Οι βασικότερες εντολές του Percules (type/read) Παράδειγμα χρήσης της εντολής read – Εμφανίζει στην οθόνη τα περιεχόμενα του αρχείου ser.txt

21 Οι βασικότερες εντολές του Percules (copy, move)  Η εντολή “copy” αντιγράφει ένα αρχείο από «πηγή σε προορισμό»  Στον προορισμό το αρχείο μπορεί να έχει διαφορετικό όνομα, ωστόσο τα περιεχόμενα του παραμένουν ίδια  Η εντολή “move” μετακινεί ένα αρχείο από «πηγή σε προορισμό»  Η υλοποίηση της “move” είναι ίδια με αυτήν της “copy” με τη διαφορά ότι η “move” έχει μία επιπλέον υπορουτίνα που αναλαμβάνει να διαγράψει το αρχικό αρχείο (αντιγραφή του αρχικού αρχείου στο αρχείο προορισμού και έπειτα διαγραφή του αρχικού)

22 Άλλες εντολές του Percules  MKDIR : Δημιουργεί ένα νέο φάκελο (Make Directory)  RMDIR : Διαγράφει ένα φάκελο (Remove Directory)  CHDIR : Αλλάζει τον τρέχοντα φάκελο (Change Directory)  BYE/EXIT : Τερματίζει το πρόγραμμα  MEM : Εμφανίζει το μέγεθος της μνήμης (περιορίζεται στα 640 KB)  CLS : Καθαρίζει την οθόνη (Clear Screen)  VER : Εμφάνιση της τρέχουσας έκδοσης του Percules (Version 1.62)  DATE/TIME : Εμφάνιση ώρας και ημερομηνίας  STIME : Αλλάζει την ώρα (δε λειτουργεί στα σύγχρονα PC)  COLOR : Αλλαγή χρώματος των χαρακτήρων και υποβάθρου (επίδειξη – μία από τρεις επιλογές)

23 Άλλες εντολές του Percules  VIDEO : Αλλαγή μεγέθους του παραθύρου (video mode). Δεν υποστηρίζεται από το DOS στα σύγχρονα λειτουργικά Windows  CURSOR : Αλλάζει τη μορφή του κέρσορα  BIOS : Εμφανίζει τη λίστα συσκευών από το bios  DRIVE : Εμφανίζει τον τρέχοντα οδηγό – Ο χρήστης μπορεί να αλλάξει τον τρέχοντα οδηγό πληκτρολογώντας το γράμμα του οδηγού και άνω κάτω τελεία (π.χ. d:)  DEL : Διαγράφει ένα αρχείο (Delete)  REN : Μετονομάζει ένα αρχείο (Rename)  HELP : Εμφάνιση επεξήγησης για τις εντολές του Percules

24 Η εντολή BATCT (Bat Control)  Δυνατότητα εκτέλεσης εντολών μέσα από αρχείο με δέσμες εντολών (Batch File)  Τα batch files προστέθηκαν στα πρώτα λειτουργικά συστήματα για να διευκολύνουν το χρήστη να εκτελεί ορισμένες τακτικές εργασίες ακόμα και χωρίς την παρουσία του  Στο Percules η εντολή “batct” δίνει τη δυνατότητα στο χρήστη να τρέξει ένα αρχείο δέσμης που έχει δημιουργήσει ο ίδιος  Μερικές εντολές (π.χ. write) απαιτούν τη συνεχή παρουσία του χρήστη για την εκτέλεσή τους και γι’ αυτό δεν υλοποιήθηκαν για εκτέλεση μέσω batch file (αντίθετο με τη φιλοσοφία των batch files)  Οι εντολές στα αρχεία δέσμης μπορούν να συνοδεύονται από παραμέτρους που χωρίζονται από το χαρακτήρα κενό (space)

25 Η εντολή BATCT (Bat Control)  Δυνατότητα μίας εντολής να έχει μέχρι 2 παραμέτρους  Το σύστημα είναι σε θέση να γνωρίζει ποιες εντολές επιδέχονται παραμέτρους  Τα αρχεία δέσμης πρέπει να περιέχουν μία εντολή ανά γραμμή και να τελειώνουν με ENTER Οι εντολές που γίνονται δεκτές από τα batch files στο Percules έχουν τη μορφή: Εντολή ή Εντολή παράμετρος1 ή Εντολή παράμετρος1 παράμετρος2

26 Προτάσεις για μελλοντική επέκταση εφαρμογής  Θα μπορούσε να αναπτυχθεί ένα πραγματικό εκπαιδευτικό πρόγραμμα, ένας simulator για DOS – UNIX, που θα απευθύνεται σε πρωτοετείς φοιτητές ή νεότερους μαθητές ώστε οι ίδιοι να μάθουν να χειρίζονται αποτελεσματικά τα προαναφερθέντα λειτουργικά  Δικτυακή έκδοση του προγράμματος – Οι μαθητευόμενοι θα εκτελούν το πρόγραμμα στο δικό τους Η/Υ στο δίκτυο με βάση τις οδηγίες του επιβλέποντα  Ο επιβλέπων να έχει τη δυνατότητα να παρατηρεί στην οθόνη του τη δραστηριότητα των μαθητών


Κατέβασμα ppt "ΘΕΜΑ ΠΤΥΧΙΑΚΗΣ ΕΡΓΑΣΙΑΣ Μελέτη και υλοποίηση σε γλώσσα Assembly ενός απλοποιημένου Λειτουργικού Συστήματος στο περιβάλλον του Emu8086 ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣΦΟΙΤΗΤΗΣ."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google