GNU/Linux >> Tutoriales Linux >  >> Linux

¿Relaciones entre caracteres de control, señales y terminal?

¿Cuáles son las relaciones entre los caracteres de control y las señales? ¿O no están relacionados?

¿Los caracteres de control son recibidos por una terminal?

Después de que un terminal recibe un carácter de control, ¿el terminal envía una señal a un proceso como una de las posibles acciones del terminal al carácter de control recibido?

Por ejemplo,

en Linux, en una terminal, Ctrl+C finalizará un proceso en primer plano en ejecución. En ASCII, Ctrl+C es un carácter de control que significa "Fin del texto".

En ASCII, Ctrl+D es un carácter de control que significa fin de transmisión. ¿El carácter de control hace que la terminal envíe alguna señal a algún proceso?

Respuesta aceptada:

El controlador de terminal (parte del sistema operativo) establece la relación entre caracteres especiales y señales. Su configuración de terminal , por ejemplo, usando stty , son lo que usa para decidir qué hacer (si es que hay algo) con los caracteres que escribe. Puede reasignar esos caracteres especiales según sea necesario con algunas advertencias:

  • solo un carácter especial por función
  • solo se utilizan caracteres de un solo byte

control C y control D son convencionales :aunque algunas aplicaciones pueden codificar estos valores, el controlador de terminal no lo requiere.

El controlador de terminal es software, no forma parte de su terminal . Para algunos teclados, puede encontrar diferentes asignaciones de caracteres especiales más convenientes que otros (y para diferentes sistemas operativos, algunas opciones de los valores predeterminados para los caracteres especiales pueden diferir).

Lectura adicional:

  • 11.1.9 Caracteres especiales (POSIX *Interfaz de terminal general)
  • 11. Interfaz de terminal general
  • stty:establece las opciones para un terminal

Linux
  1. ¿Diferencia entre Systemd y el programa de inicio de terminal?

  2. ¿Diferencia entre Eot y Eof?

  3. ¿Diferencia entre [0-9], [[:digit:]] y D?

  4. ¿Qué relaciones hay entre el terminal de control actual y `/dev/tty`?

  5. ¿Diferencia entre $HOME y '~' (tilde)?

Mi terminal Linux mínimo y rico en funciones

Comparta y controle terminales en tiempo real desde el navegador web

Vim vs Vi:¿similitudes y diferencias entre VIM y VI?

Preguntas frecuentes sobre el inicio de sesión sin problemas entre MyRackspace y el panel de control en la nube

¿Cuál es la diferencia entre una consola, una terminal y un shell?

diferencia entre cgroups y espacios de nombres