ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #0
«Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #0 2 Γενικά Η C είναι μιας γενικής χρήσης γλώσσα προγραμματισμού. Είχε συνδεθεί στενά με το σύστημα UNIX, μιας και τόσο αυτό όσο και τα περισσότερα προγράμματα που τρέχουν σε αυτό είναι γραμμένα σε C. Ωστόσο, η C δεν είναι άμεσα συνδεδεμένη με το συγκεκριμένο λειτουργικό σύστημα καθώς νεότερες εκδόσεις της επιτρέπουν τη σύνταξη, μεταγλώττιση και εκτέλεση προγραμμάτων σε διαφορετικά λειτουργικά συστήματα (DOS, MS Windows, OS/2). Έτσι, στις δεκαετίες 80 και 90 αναπτύχθηκαν διάφορες «πλατφόρμες» υλοποίησης της C, καθώς και της εξέλιξής της C++ (Borland C\C++, Turbo C for Windows, Dev C++ κ.λ.π.). Στα πλαίσια της εργαστηριακής διδασκαλίας του μαθήματος «Προγραμματισμός Η/Υ» θα ασχοληθούμε με την ανάπτυξη προγραμμάτων χρησιμοποιώντας το συντακτικό της C όπως διατυπώνεται από το πρότυπο ANSI. Στόχος του φυλλαδίου αυτού, είναι η εξοικείωση με τη διαδικασία συγγραφής, αποθήκευσης, μεταγλώττισης και εκτέλεσης προγραμμάτων σε C, στα πλαίσια του λογισμικού που θα χρησιμοποιηθεί στα εργαστήρια του μαθήματος (τα οποία θα γίνονται στο Υπολογιστικό Κέντρο του Τμήματος). Για το σκοπό αυτό, παραθέτονται οδηγίες για τεχνικά ζητήματα που θα πρέπει να γνωρίζει ο φοιτητής προκειμένου να μπορέσει να εκπονήσει τις εργασίες που θα του ζητηθούν κατά τη διάρκεια του εξαμήνου. Επεξεργαστής Κειμένου (Text Editor) Ο επεξεργαστής κειμένου, είναι ένα πρόγραμμα που μας επιτρέπει να δημιουργούμε αρχεία κειμένου, να τα αποθηκεύουμε, να τα ανακτούμε και να τα τροποποιούμε με τη χρήση συγκεκριμένων επιλογών που μας παρέχει. Η χρήση του στη συγγραφή προγραμμάτων έγκειται στο ότι αποτελεί το μέσο με το οποίο θα γράφονται οι εντολές που απαρτίζουν ένα τυπικό πρόγραμμα σε C. Αφού ο χρήστης ολοκληρώσει την συγγραφή του προγράμματος, αποθηκεύει το αρχείο του δίνοντάς του ένα όνομα της μορφής <όνομα_αρχείου.c> (με άλλα λόγια, δίνει στο αρχείο όποιο όνομα θέλει, φροντίζοντας όμως η κατάληξη να είναι.c ). Στην παρακάτω εικόνα βλέπουμε το περιβάλλον εργασίας ενός απλού επεξεργαστή κειμένου (Notepad for Windows). Σχ. 1 Το περιβάλλον εργασίας του Notepad. Προσέξτε ότι τo αρχείο έχει κατάληξη.c
«Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #0 3 Μόλις ολοκληρωθεί το πρώτο στάδιο, δηλαδή η συγγραφή και η αποθήκευση του προγράμματος, είμαστε έτοιμοι να εκτελέσουμε την διαδικασία μεταγλώττισής (μετάφρασης) του. Για να γίνει αυτό, πρέπει να μεταβούμε σε περιβάλλον UNIX, έτσι ώστε να μπορέσουμε να χρησιμοποιήσουμε τον μεταγλωττιστή gcc που παρέχεται από το λειτουργικό αυτό σύστημα. Ο εξομοιωτής του περιβάλλοντος Unix (CygWin Unix Emulator) Ο όρος «εξομοιωτής» αφορά ένα σύνολο προγραμμάτων που δημιουργούν (εικονικά) το περιβάλλον και τις λειτουργίες άλλων συστημάτων. Στην περίπτωσή μας, με τον όρο «CygWin Unix Emulator» εννοούμε την δημιουργία (μέσω του προγράμματος CygWin), του περιβάλλοντος Unix στον προσωπικό μας υπολογιστή που έχει ως βασικό λειτουργικό σύστημα το MS Windows (95, 98, Me, 2000, NT, XP). Πρέπει να σημειωθεί πως το CygWin είναι ένα freeware πρόγραμμα και μπορεί να βρεθεί στο link που αναφέρεται στο Παράρτημα (Β) του τετραδίου αυτού (το περιβάλλον αυτό υπάρχει και στο CD που θα σας διανεμηθεί μαζί με το βιβλίο του μαθήματος). Η διαδικασία εγκατάστασης διαφέρει από τη συνήθη πρακτική άλλων προγραμμάτων. Για την αποφυγή δυσλειτουργιών από τη μη σωστή εγκατάσταση του πακέτου προγραμμάτων, θα πρέπει να ακολουθηθούν αυστηρά τα βήματα που περιγράφονται στο Παράρτημα (Α) του τετραδίου αυτού. Μεταγλώττιση Προγράμματος (Program Compilation) με χρήση του μεταγλωττιστή gcc μέσω του Unix Emulator - CygWin Ο όρος «Μεταγλώττιση Προγράμματος» σχετίζεται με τον έλεγχο ορθότητας στην σύνταξη των εντολών που περιέχονται στο πρόγραμμα που υλοποιούμε. Πρέπει να σημειωθεί πως ο μεταγλωττιστής (compiler) ανιχνεύει συντακτικά σφάλματα (syntax errors), δηλαδή σφάλματα που προέρχονται από λανθασμένη χρήση εντολών, δηλώσεων μεταβλητών, τελεστών κ.α. Λογικά σφάλματα (σφάλματα που οφείλονται σε λάθος σχεδιασμό του προγράμματος), δεν ανιχνεύονται από τον μεταγλωττιστή με αποτέλεσμα το πρόγραμμα να είναι μεν συντακτικά ορθό, αλλά να παράγει λάθος αποτελέσματα. Το επόμενο βήμα είναι η εκτέλεση της μεταγλώττισης με τη χρήση του προγράμματος gcc από τη γραμμή εντολών του Unix 1. Η μεταγλώττιση του προγράμματος γίνεται με την ακόλουθη εντολή: $ gcc g όνομα_αρχείου.c -o όνομα_εκτελέσιμου_αρχείου Το όνομα του εκτελέσιμου αρχείου που επιλέγεται από το χρήστη είναι συνήθως το ίδιο με το αρχείου του πηγαίου κώδικα (για λόγους ευκολίας στην αναγνώριση των σχετικών αρχείων). Αν ο μεταγλωττιστής δεν ανακαλύψει λάθη στον πηγαίο κώδικα 2 τότε εμφανίζει πάλι τη γραμμή εντολών και 1 Με τη χρήση του εξομοιωτή του περιβάλλοντος UNIX, CygWin. 2 Αρχείο Πηγαίου Κώδικα: Αρχείο γραμμένο σε κάποια γλώσσα προγραμματισμού.
«Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #0 4 περιμένει από το χρήστη να εκτελέσει το πρόγραμμα που δημιουργήθηκε με την μεταγλώττιση (στη συγκεκριμένη περίπτωση το πρόγραμμα test). Σχ. 2. Η μεταγλώττιση του προγράμματος ήταν επιτυχής και δημιουργήθηκε το αρχείο test.exe Σε περίπτωση που η μεταγλώττιση αποτύχει, αν δηλαδή ο πηγαίος κώδικας περιέχει λάθη, τότε ο μεταγλωττιστής θα εμφανίσει στον χρήστη τον αριθμό γραμμής στην οποία εντόπισε το λάθος, καθώς και μία σύντομη επεξήγηση του συντακτικού κανόνα που παραβιάστηκε και δεν θα επιτρέψει τη δημιουργία εκτελέσιμου προγράμματος 3. Ο χρήστης τότε είναι υποχρεωμένος να ανοίξει το αρχείο μέσω του Notepad και αφού διορθώσει τον κώδικα στα σημεία που εντοπίστηκαν τα λάθη (και σώσει τη νέα version του αρχείου), στη συνέχεια να επαναλάβει τη διαδικασία έως ότου η μεταγλώττιση του αρχείου να μην παρουσιάζει κανένα σφάλμα. Σχ. 3 Κατά τη μεταγλώττιση του προγράμματος παρουσιάστηκαν συντακτικά σφάλματα, λόγω παράλειψης του διαχωριστικού εντολών (ερωτηματικού) στην γραμμή 8.. 3 Εκτελέσιμο Πρόγραμμα: Το αρχείο που δημιουργείται μετά από τη μεταγλώττιση του Πηγαίου Κώδικα και περιέχει εντολές σε γλώσσα μηχανής, που «καταλαβαίνει» ο υπολογιστής.
«Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #0 5 Αποσφαλμάτωση (Debugging) και Εκτέλεση του προγράμματος (Program Execution). Στην περίπτωση που το πρόγραμμα εμφανίζει λογικά σφάλματα (π.χ. λάθος υπολογισμούς) μπορούμε να καλέσουμε το «εργαλείο αποσφαλμάτωσης» (debugger). Αυτό καλείται με την εντολή: $ gdb όνομα_αρχείου Θα εμφανιστεί τότε ένα (παραθυρικό) περιβάλλον που θα περιέχει τον πηγαίο κώδικα σε αριθμημένες γραμμές και θα διαθέτει κουμπιά επιλογών για «βήμα προς βήμα» εκτέλεση του προγράμματος, εμφάνιση των τιμών των καταχωρητών (registers), των μεταβλητών (local variables), κ.α. Ο debugger παρέχει τη δυνατότητα στον προγραμματιστή να εστιάσει την προσοχή του στα σημεία του προγράμματος που εμφανίζονται λογικά σφάλματα, παρακολουθώντας τις παραμέτρους εκείνες που εμπλέκονται στην εκτέλεση του προγράμματος. Σχ. 4 Το περιβάλλον εργασίας του Debugger. Παρατηρήστε πως ο κώδικας εμφανίζεται σε μορφή Πηγαίου (source code) και σε μορφή Assembly. Τέλος, μόλις ο προγραμματιστής εντοπίσει τα σφάλματα στον πηγαίο κώδικα θα πρέπει να διορθώσει το πρόγραμμα μέσω του Notepad, να το επαναμεταγλωττίσει και να επαναλάβει την όλη διαδικασία από την αρχή. Σημειώνεται ότι θα πρέπει, κάθε φορά που θέλουμε να διορθώσουμε το πρόγραμμά μας, να «κλείνουμε» τον debugger έτσι ώστε αν χρειαστεί να τον ξανακαλέσουμε να περιέχει την ενημερωμένη έκδοση του προγράμματός μας. Στο σημείο αυτό είμαστε έτοιμοι να εκτελέσουμε το πρόγραμμά μας. Η εκτέλεση ενός προγράμματος γίνεται μέσω της κλήσης του εκτελέσιμου ονόματός του, στο περιβάλλον Unix με την εντολή: $./όνομα_αρχείου
«Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #0 6 Σχ. 5 Το αποτέλεσμα της εκτέλεσης του test, που τυπώνει στην οθόνη «Hallo World». Μετά το τέλος του προγράμματος το σύστημα επανέρχεται σε κατάσταση εντολών (command prompt). Υπηρεσία Απομακρυσμένης Διασύνδεσης (Telnet) και Πρωτόκολλο Μεταφοράς Αρχείων (FTP) Όταν εργαζόμαστε στο Υπολογιστικό Κέντρο, χρησιμοποιούμε τα προγράμματα που παρέχονται από το λειτουργικό σύστημα Windows NT το οποίο αποτελεί το βασικό λειτουργικό σύστημα των υπολογιστών του Κέντρου. Οποιοδήποτε λοιπόν αρχείο αποθηκεύουμε ή εκτελούμε βρίσκεται στον τοπικό σκληρό δίσκο του υπολογιστή μας, πράγμα που σημαίνει πως ο καθένας μπορεί να το δει, να το τροποποιήσει ή και να το διαγράψει. Επίσης πέρα από το θέμα της ασφάλειας των αρχείων μας τίθεται και η αναγκαιότητα πρόσβασης στα αρχεία αυτά μέσω απομακρυσμένων υπολογιστών (π.χ. από το PC που έχουμε στο σπίτι μας). Για τους πιο πάνω λόγους, δηλαδή για θέματα ασφάλειας (security) και απομακρυσμένης πρόσβασης (remote access), θα πρέπει μετά το τέλος της εργαστηριακής άσκησης να αποθηκεύουμε (μεταφέρουμε) τα προγράμματα που δημιουργούμε από τον τοπικό σκληρό δίσκο (local HD) του υπολογιστή που εργαζόμαστε, στον δίσκο του εξυπηρετητή (server) students όπου υπάρχει ένας προσωπικός φάκελος (directory) για κάθε φοιτητή. Ο student έχει λειτουργικό σύστημα Unix, το οποίο είναι σύστημα πολλών χρηστών (multi user environment) και επιτρέπει στους χρήστες να αποθηκεύουν αρχεία σε έναν κοινό δίσκο, αλλά σε διαφορετική περιοχή για τον καθένα. Ο κάθε χρήστης έχει πρόσβαση στο φάκελό του μέσω ενός «ονόματος χρήστη» (user name) και ενός «συνθηματικού» (password) το οποίο δεν εμφανίζεται στην οθόνη για λόγους ασφαλείας. Έτσι, τα αρχεία που αποθηκεύονται στην περιοχή (φάκελο) του κάθε χρήστη είναι ασφαλή από κλοπή και διαγραφή από τρίτους. Επίσης, είναι προσβάσιμα από απόσταση (π.χ. από το σπίτι του καθενός), μέσω μιας κοινής dial up σύνδεσης (ίδια με την σύνδεση που χρησιμοποιείτε για πρόσβαση στο Internet).
«Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #0 7 Για να πετύχουμε τα παραπάνω, θα χρειαστεί να χρησιμοποιήσουμε τις υπηρεσίες Telnet και FTP. Και οι δύο μας βοηθούν στο να έχουμε πρόσβαση και να μεταφέρουμε αρχεία από και προς απομακρυσμένους υπολογιστές. Αναλυτικότερα, οι υπηρεσίες αυτές χρησιμοποιούνται ως εξής: Telnet: Καλούμε την υπηρεσία Telnet από την γραμμή εντολών (command prompt). Start -> Programs -> Accessories-> Command Prompt. Η σχετική εντολή είναι: C:\temp> telnet students Η εκτέλεση της εντολής αυτής θα σας συνδέσει με τον server students όπου θα κληθείτε να δώσετε το όνομά χρήστη που σας έχει δοθεί. To όνομα αυτό είναι της μορφής «mead9999», όπου τα τέσσερα τελευταία νούμερα είναι ο αριθμός μητρώου που σας έχει δοθεί από τη Γραμματεία. Επίσης, θα κληθείτε να δώσετε και το συνθηματικό εισόδου σας (password), το οποίο είναι μυστικό και πρέπει να το γνωρίζετε μόνο εσείς. Την πρώτη φορά που θα συνδεθείτε με τον server students μέσω της υπηρεσίας telnet θα χρειαστεί να ορίσετε το συνθηματικό πρόσβασής σας στο σύστημα, το οποίο θα πρέπει να περιέχει 6 τουλάχιστον ψηφία, εκ των οποίων δύο τουλάχιστον γράμματα και έναν αριθμό. Μόλις συμπληρώσετε τα στοιχεία που αναφέραμε θα συνδεθείτε με την περιοχή σας στον server students Σχ. 6 Η σύνταξη της εντολής telnet για σύνδεση με τον server students, όπου βρίσκονται οι «περιοχές» των φοιτητών του τμήματος. Τώρα βρίσκεστε πλέον σε περιβάλλον Unix (βλέπε σχ. 7), το χαρακτηριστικό του οποίου είναι η απουσία παραθύρων και η διαφορετική αλληλεπίδραση με τον χρήστη, μιας και ο τελευταίος είναι αναγκασμένος να πληκτρολογεί συγκεκριμένες εντολές για να μπορέσει το σύστημα να εκτελέσει κάποια λειτουργία. Βασικές εντολές είναι οι: ls (εμφανίζει τα περιεχόμενα ενός καταλόγου) ls *.c (εμφανίζει όλα τα αρχεία με κατάληξη.c ) rm (διαγράφει ένα αρχείο) mkdir (δημιουργεί ένα νέο φάκελο) grep (επιστρέφει μια συγκεκριμένη συμβολοσειρά που αναζητούμε) pwd (εμφανίζει τον τρέχοντα κατάλογο εργασίας)
«Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #0 8 Τις βασικές εντολές του Unix μπορείτε να τις αναζητήσετε στην ιστοσελίδα που αναφέρεται στο Παράρτημα B (στο τέλος του τετραδίου αυτού). Το περιβάλλον εργασίας του Unix δεν θα πρέπει να σας τρομάζει, μιας και με την εκμάθηση των βασικών εντολών του θα μπορέσετε να αξιοποιήσετε τις δυνατότητες του συστήματος και να εργαστείτε χωρίς πρόβλημα. Στο πιο κάτω σχήμα εμφανίζονται τα αποτελέσματα της εκτέλεσης της εντολής: $ ls l η οποία εμφανίζει τα περιεχόμενα του τρέχοντος καταλόγου εργασίας (αντίστοιχη με την εντολή C:\> dir του DOS). Σχ. 7 Η εκτέλεση της εντολής ls l που εμφανίζει στην οθόνη τα περιεχόμενα (καταλόγους και αρχεία) του καταλόγου εργασίας. FTP: Η υπηρεσία FTP μας δίνει τη δυνατότητα να μεταφέρουμε τα αρχεία που δημιουργήσαμε, από τον υπολογιστή που εργαζόμαστε τοπικά, στην περιοχή μας στον server students ή και το αντίστροφο. Η κλήση της υπηρεσίας FTP γίνεται επίσης μέσω του Command Prompt (αναλύθηκε στη προηγούμενη παράγραφο) με την εξής σύνταξη: C:\temp> ftp students Στη συνέχεια θα σας ζητηθεί (όπως και στην υπηρεσία telnet) να δώσετε το όνομα χρήστη και το συνθηματικό σας. Μόλις συμπληρώσετε τα στοιχεία αυτά, συνδέεστε με τον server students και είσαστε έτοιμοι να χρησιμοποιήσετε τις δύο βασικές εντολές put και get για να στείλετε ή να λάβετε (αντίστοιχα) αρχεία. Οι εντολές αυτές έχουν την ακόλουθη σύνταξη: $ put <local_file_name> <remote_file_name> Η εντολή αυτή μεταφέρει το αρχείο από τον τρέχον κατάλογο εργασίας του υπολογιστή που εργάζεστε, στην «περιοχή» σας στον server students.
«Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #0 9 $ get <remote_file_name> <local_file_name> Παρόμοια, η εντολή αυτή θα μεταφέρει το αρχείο από την «περιοχή» σας στον server students στον τρέχοντα κατάλογο εργασίας σας του υπολογιστή που εργάζεστε. Σχ. 8 Σύνδεση με την υπηρεσία ftp στον server students και μεταφορά του αρχείου apol.c από τον τοπικό δίσκο προς την περιοχή μας. Μετά την μεταφορά του αρχείου, μπορούμε να δούμε τα αρχεία στην περιοχή μας με τη χρήση της ls -l Αξίζει τέλος να σημειωθεί πως το σύστημα (βλέπε σχ. 8), παρέχει ενημέρωση για την επιτυχή ή όχι μεταφορά των αρχείων καθώς και στοιχεία που σχετίζονται με το μέγεθος, την ταχύτητα μεταφοράς και τη θύρα σύνδεσης με τον server. Για περισσότερες πληροφορίες σχετικά με τη χρήση της υπηρεσίας FTP, μπορείτε να πληκτρολογήσετε $ ftp>? αφού συνδεθείτε πρώτα με την υπηρεσία FTP, με τον τρόπο που περιγράψαμε προηγουμένως.
«Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #0 10 Σύντομη αναφορά (Quick Reference) στη διαδικασία εκτέλεσης προγραμμάτων σε C Η διαδικασία που ακολουθείται στα πλαίσια του εργαστηρίου προκειμένου να γράψουμε, μεταγλωττίσουμε, αποσφαλματώσουμε και τέλος, εκτελέσουμε ένα πρόγραμμα σε C είναι η ακόλουθη (βλέπε Σχ. 9): Γράφουμε το πρόγραμμα με χρήση του Notepad. Ανοίγουμε το περιβάλλον Unix μέσω του CygWin από την επιφάνεια εργασίας Μεταγλωττίζουμε το αρχείο πηγαίου κώδικα με την εντολή: $ gcc g όνομα_αρχείου.c -o όνομα_αρχείου Αν η μεταγλώττιση δεν είναι επιτυχής, διορθώνουμε τα λάθη με χρήση του Notepad. Αποσφαλματώνουμε το πρόγραμμα με τη χρήση του Debugger με την εντολή: $ gdb όνομα_αρχείου Εκτελούμε το πρόγραμμά μας με την εντολή: $./όνομα_αρχείου Μεταφέρουμε το/α αρχείο/α στην περιοχή μας στο server students για λόγους ασφαλείας αλλά και για να μας δοθεί η δυνατότητα πρόσβασης από τον προσωπικό υπολογιστή του σπιτιού μας. Σχ. 9 Διάγραμμα Ροής για την υλοποίηση προγραμμάτων
«Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #0 11 ΠΑΡΑΡΤΗΜΑ (Α) Οδηγίες Εγκατάστασης του Cygwin 1. Τρέχουμε από το CD εγκατάστασης το αρχείο Setup.exe που βρίσκεται στο κατάλογο D:\Sygwin και εμφανίζεται το πιο κάτω παράθυρο εγκατάστασης: 2. Αφού πατήσουμε next, επιλέγουμε install from local directory -> next. Εμφανίζεται το πιο κάτω παράθυρο όπου μας ζητά να προσδιορίσουμε το directory στο οποίο θέλουμε να γίνει η εγκατάσταση του προγράμματος π.χ. C:\Cygwin και αφού επιλέξουμε Default Text File Type: Unix και Install For: all, στη συνέχεια πατάμε next. 3. Στη συνέχεια επιλέγουμε την πηγή των αρχείων εγκατάστασης που στη συγκεκριμένη περίπτωση είναι το D:\Cygwin και πατάμε next. 4. Το τελευταίο και πιο σημαντικό κομμάτι της εγκατάστασης αφορά στην σωστή επιλογή των κατηγοριών (Categories) που θέλουμε να εγκατασταθούν (admin, archive, base, devel, etc.). Η επιλογή γίνεται πατώντας κατ αρχήν στο όνομα της κάθε κατηγορίας και στη συνέχεια επιλέγοντας κάθε ένα στοιχείο (element) από τη στήλη New και τέλος τσεκάροντας τα τετράγωνα επιλογής (checkboxes) στη στήλη Src (βλέπε παρακάτω εικόνα). Αφού τελειώσουμε με την πιο πάνω διαδικασία είμαστε έτοιμοι να προχωρήσουμε στην έναρξη της αντιγραφής των καταλόγων και των αρχείων που
«Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #0 12 απαιτούνται από το πρόγραμμα. Μόλις ολοκληρωθεί η εγκατάσταση, το πρόγραμμα προτείνει τη δημιουργία συντομεύσεων στην επιφάνεια εργασίας (desktop) και στο αρχικό μενού (start menu). Αποδεχόμαστε την πρόταση αυτή και ολοκληρώνουμε έτσι την εγκατάσταση. Έχοντας ολοκληρώσει την πιο πάνω διαδικασία είμαστε έτοιμοι να εκτελέσουμε την εφαρμογή CygWin μέσω του εικονιδίου που έχει Cygwin.ico δημιουργηθεί στην επιφάνεια εργασίας. ΠΑΡΑΡΤΗΜΑ (Β) Χρήσιμες Ιστοσελίδες http://www.cs.ucy.ac.cy/~epl131/fall00/tutorials/use.gdb.htm Πληροφορίες χρήσης του Debugger (gdb) http://www.eng.ncat.edu/help/unix_302_unixcommands.html Βασικές Εντολές του Unix ftp://ftp.ntua.gr/pub/pc/cygwin/latest/setup.exe ftp site για download του Cygwin Unix Emulator http://www.cs.ucy.ac.cy/~epl131/fall00/tutorials/downloading_cygwin.htm Οδηγίες Εγκατάστασης Cygwin Unix Emulator