Turrican Δημοσ. 7 Νοεμβρίου 2006 Share Δημοσ. 7 Νοεμβρίου 2006 Xairetai kai pali. Ews twra diavasa arketa eggrafa, kai guides alla exw kolisei se kati. Otan kanoume boot sto linux simvainoun ta eksis (xontrika): *) ksekinaei o pirinas - se auto to stadio fortonotnai kai oi drivers gia to hardware *) anoigei to prwto process - to init *) to parapanw telika anoigei kapia child processes to kathena me to programma getty *) to kathena apo auta ta processes dexetai ta stoixeia tou xristi kai an ola pane kala fortonetai to shell Auto pou katalavainw einai pws p.x. to ttyS0 einai ena file pou dimiourgitai kata to prwto stadio kai antikatroptizei tis leitourgies tou driver gia tin seiriaki thira. Auto pou den katalavainw einai ti eidous siskeues einai ta tty*, pia i sxesi tous me to getty alla kai oi diafores me ta ttyS* Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
apoikos Δημοσ. 7 Νοεμβρίου 2006 Share Δημοσ. 7 Νοεμβρίου 2006 Βασικά το getty κάνει bind σε κάποια /dev/tty* για να σου δώσει το login prompt. Οι συσκευές /dev/tty* είναι terminal interfaces (TTY = Terminal Type), και είναι κληρονομιά από την εποχή που το UNIX έτρεχε σε mainframes και συνδέονταν πάνω του διάφοροι «χαζοί» clients (terminals). Συνοπτικά, τα /dev/tty[0-9]+ αντιστοιχούν στις «εικονικές» κονσόλες που έχεις: το /dev/tty1 είναι η κονσόλα που βγαίνεις με Alt + (Ctrl +) F1 , η /dev/tty2 είναι αυτή που βλέπεις με Alt + (Ctrl +) F2, κλπ. Οι ttyS[0-9]+ είναι οι σειριακές θύρες του υπολογιστή (Serial TTY), οι οποίες μπορούν να χρησιμοποιηθούν για την προσθήκη serial console. Υπήρχαν και υπάρχουν ακόμα τερματικά, τα οποία συνδέονται στη σειριακή θύρα και δίνουν δυνατότητα χειρισμού του υπολογιστή από (σχετική) απόσταση. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Turrican Δημοσ. 7 Νοεμβρίου 2006 Μέλος Share Δημοσ. 7 Νοεμβρίου 2006 Ευχαριστώ φίλε apoikos. Δηλαδή τα tty0, tty1, ... tty63 είναι εικονικές σειριακές συσκευές που κάνουν map το keyboard για input και την video κάρτα για output; και αν ναι το keyboard και η video κάρτα υπάρχουν αυτόνομα σαν συσκευές στο /dev; Έχω αρχίσει να την βρίσκω με το linux τελικά Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
NullScan Δημοσ. 7 Νοεμβρίου 2006 Share Δημοσ. 7 Νοεμβρίου 2006 Όχι, τα ttyX απλώς κάνουν "emulate" terminals για να μπορείς να κάνεις login. Τα περιφεριακά σου έχουν δικά τους device nodes μέσα στο /dev Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Turrican Δημοσ. 7 Νοεμβρίου 2006 Μέλος Share Δημοσ. 7 Νοεμβρίου 2006 Όχι, τα ttyX απλώς κάνουν "emulate" terminals για να μπορείς να κάνεις login. Τα περιφεριακά σου έχουν δικά τους device nodes μέσα στο /dev Όπα μισό λεπτό εδώ. Οτι υπάρχει σαν αρχείο στο /dev αντιστοιχεί σε μια συσκευή. Η σειριακή, το πληκτολόγιο και η κάρτα video είναι υπαρκτές συσκευές και άρα λογικό να έχουν τα δικά τους αρχεία στο /dev. Σωστά; Τώρα τι εστί terminal και τι εστί κάνω emulate terminal είναι που με μπερδεύει. Αυτό που καταλαβαίνω εγώ είναι το εξής: terminal <=> ένα πρόγραμμα που δέχεται εντολές από το ληκτρολόγιο, εκτελεί και κάνει έξοδο στην οθόνη <=> command.com (windows) <=> getty / login / bash (linux). Αυτά όμως είναι process όχι devices. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
apoikos Δημοσ. 7 Νοεμβρίου 2006 Share Δημοσ. 7 Νοεμβρίου 2006 Όπα μισό λεπτό εδώ. Οτι υπάρχει σαν αρχείο στο /dev αντιστοιχεί σε μια συσκευή. Η σειριακή, το πληκτολόγιο και η κάρτα video είναι υπαρκτές συσκευές και άρα λογικό να έχουν τα δικά τους αρχεία στο /dev. Σωστά; Δεν είναι ακριβώς έτσι. Δεν έχουν όλες οι συσκευές το αντίστοιχο αρχείο στο /dev, π.χ. οι κάρτες δικτύου δεν έχουν /dev entries. /dev entries γενικά έχουν οι συσκευές που έχει νόημα να θες να διαβάσεις/γράψεις από userspace σχετικά εύκολα. terminal <=> ένα πρόγραμμα που δέχεται εντολές από το ληκτρολόγιο, εκτελεί και κάνει έξοδο στην οθόνη <=> command.com (windows) <=> getty / login / bash (linux). Όχι, το terminal δεν είναι πρόγραμμα, είναι συσκευή (ή τουλάχιστον έτσι ξεκίνησε). Το πραγματικό, τοπικό terminal σε έναν υπολογιστή είναι ένα: ο συνδυασμός οθόνης πληκτρολογίου, τα οποία ελέγχονται απευθείας από τον πυρήνα και τα οποία και αντιστοιχούν στο /dev/tty κάθε φορά. Αν κάνεις ένα > [apoikos@laptop ~]$ ls -l /dev/tty1 lrwxrwxrwx 1 root root 4 2006-10-28 14:55 /dev/tty1 -> vc/1 θα δεις ότι τα tty1-n αντιστοιχούν σε virtual consoles. Είναι δηλαδή κάτι εικονικό: δεν έχεις 5 terminals στον υπολογιστή σου, αλλά με το Alt+F1-5 είναι σα να έχεις, αφού κάθε φορά ουσιαστικά γίνεται redirect η έξοδος ενός από αυτά στο /dev/tty. Κάθε πρόγραμμα από 'κει και πέρα είναι bound σε ένα τέτοιο virtual terminal, με την έννοια ότι διαβάζει και γράφει σε αυτό, ανεξαιρέτως του αν εσύ το βλέπεις ή όχι. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.