Λειτουργικά Συστήματα

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Λειτουργικά Συστήματα"

Transcript

1 Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:04 Δρ. Μηνάς Δασυγένης Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών arch.icte.uowm.gr/mdasyg

2 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ψηφιακά Μαθήματα του Πανεπιστημίου Δυτικής Μακεδονίας» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 2

3 Περιεχόμενα 1. Σκοπός της άσκησης Παραδοτέα Βρόχοι Επανάληψης Υλοποίηση αλλαγής ροής με break και continue H δομή case Αριθμητικές πράξεις στα σενάρια φλοιού Εκτέλεση εξωτερικών προγραμμάτων Τμήματα αλφαριθμητικών με τη χρήση του cut Ανακατεύθυνση Εξόδου Η εντολή exit Περισσότερα για συνθήκες (if) Περισσότερα για βρόχους επανάληψης Το πρόγραμμα grep (A' μέρος)

4 1. Σκοπός της άσκησης Σενάρια Φλοιού Unix. Βρόχοι Επανάληψης. Αλλαγή ροής εκτέλεσης. Αριθμητικές πράξεις. Χειρισμός αλφαριθμητικών. Συνθήκες. Εξωτερικά προγράμματα. Grep. 2. Παραδοτέα (A) 7 ερωτήσεις (C) 9 ασκήσεις 3. Βρόχοι Επανάληψης Σημαντικό στοιχείο των σεναρίων φλοιού είναι οι βρόχοι επανάληψης for. Με αυτόν τον τρόπο μπορούμε να επαναλάβουμε μια ομάδα από εντολές όσες φορές θελήσουμε. Η σύνταξη είναι: for variable in.. ne Με το παραπάνω κομμάτι κώδικα η for θα δίνει κάθε φορά στη μεταβλητή variable μια τιμή από το σετ που ακολουθεί και θα εκτελεστούν οι εντολές που βρίσκονται ανάμεσα στο και ne. Για παράδειγμα η εντολή: for i in echo hello $i ne θα εμφανίσει hello 1 hello 2 hello 3 4

5 Σε περίπτωση που θέλουμε να δημιουργήσουμε επαναλήψεις από κάποια αρχική τιμή, έως κάποια τελική τιμή με συγκεκριμένο βήμα θα πρέπει να χρησιμοποιήσουμε τη δομή while. Η σύνταξη της while είναι: while [ expression ] ne Η expression συντάσσεται με παρόμοιο τρόπο με τις συνθήκες if. Προκειμένου λοιπόν να δημιουργήσουμε το συγκεκριμένο βρόχο θα πρέπει: πριν από το while να αρχικοποιήσουμε τη μεταβλητή μας ( i=1), μέσα στην expression να θέσουμε τη συνθήκη που θέλουμε, όπως $i -lt 11 (δηλαδή να γίνεται η επανάληψη όσο η $i είναι μικρότερη από 11) μέσα στο βρόχο να έχουμε τη συνθήκη αύξησης της μεταβλητής $i. Αυτό επιτυγχάνεται με τη χρήση του εξωτερικού προγράμματος expr (man expr). Για να εκτελεστεί ένα εξωτερικό πρόγραμμα μέσα στο σενάριο φλοιού, απαιτείται η χρήση των ανάποδων εισαγωγικών `. Αν θέλουμε λοιπόν να γίνεται η αύξηση κατά 1 της μεταβλητής $i θα δώσουμε: i=`expr $i + 1` (προσοχή: πριν και μετά το = δεν υπάρχουν κενά. Υπάρχουν κενά πριν και μετά το σύμβολο της πράξης) Το παρακάτω λοιπόν παράδειγμα: #!/bin/sh i=1 while [ $i -lt 10 ] echo hello $i i=`expr $i + 1` ne θα εμφανίσει τα μηνύματα hello 1 έως hello 10 (επιβεβαιώστε το). (C1) Δημιουργήστε το σενάριο φλοιού c1.sh το οποίο ζητάει από το χρήστη να πληκτρολογήσει το όνομά του (με τη χρήση του read) και τον αριθμό των επαναλήψεων που θα εκτυπωθεί το όνομά του. Στη συνέχεια εκτυπώνεται το όνομα που έδωσε ο χρήστης τόσες φορές όσες έχει ζητήσει. 4. Υλοποίηση αλλαγής ροής με break και continue Αν θέλουμε να διακόψουμε την εκτέλεση ενός βρόχου μπορούμε να χρησιμοποιήσουμε την εντολή break για να διακόψουμε την εκτέλεση και να βγούμε έξω από το βρόχο. 5

6 Αν θέλουμε να μεταβούμε στην επόμενη εκτέλεση των εντολών του βρόχου, ακόμη και αν υπολείπονται εντολές για να εκτελεστούν στην τρέχουσα εκτέλεση του βρόχου, τότε χρησιμοποιούμε την εντολή continue. Για παράδειγμα το script: #!/bin/sh a=0 while [ "$a" -le 10 ] a=`expr $a + 1` if [ $a -eq 2 -o $a -eq 4 ] ; then continue fi if [ $a -eq 6 ] ; then break fi echo -n "$a " ne θα εκτυπώσει τις τιμές Αυτό θα γίνει γιατί όταν το $a=2 ή (-o σημαίνει or) $a=4 τότε εκτελείται η εντολή continue και αμέσως πάμε στην επόμενη εκτέλεση του βρόχου παραλείποντας τις επόμενες εντολές, ενώ όταν $a=6 τότε εκτελείται η εντολή break και σταματάει η εκτέλεση του πιο κοντινού βρόχου. (C2) Δημιουργήστε το σενάριο φλοιού c2.sh το οποίο εμφανίζει κάποιους αριθμούς από 1 έως 100 με την ακόλουθη σειρά: (TIP: θα χρησιμοποιήσετε την πράξη modulo του expr) (A1) Δημιουργήστε το αρχείο a1-count2.sh σύμφωνα με τον κώδικα που σας δίνεται παρακάτω. Παρατηρήστε ότι το σύμβολο ; μπορεί να χρησιμοποιηθεί για να ενώσει στην ίδια γραμμή πολλαπλές εντολές. Κάποιες εντολές (όπως το και το then) δε χρειάζονται να διαχωριστούν με ; Το συγκεκριμένο πρόγραμμα θα τερματίσει κανονικά; Αν όχι που βρίσκεται το πρόβλημα και πως θα διορθωθεί; #!/bin/sh a=0 ; while [ "$a" -le 10 ] ; if [ $a -eq 2 -o $a -eq 4 ] ; then continue ; fi if [ $a -eq 6 ] ; then break ; fi a=`expr $a + 1` ; echo -n "$a " ; ne ***Δεν υπάρχει ετικέτα goto στα σενάρια φλοιού sh. 6

7 5. H δομή case Μερικές φορές θέλουμε να χωρίζουμε την εκτέλεση ενός script σε τμήματα αναλόγως μιας παραμέτρου. Σε αυτές τις περιπτώσεις χρησιμοποιούμε τη δομή case η οποία έχει την παρακάτω σύνταξη: case word in pattern) commands ;;.. esac όπου word είναι η μεταβλητή που εξετάζουμε, το pattern είτε το στοιχείο ακριβώς που θέλουμε είτε ένα pattern χρησιμοποιώντας τον χαρακτήρα * που είναι απεριόριστο πλήθος οποιονδήποτε χαρακτήρων. Για παράδειγμα: #!/bin/sh read number case $number in 1)echo "You gave me 1" ;; 10*) echo "You have me big number" ;; *) echo "You gave me smt else" ;; esac Εκτελέστε το παραπάνω script και δοκιμάστε τις τιμές aa 1010 και παρατηρήστε τι εκτυπώνει (δοκιμάστε το). 6. Αριθμητικές πράξεις στα σενάρια φλοιού Αν θέλουμε να κάνουμε αριθμητικές πράξεις στις μεταβλητές (π.χ. αύξηση της μεταβλητής κατά 1) μπορούμε να χρησιμοποιήσουμε δύο τρόπους: Με τη χρήση του εξωτερικού προγράμματος expr, το οποίο υποστηρίζει αριθμητικές και λογικές πράξεις (περισσότερα στο man expr) και συντάσσεται ως εξής: expr στοιχείο1 πράξη στοιχείο2. Προσέξτε ότι τα στοιχείο1/στοιχείο2 μπορεί να είναι μεταβλητές ή αριθμοί. Για παράδειγμα expr $a + 1. Συνήθως το αποτέλεσμα του υπολογισμού τοποθετείται σε μια μεταβλητή, οπότε πρέπει να τοποθετήσουμε την εκτέλεση της expr μέσα σε ανάποδο μονό εισαγωγικό όπως: a=`expr $a + 1` Με τη χρήση της εσωτερικής εντολής εκτέλεσης αριθμητικών πράξεων δύο παρενθέσεων ως εξής: a=$(( $a + 1 )). Προσέξτε ότι αμέσως μετά το = χρησιμοποιούμε το δολάριο $ και κολλητά δύο παρενθέσεις ((. Η έκφραση έχει κενά από τις παρενθέσεις. Δώστε την εντολή man sh και πηγαίνετε στη σελίδα που αναφέρει τις αριθμητικές πράξεις που μπορούν να γίνουν με τη χρήση $$(expression) {Τίτλος Παραγράφου Arithmetic Expansion}. 7

8 Πόσες συνολικά πράξεις μπορούν να γίνουν: (Α2) (C3) Δημιουργήστε το σενάριο φλοιού c3.sh το οποίο ζητάει από το χρήστη να πληκτρολογήσει το όνομά του (με τη χρήση της read) και τον αριθμό των επαναλήψεων που θα εκτυπωθεί το όνομά του. Στη συνέχεια εκτυπώνεται το όνομα που έδωσε ο χρήστης τόσες φορές όσες έχει ζητήσει. Κάθε 10 φορές ερωτάται ο χρήστης αν θέλει να συνεχίσει και αν πατήσει Y ή y τότε συνεχίζεται η εκτύπωση, αν πατηθεί N ή n σταματάει, διαφορετικά επαναλαμβάνεται η ερώτηση. (C4) Να κατασκευάσετε το script c4.sh το οποίο θα εκτυπώνει μια σειρά μηνυμάτων ως εξής. Θα ξεκινάει από μια τιμή που δίνει ο χρήστης και θα εκτυπώνει συνεχώς το αλφαριθμητικό Στην αίθουσα υπάρχουν ΧΧ φοιτητές και θα φύγει ένας ενώ μειώνεται η τιμή των φοιτητών. Μόλις φύγουν όλοι οι φοιτητές τότε εμφανίζεται το μήνυμα Στην αίθουσα δεν υπάρχουν φοιτητές και θα τελειώσει. Ο αριθμός των αρχικών φοιτητών θα δίνεται με δύο τρόπους. (α) είτε στη γραμμή εντολών ως 1η παράμετρος είτε (β) σε περίπτωση που δεν ανιχνευτεί παράμετρος στη γραμμή εντολών ή δε δοθεί αριθμός, τότε και μόνο τότε θα εμφανιστεί προτροπή προς το χρήστη και θα ζητηθεί αρχικός αριθμός φοιτητών. Παράδειγμα εκτέλεσης: Στην αίθουσα υπάρχουν 2 φοιτητές και θα φύγει ένας Στην αίθουσα υπάρχουν 1 φοιτητές και θα φύγει ένας Στην αίθουσα δεν υπάρχουν φοιτητές 7. Εκτέλεση εξωτερικών προγραμμάτων Τις περισσότερες φορές θέλουμε στο φλοιό μας να εκτελούμε εξωτερικά προγράμματα, την έξοδο των οποίων να τοποθετούμε σε μεταβλητές. Όπως είδαμε αυτό γίνεται με το να τοποθετήσουμε την εντολή που θέλουμε να εκτελεστεί μέσα σε μονά ανάποδου εισαγωγικά `. Για παράδειγμα η παρακάτω εντολή υπολογίζει έναν τυχαίο αριθμό και τον τοποθετεί στη μεταβλητή ranm : ranm=`od -van -N4 -tu4 < /dev/uranm` Για να διαπιστώσετε το αποτέλεσμα της εντολής, δοκιμάστε να δώσετε κατευθείαν στο φλοιό την εντολή od -van -N4 -tu4 < /dev/uranm χωρίς εισαγωγικά και θα δείτε να σας εκτυπώνεται ένας αριθμός. Αν λοιπόν θέλουμε να τοποθετήσουμε τον τυχαίο αριθμό μέσα σε μια μεταβλητή τότε θα χρησιμοποιήσουμε τα μονά ανάποδα εισαγωγικά όπως προηγουμένως (Για τους πιο περίεργους, αν δώσετε man od θα διαβάσετε τη σελίδα βοήθειας του εξωτερικού προγράμματος od καθώς και τη σημασία των παραμέτρων). 8

9 (C5) Να κατασκευάσετε το script c5.sh το οποίο δημιουργεί μια τιμή με τυχαίο τρόπο (χρησιμοποιώντας την προηγούμενη τεχνική) και ζητάει από το χρήστη να πληκτρολογήσει μια τιμή. Αν η τιμή που πληκτρολογήσει ο χρήστης είναι ίδια τότε σταματάει η εκτέλεση και του εμφανίζει το μήνυμα Συγχαρητήρια το βρήκες. Αν η τιμή που πληκτρολογεί ο χρήστης είναι μικρότερη, του εμφανίζει το μήνυμα Έδωσες μικρή τιμή, διαφορετικά εμφανίζεται το μήνυμα Έδωσες μεγαλύτερη τιμή. ΠΡΟΑΙΡΕΤΙΚΑ: Όταν ο χρήστης μαντέψει το μήνυμα και του εμφανιστεί το συγχαρητήρια, να εμφανίζεται και η προτροπή με τον αριθμό των προσπαθειών: Προσπάθησες 15 φόρες. 8. Τμήματα αλφαριθμητικών με τη χρήση του cut Αν θέλουμε να εμφανίσουμε ένα τμήμα ενός αλφαριθμητικού, τότε μπορούμε να χρησιμοποιήσουμε το εξωτερικό πρόγραμμα cut. Το cut δέχεται δεδομένα με τη χρήση της διασύνδεσης των εντολών δια μέσου της κάθετης γραμμής. Δηλαδή, εντολή1 εντολή2. Στο παράδειγμα αυτό η εντολή1 στέλνει τα δεδομένα αντί στην οθόνη στην εντολή2. Αυτό δημιουργεί τη διαδιεργασιακή επικοινωνία με το όνομα διασωλήνωση. Οι δυο πιο γνωστές λειτουργίες του cut είναι οι εξής: Μπορεί να εμφανίσει ένα τμήμα του αλφαριθμητικού από κάποιο συγκεκριμένο χαρακτήρα ως κάποιον άλλο. Η παράμετρος που χρησιμοποιούμε είναι η -b και μπορούμε είτε να δώσουμε εύρος χαρακτήρων ή συγκεκριμένους χαρακτήρες ή και τα δύο. Για παράδειγμα η εντολή: echo "(unknown-unknown-freebsd)" cut -b 1-3,10 θα εμφανίσει στην οθόνη τους χαρακτήρες 1-3 και τον χαρακτήρα 10, δηλαδή: (unu Μπορεί να εμφανίσει τμήματα ενός αλφαριθμητικού, που χωρίζονται με ένα συγκεκριμένο χαρακτήρα. Χρησιμοποιούμε την παράμετρο -f (αριθμό πεδίου) και -d χαρακτήρας διαχωριστικού. Για παράδειγμα η εντολή : echo "(unknown1:unknown2:freebsd)" cut -f 3 -d: θα εκτυπώσει τη λέξη FreeBSD). Μπορούμε να συνδυάσουμε εντολές cut με τη χρήση του συμβόλου. Για παράδειγμα: echo "(unknown1:unknown2:freebsd)" cut -f 3 -d: cut -b 1-4 θα εκτυπώσει τη λέξη Free. Υποστηρίζονται και άλλοι παράμετροι στη cut. Δείτε man cut για περισσότερες λεπτομέρειες. 9

10 (A3) Στη γραμμή εντολών δώστε echo $PATH η οποία εμφανίζει τη πλήρη διαδρομή αναζήτησης εκτελέσιμων προγραμμάτων. Να κάνετε copy-paste τη διαδρομή που εμφανίζεται. (A4) Να δώσετε δύο παραδείγματα χρήσης της τμηματοποίησης αλφαριθμητικών με τη χρήση της παραμέτρου cut -b για τη μεταβλητή $PATH η οποία έχει ως αποτέλεσμα να απομονώνεται ένα path από όλα αυτά (κάθε path διαχωρίζεται με τον χαρακτήρα : ). Για παράδειγμα αν έχουμε τη διαδρομή /bin:/etc:/usr/bin: τότε θα πρέπει να βρω την εντολή για να εμφανιστεί είτε η /bin (και μόνο αυτή) είτε η /etc (και μόνο αυτή) είτε κάποια άλλη που υπάρχει. (A5) Να δώσετε δύο παραδείγματα χρήσης της τμηματοποίησης αλφαριθμητικών με τη χρήση της παραμέτρου cut -f για τη μεταβλητή $PATH η οποία έχει ως αποτέλεσμα να απομονώνεται ένα path από όλα αυτά (κάθε path διαχωρίζεται με τον χαρακτήρα : ). Για παράδειγμα αν έχουμε τη διαδρομή /bin:/etc:/usr/bin: τότε θα πρέπει να βρω την εντολή για να εμφανιστεί είτε η /bin (και μόνο αυτή) είτε η /etc (και μόνο αυτή) είτε κάποια άλλη που υπάρχει. 9. Ανακατεύθυνση Εξόδου Ως τώρα τα μηνύματα εμφανίζονται στην οθόνη που είναι η προεπιλεγμένη έξοδος. Αν θέλουμε να ανακατευθύνουμε την έξοδο σε κάποιο αρχείο τότε θα χρησιμοποιήσουμε το σύμβολο > ακολουθούμενο από το όνομα αρχείου. Για παράδειγμα δώστε: ls -l /bin και θα εμφανίσετε στην οθόνη τα αρχεία του καταλόγου /bin. Δώστε τώρα: ls -l /bin > lsfile.txt και δε θα εμφανιστεί τίποτα στην οθόνη. Θα τοποθετηθεί η έξοδος μέσα στο αρχείο lsfile.txt. Ανοίξτε το αρχείο lsfile.txt (με την εντολή more lsfile.txt) και επιβεβαιώστε το. 10. Η εντολή exit Αν θέλουμε να τερματίσουμε την εκτέλεση ενός φλοιού, τότε θα δώσουμε την εντολή exit. H σύνταξή της είναι η: exit exitcode όπου exitcode είναι μια προαιρετική παράμετρος που αντιστοιχεί στον αριθμό ΕΧΙΤ_STATUS που θα επιστρέψει στο φλοιό. Η τιμή αυτή είναι η τιμή επιστροφής του προγράμματος. Ο αριθμός επιστροφής του τελευταίου προγράμματος τοποθετείται στην ειδική μεταβλητή $?. Για παράδειγμα, κατασκευάστε το σενάριο testexit.sh : 10

11 #!/bin/sh exit 10 echo Hello exit 20 κάντε το εκτελέσιμο με chmod και εκτελέστε το ως./testexit.sh ; echo $? (A6) Τι θα εκτυπωθεί με την εκτέλεση της εντολής./testexit.sh ; echo $? και γιατί; 11. Περισσότερα για συνθήκες (if) Στο προηγούμενο εργαστήριο είδαμε κάποιες χρήσεις της if. Μπορούμε να τοποθετήσουμε επιπρόσθετα την εντολή elif (=else if) αν θέλουμε να εκτελεστεί κάποια ομάδα εντολών, αν ισχύει μια διαφορετική συνθήκη ή else για οποιαδήποτε άλλη περίπτωση. Η σύνταξη είναι: if [ condition ] ; then command1 elif [ condition ]; then command2 else command3 fi Μπορούμε να κάνουμε έλεγχο ύπαρξης μεταβλητής με την παράμετρο -z. Δηλαδή, αν έχουμε τη συνθήκη [ -z $variable ] τότε αυτή θα επιστρέψει αληθή τιμή αν η μεταβλητή αυτή έχει κάποια στοιχεία. Μπορούμε μέσα στις αγκύλες να τοποθετήσουμε περισσότερες εκφράσεις και να τις συνδέσουμε είτε με τη λογική πράξη AND είτε με τη λογική πράξη OR. Ο παρακάτω πίνακας εμφανίζει τους τρόπους με τους οποίους μπορούμε να το κάνουμε αυτό: Οι πιο συχνά χρησιμοποιούμενες εκφράσεις χρησιμοποιούν τις λέξεις που εμφανίζονται στον παρακάτω πίνακα για τις αριθμητικές συγκρίσεις: 11

12 Εκτός από αριθμητικές συγκρίσεις μπορούν να γίνουν και συγκρίσεις αλφαριθμητικών, με τη χρήση του =. Για παράδειγμα, $var1 = test. Ενώ με τη χρήση του!= συγκρίνουμε αν είναι διαφορετικά, για παράδειγμα $var1!= test. Επίσης υπάρχει η ειδική μεταβλητή $# που είναι ο αριθμός των παραμέτρων γραμμής εντολών που έχει δώσει ο χρήστης. (C6) Να κατασκευάσετε το αρχείο c6.sh το οποίο δέχεται μια παράμετρο και μόνο μια. Αν ο χρήστης δώσει μια παράμετρο του εμφανίζεται το μήνυμα OK only 1, αν δε δώσει κάποια παράμετρο του εμφανίζεται το μήνυμα Νο parameter, αν δώσει πολλαπλές παραμέτρους τότε εμφανίζεται το μήνυμα Τοο many parameters. 12. Περισσότερα για βρόχους επανάληψης Ο βρόχος while μπορεί να χρησιμοποιηθεί εκτός από τη βασική σύνταξη για να διαβάζει γραμμές από ένα αρχείο και για κάθε γραμμή να εκτελείται με είσοδο αυτή τη γραμμή. Αυτό επιτυγχάνεται με δύο τρόπους: με το να δώσουμε είσοδο στο βρόχο με τη διασωλήνωση προγραμμάτων. Σύνταξη: cat inputfile.txt while read variable ne ή με το να δώσουμε είσοδο στο βρόχο από αρχείο άμεσα (συνιστάται). Σύνταξη: while read variable... ne < inputfile.txt Με τις παραπάνω γραμμές και με τους δυο τρόπους διαβάζεται μια γραμμή από το αρχείο inputfile.txt και τοποθετείται στη μεταβλητή variable. Στη συνέχεια εκτελείται ο βρόχος με τις εντολές που βρίσκονται ανάμεσα στα και ne. Μόλις τελειώσει η εκτέλεση των εντολών, διαβάζεται η επόμενη γραμμή και τοποθετείται εκ νέου στη μεταβλητή variable και επαναλαμβάνεται η όλη διαδικασία. Όταν δεν υπάρχουν άλλες γραμμές, τότε η εκτέλεση του βρόχου σταματάει. Μπορούμε μετά να χρησιμοποιήσουμε μέσα στο βρόχο την εντολή cut για να αναλύσουμε τη γραμμή. Για παράδειγμα: 12

13 cat inputfile.txt while read var tmp1=`echo $var cut -b 1-4` if [ $tmp1 = 1024 ] ; then echo 1024 detected at possition 1-4 fi ne Στο παραπάνω κομμάτι κώδικα μπορούμε να τοποθετήσουμε την cut μέσα στη συνθήκη ως εξής (και θα έχει την ίδια λειτουργικότητα): if [ `echo $var cut -b 1-4` = 1024 ] ; then (C7) Να κατασκευάσετε το αρχείο c7.sh το οποίο θα δέχεται μια και μόνο μια παράμετρο από τη γραμμή εντολών. Η παράμετρος αυτή θα είναι όνομα αρχείου (ο έλεγχος ύπαρξης αρχείου γίνεται με το γράμμα -e στη συνθήκη if. Αν δεν υπάρχει αυτό το αρχείο να εμφανίζεται κατάλληλο μήνυμα και να τερματίζει το πρόγραμμα (θα χρησιμοποιήσετε την if). Το σενάριο φλοιού θα ανοίγει το αρχείο και θα βρίσκει συνολικά πόσοι χρήστες έχουν σύνδεση 1024, πόσοι 2048 και πόσοι Το αρχείο που θα χρησιμοποιήσετε θα έχει γραμμές της μορφής είναι το: John Papadakis/8192/Kavala Peter O Toul/1024/Thessaloniki John Pepas/512/Thessaloniki Tasos K/8192/Kilkis Jason F/512/Kozani (A7) Χρησιμοποιώντας τη βοήθεια της ls βρείτε τι κάνει η παράμετρος -s. Εκτελέστε ls -l /bin και ls -l -s /bin (= ίδια εντολή με ls -ls /bin). Τι κάνει η παράμετρος -s; (C8) Να κατασκευάσετε το αρχείο c8.sh το οποίο θα κάνει ls -ls /bin και θα προσθέτει όλους τους αριθμούς μεγέθους μπλοκ που βρίσκει. Στο τέλος θα αναγράφεται ο συνολικός αριθμός από μπλοκ. Να συγκριθεί με το μέγεθος που αναφέρει η εντολή ls -ls /bin more στην πρώτη γραμμή. Είναι το ίδιο; Ναι/Όχι και γιατί. 13. Το πρόγραμμα grep (A' μέρος) Από τα πιο σημαντικά προγράμματα του UNIX είναι το grep (και τα παράγωγα, όπως το egrep, pgrep, fgrep), το οποίο μπορεί και βρίσκει τις γραμμές που συμφωνούν με κάποια πρότυπα, που ονομάζονται κανονικές εκφράσεις και θα αναλυθούν σε επόμενο εργαστήριο. Για παράδειγμα αν θέλουμε να βρούμε τα αρχεία στον κατάλογο /bin που έχουν τους χαρακτήρες name στο όνομα, θα δώσουμε την εντολή (δοκιμάστε το). 13

14 ls -l /bin grep name Αν θέλουμε να δούμε οπτικά σε ποιο σημείο βρέθηκε το συγκεκριμένο πρότυπο θα δώσουμε την παράμετρο -color ως εξής (δοκιμάστε το): ls -l /bin grep --color name Αν θέλουμε να μας μετρήσει πόσες γραμμές ταιριάζουν στο πρότυπο θα χρησιμοποιήσουμε το -c (δοκιμάστε το): ls -l /bin grep -c name (C9) Να κατασκευάσετε το αρχείο c9.sh το οποίο δέχεται μια παράμετρο από τη γραμμή εντολής. Η παράμετρος θα αντιστοιχεί σε κάποιον κατάλογο, π.χ. /bin θα κάνει ls -l $1 και θα βρίσκει πόσες γραμμές έχουν τουλάχιστον ένα a και πόσες γραμμές έχουν τουλάχιστον ένα e και θα εκτυπώνει είτε το μήνυμα more lines with e είτε το μήνυμα more lines with a είτε το μήνυμα same number of lines. Μπορείτε αντί για a και e, να επιλέξετε οποιαδήποτε άλλα δυο γράμματα. Για παράδειγμα:./c9.sh /bin 14

Λειτουργικά Συστήματα

Λειτουργικά Συστήματα Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:02 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Λειτουργικά Συστήματα

Λειτουργικά Συστήματα Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:01 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Λειτουργικά Συστήματα

Λειτουργικά Συστήματα Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:03 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 06 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No 05 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:03 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 03 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:04 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Δομημένος Προγραμματισμός Ενότητα 5(γ): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:06 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Λειτουργικά. Συστήματα Ι. Φ ρ ο ν τ ι σ τ ή ρ ι ο. Αριστείδης Ηλίας. Εργαστήριο Ηλεκτρονικών Υπολογιστών

Λειτουργικά. Συστήματα Ι. Φ ρ ο ν τ ι σ τ ή ρ ι ο. Αριστείδης Ηλίας. Εργαστήριο Ηλεκτρονικών Υπολογιστών Λειτουργικά Αριστείδης Ηλίας Συστήματα Ι Φ ρ ο ν τ ι σ τ ή ρ ι ο Shell Scripting Εισαγωγή Ένα shell script είναι μια λίστα εντολών που εκτελούνται ακολουθιακά Εκτελούνται ανάλογα με το κέλυφος και για

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 04 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ ARDUINO Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Προγραμματισμός H/Y Ενότητα 2: Εντολές ελέγχου ροής. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Προγραμματισμός H/Y Ενότητα 2: Εντολές ελέγχου ροής. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Προγραμματισμός H/Y Ενότητα 2: Εντολές ελέγχου ροής Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

Διαβάστε περισσότερα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι Λύβας Χρήστος chrislibas@ssl-unipi.gr Μανουσόπουλος Χρήστος cman@unipi.gr Αρχική επιμέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος >_ ΔΕΣΜΕΥΜΕΝΑ ΟΝΟΜΑΤΑ +- Υπάρχουν ορισμένες

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:05 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:08 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Λειτουργικά Συστήματα

Λειτουργικά Συστήματα Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:05 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Δομημένος Προγραμματισμός Ενότητα 4(β): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Shell Scripts: loops / if / test

Shell Scripts: loops / if / test Shell Scripts: loops / if / test Loops with for while until for variable in list_of_values ne while εντολή (επιτυχής) ne until εντολή (επιτυχής) ne For in exi times apo ayti ti lista in 1 2 alla kai alles

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Δομημένος Προγραμματισμός Ενότητα 3(γ): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Ψηφιακή Σχεδίαση Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http:

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 2 -ΑΚΥΡΩΣΗ ΣΗΜΑΣΙΑΣ ΕΙΔΙΚΩΝ ΧΑΡΑΚΤΗΡΩΝ

ΑΣΚΗΣΗ 2 -ΑΚΥΡΩΣΗ ΣΗΜΑΣΙΑΣ ΕΙΔΙΚΩΝ ΧΑΡΑΚΤΗΡΩΝ -n δεν αφήνει γραμμή SCRIPTS FILES ΟΛΑ ΤΑ SCRIPT les πρέπει να είναι ΕΚΤΕΛΕΣΙΜΑ: chmod +x myscript Παράδειγμα ενός απλού script με όνομα myscript "This is my rst script" -n "I am the user: " whoami Summary7

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:05. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:05. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Ψηφιακή Σχεδίαση Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:05 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http:

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 07 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ I

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ I ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ I Πιτροπάκης Νικόλαος Υποψήφιος Διδάκτορας Contact: npitrop@unipi.gr Υφαντόπουλος Νικόλαος Υποψήφιος Διδάκτορας Contact: nifantop@unipi.gr If at first you don't succeed, call it version

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:16 INSPECTOR Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 02 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Δομημένος Προγραμματισμός Ενότητα 5: Εντολές επανάληψης Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 5 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Εκφώνηση άσκησης. Η Κρεμάλα σαν παιχνίδι. Ανάλυση. Μέρος Α Αναφoρά, ανάλυση τακτικής. Υλοποίηση του παιχνιδιού «Κρεμάλα»

Εκφώνηση άσκησης. Η Κρεμάλα σαν παιχνίδι. Ανάλυση. Μέρος Α Αναφoρά, ανάλυση τακτικής. Υλοποίηση του παιχνιδιού «Κρεμάλα» ΚΡΕΜΑΛΑ Project 7 1 Εκφώνηση άσκησης Υλοποίηση του παιχνιδιού «Κρεμάλα» Το Project αυτό συνίσταται στην κατασκευή ενός προγράμματος σεναρίου κελύφους, που θα υλοποιεί το γνωστό παιχνίδι «Κρεμάλα» με δυνατότητα

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:11 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Δομημένος Προγραμματισμός Ενότητα 6(γ): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Δομημένος Προγραμματισμός Ενότητα 2(γ): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Αβδέλαρου Κωνσταντίνα

Αβδέλαρου Κωνσταντίνα ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΜΑΤΙΚΗΣ Αβδέλαρου Κωνσταντίνα 1 η Εργασία στο μάθημα Λειτουργικά Συστήματα Ταύρος, 9 Δεκεμβρίου 2014 Άσκηση 1.1 Το shell script που δημιουργήθηκε είναι:

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 5: Εντολές αλλαγής ροής. Διακλάδωση χωρίς συνθήκη. Διακλάδωση με συνθήκη. Δρ. Μηνάς Δασυγένης

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΝΔΕΙΚΤΙΚΕΣ ΕΡΩΤΗΣΕΙΣ ΕΡΓΑΣΤΗΡΙΟΥ No11 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Διαδικασιακός Προγραμματισμός

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 6 η Βρόχοι Επανάληψης Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή

Διαβάστε περισσότερα

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Δομημένος Προγραμματισμός Ενότητα 5(α): Εργαστηριακή Άσκηση Αναπλ. Καθηγητής: Κωνσταντίνος Στεργίου Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική Ενότητα 4: Δομές Ελέγχου Νικόλαος Στεργιούλας Τμήμα Φυσικής Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Υπολογιστικά Συστήματα

Υπολογιστικά Συστήματα Υπολογιστικά Συστήματα Ενότητα 4: Visual Basic for Applications (VBA) Δομές Επανάληψης και Επιλογής Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Προγραμματισμός Διαδικτύου Ασκήσεις Εργαστηρίου

Προγραμματισμός Διαδικτύου Ασκήσεις Εργαστηρίου Προγραμματισμός Διαδικτύου Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 11 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 3: Καταχωρητές, Τμήματα, Διευθυνσιοδότηση Μνήμης, SEGMENT, MOV, ADD, SUB, INT, TITLE, LEA

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:09 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Εισαγωγή στην Πληροφορική & τον Προγραμματισμό Ενότητα 7 η : Εντολές Επανάληψης Ι. Ψαρομήλιγκος Χ. Κυτάγιας Τμήμα Διοίκησης Επιχειρήσεων

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Έλεγχος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Σχεσιακοί Τελεστές και Ισότητας Ένα πρόγραμμα εκτός από αριθμητικές πράξεις

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 13 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής

Διαβάστε περισσότερα

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ Εισαγωγή στην γλώσσα προγραμματισμού Ακαδημαϊκό έτος 2016-2017, Εαρινό εξάμηνο Οι σημειώσεις βασίζονται στα συγγράμματα: A byte of Python (ελληνική

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Προγραμματισμός Η/Υ 1 (Εργαστήριο) Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 6: Εντολές επανάληψης Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 5ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 Η ΕΝΤΟΛΗ for Με την εντολή for δημιουργούμε βρόχους επανάληψης σε

Διαβάστε περισσότερα

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:01. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:01. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Ψηφιακή Σχεδίαση Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:01 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http:

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 6: inc, dec, loop, jcxz, dup, displacement Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Συναρτήσεις θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Προγραμματισμός Η/Υ Ενότητα 3 η : Η Γλώσσα Προγραμματισμού VB.NET (2 ο Μέρος) Ι. Ψαρομήλιγκος Χ. Κυτάγιας Τμήμα Λογιστικής & Χρηματοοικονομικής

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Εργαστήριο

Αρχιτεκτονική Υπολογιστών Εργαστήριο Αρχιτεκτονική Υπολογιστών Εργαστήριο Ενότητα: ΠΑΡΑΔΕΙΓΜΑ ΑΠΟΣΦΑΛΜΑΤΩΣΗΣ Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

for for for for( . */

for for for for( . */ Εισαγωγή Στον Προγραµµατισµό «C» Βρόχοι Επανάληψης Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Ο βρόχος for Η εντολή for χρησιµοποιείται

Διαβάστε περισσότερα

Μερικές άλλες χρήσιμες εντολές

Μερικές άλλες χρήσιμες εντολές 1 Μερικές άλλες χρήσιμες εντολές whoami (Εμφανίζει το όνομα του τρέχοντος χρήστη) pwd (Εμφανίζει το όνομα του τρέχοντος καταλόγου) cat text file name (Παρουσιάζει στην οθόνη το περιεχόμενο ενός αρχείου

Διαβάστε περισσότερα

Οι εντολές ελέγχου της ροής ενός προγράμματος.

Οι εντολές ελέγχου της ροής ενός προγράμματος. Κεφάλαιο ΙΙI: Οι εντολές ελέγχου της ροής ενός προγράμματος 31 Εντολές ελέγχου της ροής Στο παρόν κεφάλαιο ασχολούμαστε με την σύνταξη των εντολών της C οι οποίες εισάγουν λογική και ελέγχουν την ροή εκτέλεσης

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι κ ΠΕΤΑΛΙΔΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 01 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Εντολή Δεδομένα Περιεχόμενα μετά την εκτέλεση 1 read(x) 122 x= 2 read(a,b,c) 133 244 355 a= b= c= 3 read(d,e) 166 277 3888

Εντολή Δεδομένα Περιεχόμενα μετά την εκτέλεση 1 read(x) 122 x= 2 read(a,b,c) 133 244 355 a= b= c= 3 read(d,e) 166 277 3888 ΕΡΩΤΗΣΕΙΣ 1. Να αναφέρετε μερικά από τα ιδιαίτερα χαρακτηριστικά της Pascal. 2. Ποιο είναι το αλφάβητο της Pascal; 3. Ποια είναι τα ονόματα-ταυτότητες και σε τι χρησιμεύουν; 4. Σε τι χρησιμεύει το συντακτικό

Διαβάστε περισσότερα

Ο βρόχος for Η εντολή for χρησιμοποιείται για τη δημιουργία επαναληπτικών βρόχων στη C

Ο βρόχος for Η εντολή for χρησιμοποιείται για τη δημιουργία επαναληπτικών βρόχων στη C Ο βρόχος for Η εντολή for χρησιμοποιείται για τη δημιουργία επαναληπτικών βρόχων στη C Επαναληπτικός βρόχος καλείται το τμήμα του κώδικα μέσα σε ένα πρόγραμμα, το οποίο εκτελείται από την αρχή και επαναλαμβάνεται

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 9 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Πληροφορική ΙΙ Θεματική Ενότητα 5

Πληροφορική ΙΙ Θεματική Ενότητα 5 Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Πληροφορική ΙΙ Θεματική Ενότητα 5 Λογικοί Τελεστές Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:00 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Εντολές ελέγχου ροής if, for, while, do-while

Εντολές ελέγχου ροής if, for, while, do-while Εντολές ελέγχου ροής if, for, while, do-while 1 Μαρτίου 014 1 Εντολές εκτέλεσης υπό συνθήκη Μπορούμε να εκτελέσουμε εντολές της γλώσσας σε περίπτωση που κάποια συνθήκη ισχύει χρησιμοποιώντας την εντολή

Διαβάστε περισσότερα

Ηλεκτρονικοί Υπολογιστές

Ηλεκτρονικοί Υπολογιστές ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 8: Επαναληπτικές Εντολές στη C++ Ζαχαρούλα Ανδρεοπούλου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό με C++

Εισαγωγή στον Προγραμματισμό με C++ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Εισαγωγή στον Προγραμματισμό με C++ Ενότητα # 2: Εντολή If Κωνσταντίνος Κουκουλέτσος Τμήμα Αυτοματισμού Άδειες Χρήσης Το παρόν

Διαβάστε περισσότερα

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Εντολές Ελέγχου & Επανάληψης

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Εντολές Ελέγχου & Επανάληψης Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Εντολές Ελέγχου & Επανάληψης Εντολές Ελέγχου 2 Γενικά Εντολές λήψης αποφάσεων Επιτρέπουν στο πρόγραμμα να εκτελεί διαφορετικές

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 10 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Υπολογιστές Ι. Άδειες Χρήσης. Δομή του προγράμματος. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Υπολογιστές Ι. Άδειες Χρήσης. Δομή του προγράμματος. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης Υπολογιστές Ι Δομή του προγράμματος Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 6 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ

ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ Ενότητα 11: Καθολική μηχανή Turing Ρεφανίδης Ιωάννης Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ. Ενότητα 5: Εντολές Επανάληψης

Προγραμματισμός Η/Υ. Ενότητα 5: Εντολές Επανάληψης Προγραμματισμός Η/Υ Ενότητα 5: Νίκος Καρακαπιλίδης, Καθηγητής Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών Σκοποί ενότητας Έλεγχος της ροής του προγράμματος

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό με C++

Εισαγωγή στον Προγραμματισμό με C++ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Εισαγωγή στον Προγραμματισμό με C++ Ενότητα # 3: Επαναλήψεις Κωνσταντίνος Κουκουλέτσος Τμήμα Αυτοματισμού Άδειες Χρήσης Το παρόν

Διαβάστε περισσότερα

Διάλεξη 1. Πράξεις Τελεστές Έλεγχος Ροής

Διάλεξη 1. Πράξεις Τελεστές Έλεγχος Ροής Διάλεξη 1 Πράξεις Τελεστές Έλεγχος Ροής Διοργάνωση : ΚΕΛ ΣΑΤΜ Διαφάνειες: Skaros, MadAGu Παρουσίαση: MadAGu Άδεια: Creative Commons 3.0 Αριθμητικοί Τελεστές- Αριθμητικές Πράξεις 2 Internal use only Αριθμητικοί

Διαβάστε περισσότερα

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης Εργαστήριο 6 Εντολές Επανάληψης Η δομή Επιλογής στη PASCAL H δομή Επανάληψης στη PASCAL. Ρεύμα Εισόδου / Εξόδου.. Ρεύμα Εισόδου / Εξόδου. To πρόγραμμα γραφικών gnuplot. Γραφικά στη PASCAL. Σκοπός 6.1 ΕΠΙΔΙΩΞΗ

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: Μέτρηση χρόνου τοίχου κατά POSIX Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Προγραμματισμός Η/Υ 1 (Εργαστήριο) Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 5: Εντολές συνθήκης Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι κ. ΠΕΤΑΛΙΔΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: (Μέρος Β ) Λειτουργικό Σύστημα Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

Λειτουργικά Συστήματα

Λειτουργικά Συστήματα Λειτουργικά Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:09 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι κ. ΠΕΤΑΛΙΔΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ ANDROID-DEVKIT No:01 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 7: Αποκωδικοποίηση Εντολής x86 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ II. Υφαντόπουλος Νικόλαος Υποψήφιος Διδάκτορας Contact:

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ II. Υφαντόπουλος Νικόλαος Υποψήφιος Διδάκτορας Contact: ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ II Υφαντόπουλος Νικόλαος Υποψήφιος Διδάκτορας Contact: nifantop@unipi.gr Operating System (O.S) O.S Types Windows 1981 Macintosh 1984 Linux 1991 Unix 1969 ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΤΟΥ UNIX

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Ενότητα: 11Η ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Δρ. ΠΑΝΤΕΛΗΣ ΑΓΓΕΛΙΔΗΣ Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα 5: Εντολές επανάληψης Κουκουλέτσος Κώστας Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστικών Συστημάτων

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:02 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 08 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 3: Έλεγχος ροής προγράμματος

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 3: Έλεγχος ροής προγράμματος ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 3: Έλεγχος ροής προγράμματος Μιχάλης Δρακόπουλος Σχολή Θετικών επιστημών Τμήμα Μαθηματικών ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (Java) Ενότητα 3 ΕΛΕΓΧΟΣ ΡΟΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ Ι. Ελεγκτές συνθηκών ή περιπτώσεων:

Διαβάστε περισσότερα

Περιεχόμενα ΜΤ Τυχαίας Προσπέλασης Θεωρία Υπολογισμού Ενότητα 23: Μηχανές Turing Τυχαίας Προσπέλασης Επ. Καθ. Π. Κατσαρός Τμήμα Πληροφορικής Επ. Καθ.

Περιεχόμενα ΜΤ Τυχαίας Προσπέλασης Θεωρία Υπολογισμού Ενότητα 23: Μηχανές Turing Τυχαίας Προσπέλασης Επ. Καθ. Π. Κατσαρός Τμήμα Πληροφορικής Επ. Καθ. Θεωρία Υπολογισμού Ενότητα 23: Μηχανές Turing Τυχαίας Προσπέλασης Τμήμα Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως

Διαβάστε περισσότερα

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:14 - ADVISOR Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών

Διαβάστε περισσότερα

wc -l <file1 10 ή να μετρήσω πόσες γραμμές δίνει μια οποιαδήποτε άλλη εντολή π.χ. η finger : finger wc -l 8

wc -l <file1 10 ή να μετρήσω πόσες γραμμές δίνει μια οποιαδήποτε άλλη εντολή π.χ. η finger : finger wc -l 8 Τελευταίες σημειώσεις - 2016 Μεταβλητές Βάζουμε μεταβλητές πχ για πιο ευκρινές πρόγραμμα (προτιμήστε μικρά γράμματα και όχι ονόματα εντολών) πχ. filename="$1" (αποφύγετε το file="$1" υπάρχει εντολή file

Διαβάστε περισσότερα

Επαναληπτικές Ασκήσεις

Επαναληπτικές Ασκήσεις Επαναληπτικές Ασκήσεις Δημιουργήστε ένα φάκελο test, κάτω από το home directory του χρήστη (~). ~ test z1 z2 z3 z4 z5 z6 z7 a1.txt a2.txt a3.txt a4.txt Σχήμα 1 1. Μέσα στον test, δημιουργείστε με χρἠση

Διαβάστε περισσότερα

ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Τμημα Πληροφορικης και Τηλεματικης Τσάμη Παναγιώτα ΑΜ: 20833 ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ Άσκηση 1 Αθήνα 13-12-2011 Αναφορά Ενότητα 1 A Δημιουργήστε στο φλοιό 3 εντολές (alias) που η

Διαβάστε περισσότερα

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Σχεδίαση με Ηλεκτρονικούς Υπολογιστές Ενότητα # 7: Εργαστήριο 7: Σχεδίαση χάρτη από μετρήσεις Καθηγητής Ιωάννης Γ. Παρασχάκης Δρ. Δημήτριος

Διαβάστε περισσότερα

Μέρος 2 Κατασκευή Συντακτικού Αναλυτή

Μέρος 2 Κατασκευή Συντακτικού Αναλυτή Αντίρριο, 05/04/2017 Προδιαγραφές Εργαστηριακής Εργασίας για το μάθημα «Μεταγλωττιστές» To δεύτερο μέρος της εργασίας έχει ως στόχο την ανάπτυξη του συντακτικού αναλυτή με χρήση του bison / byacc. Στο

Διαβάστε περισσότερα