Ποια η διαφορά μεταξύ του terminal, shell, tty και console;

Δημοσθένης | Πέμ, 10/20/2011 - 15:08 | 4'

Ο Gilles στο stackexchange.com γράφει:

Ένα
τερματικό είναι στο τέλος ενός ηλεκτρικού σύρματος, ένα κέλυφος είναι
το σπίτι μιας χελώνας, ένα tty είναι μια συντομογραφία και μια κονσόλα
είναι ένα είδος επίπλου.

Αλλά μιλώντας στην ορολογία του Linux,

  • terminal = tty = text input/output environment
  • console = φυσικό τερματικό
  • shell = command line interpreter

Η
Console,
το terminal και το tty είναι έννοιες σχετικά κοντά. Κανονικά
αναφέρονται σε έναν εξοπλισμό με τον οποίο μπορείτε να αλληλεπιδράτε με
ένα computer: στις αρχές του unix, αυτός ο εξοπλισμός ήταν μια συσκευή teleprinter-style
αποτελούμενη από μια γραφομηχανή πολλές φορές με την ονομασία 
teletypewriter, ή
“tty” σύντομα. Το όνομα “terminal” προέρχεται από την μεριά της
ηλεκτρονικής και το όνομα “console” από την μεριά της αρχιτεκτονικής του
επίπλου που αυτή η συσκευή ήταν τοποθετημένη. Στην πολύ πρώιμη ιστορία
του unix ηλεκτρικά keyboards και οθόνες έγιναν τα terminals.

Στην ορολογία του unix, ένα tty είναι ένας συγκεκριμένος τύπος αρχείου συσκευής το οποίο υλοποιεί έναν αριθμό επιπρόσθετων εντολών (ioctls) μεταξύ αυτών τα γνωστά σε όλους read και write στα αρχεία του συστήματος. Στην κοινή άποψη το terminal
είναι συνώνυμο με το tty. Μερικά ttys παρέχονται από τον kernel αντί
μιας συσκευής hardware, για παράδειγμα είσοδο από το πληκτρολόγιο και
έξοδο στην οθόνη, ή την είσοδο και έξοδο σε μια σειριακή γραμμή. Άλλα
ttys που ονομάζονται ψεύδο-ttys, παρέχονται από τον πυρήνα και από προγράμματα που ονομάζονται terminal emulators, αυτά είναι προγράμματα όπως το Xterm, ScreenSshExpect κτλ

Η λέξη terminal
έχει μια πιο παραδοσιακή σημασία μιας συσκευής που αλληλεπιδρά με έναν
υπολογιστή. τυπικά μιλάμε για ένα πληκτρολόγιο και μια οθόνη.

Μια console
είναι γενικά ένα terminal με την φυσική σημασία κατά την οποία μια
συσκευή είναι συνδεδεμένη στον υπολογιστή. Μια console εμφανίζεται στο
λειτουργικό σύστημα μέσω του πυρήνα σαν ένα tty. Σε μερικά συστήματα
υπάρχουν παραπάνω από ένα tty.

Ένα shell
είναι η διεπαφή του λογισμικού που βλέπει ένας χρήστης όταν έχει κάνει
login. Η βασική της λειτουργία είναι να ξεκινά άλλα προγράμματα και να
τρέχει εντολές.

 

Πηγή:

http://www.linux-newsbits.net/index.php/tutorial/1437-terminal-shell-tty-console

Δώσε αστέρια!