GNU/Linux >> Linux Esercitazione >  >> Linux

Relazioni tra caratteri di controllo, segnali e terminale?

Quali sono le relazioni tra caratteri di controllo e segnali? O sono estranei?

I caratteri di controllo vengono ricevuti da un terminale?

Dopo che un terminale ha ricevuto un carattere di controllo, il terminale invia un segnale a un processo una delle possibili azioni del terminale al carattere di controllo ricevuto?

Ad esempio,

in Linux, in un terminale, Ctrl+C interromperà un processo in primo piano in esecuzione. In ASCII, Ctrl+C è un carattere di controllo che significa "Fine del testo".

In ASCII, Ctrl+D è un carattere di controllo che significa fine della trasmissione. Il carattere di controllo fa sì che il terminale invii un segnale a qualche processo?

Risposta accettata:

Il driver del terminale (parte del sistema operativo) stabilisce la relazione tra caratteri speciali e segnali. Le tue impostazioni del terminale , ad esempio, utilizzando stty , sono ciò che usa per decidere cosa (se non altro) fare con i caratteri digitati. Puoi riassegnare quei caratteri speciali secondo necessità con alcuni avvertimenti:

  • solo un carattere speciale per funzione
  • vengono utilizzati solo caratteri a byte singolo

controllo C e controllo D sono convenzionali :mentre alcune applicazioni possono codificare questi valori, il driver del terminale non lo richiede.

Il driver del terminale è un software, non fa parte del tuo terminale . Per alcune tastiere potresti trovare diverse assegnazioni di caratteri speciali più convenienti di altre (e per diversi sistemi operativi, alcune scelte dei valori predefiniti per i caratteri speciali potrebbero differire).

Ulteriori letture:

  • 11.1.9 Caratteri speciali (POSIX *General Terminal Interface)
  • 11. Interfaccia terminale generale
  • stty:imposta le opzioni per un terminale

Linux
  1. La differenza tra [[ $a ==Z* ]] e [ $a ==Z* ]?

  2. Le sequenze di escape Ascii e gli accoppiamenti di caratteri di controllo fanno parte di uno standard?

  3. Differenza tra Snat e Masquerade?

  4. Linux:differenza tra Pts e Tty?

  5. Differenza tra $HOME e '~' (tilde)?

Il mio terminale Linux ricco di funzionalità e minimale

Condividi e controlla i terminali in tempo reale dal browser web

Vim vs Vi:somiglianze e differenze tra VIM e VI?

Domande frequenti per l'accesso senza interruzioni tra MyRackspace e il pannello di controllo del cloud

Qual è la differenza tra una console, un terminale e una shell?

Differenza tra i comandi nello script bash e i comandi nel terminale