Unix

Το Unix είναι περισσότερο γνωστό σε όσους ασχολούνται με τα λειτουργικά συστήματα και σχεδόν καθόλου γνωστό στην κοινότητα της διάδρασης και των γραφικών διεπαφών χρήστη. Πράγματι, οι γραφικές διεπαφές σε όλα τα Unix είναι συνήθως αντίγραφα από τις αντίστοιχες εμπορικές με βασικό σημείο διαφοροποίησης την διάθεση ανοικτού πηγαίου κώδικα. Εκτός από την γραφική διεπαφή όμως, το Unix παρέχει και κυρίως βασίζεται στην διεπαφή της γραμμής εντολών, η οποία είναι από τα σημαντικότερα κεφάλαια.

Figure 1: Ο μίνιϋπολογιστής PDP11 της DEC θεωρείται κομβικό σημείο γιατί ήταν πολύ δημοφιλής σε πανεπιστήμια και ερευνητικά κέντρα, όπου χρησιμοποιήθηκε για την διάδοση του λειτουργικού συστήματος UNIX, της γλώσσας προγραμματισμού C, και κυρίως των εξομοιωτών που επέτρεψαν την ανάπτυξη νέων συστημάτων για τους μικροϋπολογιστές που αναπτύχθηκαν στο τέλος της δεκαετίας του 1970 και έφεραν τον υπολογισμό στα σπίτια και στους απλούς χρήστες.
Figure 2: Το κέλυφος του πυρήνα του λειτουργικού συστήματος UNIX ονομάστηκε shell καθώς κρύβει τις λεπτομέρειες της υλοποίησης και παρέχει μια προσβάσιμη διεπαφή για τον χρήστη. Εκτός από τις βασικές λειτουργίες του συστήματος παρέχει και μια απλή γλώσσα προγραμματισμού μεταγλώτισης η οποία επιτρέπει την φορητότα των προγραμμάτων του χρήστη σε παρόμοια συστήματα.

Η διάδραση με την γραμμή εντολών είναι από τους πρώτους τρόπους χρήσης των υπολογιστών, αλλά η αξία της παραμένει διαχρονική. Η γραμμή εντολών έγινε αρχικά δημοφιλής με το σύστημα Unix, ενώ διατηρεί την χρησιμότητα της σε σύγχρονα συστήματα όπως οι διεπαφές γραπτών μηνυμάτων ή διαλόγων με ρομπότ στα κινητά τηλέφωνα και στις φωνητικές πύλες. Αν και θεωρείται δύσκολη στην χρήση, τουλάχιστον για τους αρχάριους, η διαχρονικότητα της καθώς και η σταθερή προτίμηση από τους ειδικούς τεκμηριώνουν την σημασία της.

Εκτός από την γραμμή εντολών, το Unix έκανε δημοφιλή την οργάνωση ενός λειτουργικού συστήματος σε αρχεία και φακέλους, τα οποία χρησιμοποιήθηκαν και από τα περισσότερα γραφικά περιβάλλοντα που ακολούθησαν. Η πιο σημαντική συνεισφορά αυτού του συστήματος είναι στο σημείο συνάντησης των αρχείων με την γραμμή εντολής, όπου δημιουργήθηκαν οι γλώσσες κελύφους1 καθως και η διασωλήνωση των προγραμμάτων.2 Σε αντίθεση με την ιδέα της εμπορικής διάθεσης εφαρμογών με πολλές δυνατότητες, το Unix βασίζεται στην ιδέα των πολλών μικρών προγραμμάτων, τα οποία παραμετροποιούνται, συνδέονται μεταξύ τους και τελικά συνθέτουν νέα προγράμματα σύμφωνα με τις ανάγκες του χρήστη.

Ακόμη και η γραφική διεπαφή έγινε με έμφαση στο δίκτυο έτσι ώστε υπάρχει διαχωρισμός ανάμεσα στο μηχάνημα που εκτελεί μια εφαρμογή και στο τερματικό του χρήστη που κάνει την διάδραση. Τέλος, το Unix από την δημιουργία του την δεκαετία του 1960 μέχρι και σήμερα δίνει μεγάλη έμφαση σε μια κοινότητα χρηστών, οι οποίοι δουλεύουν μαζί τόσο για την ανάπτυξη του βασικού συστήματος και κυρίως για την ανταλλαγή προγραμμάτων.3 Η ιδέα της κοινότητας σε αντίθεση με την ιδέα του προϊόντος ήταν θεμελιώδης για την δημιουργία αντίστοιχων κοινοτήτων κατά τις επόμενες δεκαετίες, όπως αυτές των πρώτων δικτυακών συζητήσεων, της σκηνής των δοκιμαστικών προγραμμάτων και κυρίως για το ανοιχτό λογισμικό την δεκαετία του 1990.

  1. fig:unix-shell 

  2. @kernighan2019unix 

  3. fig:pdp11-tty-unix