Gestión de Entrada y Salida en Linux Panorama -
Linux Linux sigue sigue la la floso flosoía ía de que cada cada cosa cosa es un un archi archivo vo.. Por Por ej. ej. Un teclado, monitor, ratón, impresora. l siste sistema ma de ! " en en Linux Linux es como como que en cualq cualquier uier sist sistema ema Unix. Unix. #quí #quí todos todos los contr controla olador dores es de disposit dispositivos ivos apar aparece ecen n como arc archivo hivos s normales. Un usuar usuario io puede puede acc accede ederr a un dispo dispositi sitivo vo de de la misma misma manera manera como como $l a%rir cualquier otro archivo. l admin administr istrado adorr puede puede esta%l esta%lece ecerr permis permisos os de acce acceso so para para cada cada dispositivo.
Categorías Linux divide todos los dispositivos en tres clases& -
'isp 'ispo ositi sitivo vos s de (loqu loque e 'isp 'ispos osit itiv ivos os de cara caract cter eres es 'ispos positi itivos de red
Los dispositivos de bloque -
)nclu*e )nclu*e todo todos s los dispos dispositi itivos vos tales tales como como discos discos duro duros, s, disquet disquetes, es, +'+' * memoria /lash. stos stos dispo disposit sitivo ivos s pueden pueden ser acc accedid edidos os alea aleator toriam iament ente. e. llo llos s lee leen n sólo sólo los los %lo %loque ques s de de dat datos os..
Dispositivos de Caracter -
"e incl inclu*e u*en n dispos dispositiv itivos os tale tales s como como rato ratones nes * tecla teclados dos.. stos stos dispo disposit sitivo ivos s son el el acceso acceso sólo sólo en en serie serie o secue secuenci ncialm alment ente. e. Leen Leen el el car0 car0ct cter er de de dato datos s por por car0 car0ct cter er..
Dispositivos de Red -
stos stos se trat tratan an de mane manera ra dier dierent ente e desde desde dispos dispositiv itivos os de %loqu %loque e * de caracteres. Los Los usuario usuarios s no pueden pueden trans transerir erir dato datos s direct directame amente nte a los los disposit dispositivos ivos de red1 sino que de%en comunicarse indirectamente mediante la apertura de una conexión al su%sistema de red del n2cleo.
Estructura del bloque DispositivoControlador
Los dispositivos de bloque Los dispositivos de %loque proporcionan la intera3 principal para todos los dispositivos de disco en un sistema, o dispositivos de %loque que permiten el acceso aleatorio * %loques de tama4o fjo de datos, inclu*endo el disco duro, disquete, +'-s, etc. n el contexto de dispositivos de %loque, %loque representa la unidad con que los 5ernel reali3an ! ". +uando un %loque leer en la memoria, se almacena en una memoria intermedia. l tra%ajo del gestor de peticiones en dispositivos de %loque. 6 The work of request manager in block devices. 7 Los dispositivos de bloque Una lista separada de solicitudes es mantenida por cada dispositivo de %loque. stas solicitudes han sido programadas de acuerdo a un algoritmo elevador unidireccional. La solicitud se mantiene en orma ordenada de aumentar el n2mero inicial sector. 6The request are maintain in sorted order of increasing starting sector number 7
+uando una solicitud es aceptada para procesar por un controlador de dispositivo de %loque, no es removido de la lista .s retirada solo cuando la salida * entrada est0n completas. n el dispositivo de %loque ha* dos pro%lemas que pueden ocurrir -
"8#9#8): '#'L):
l pla3o para solicitudes de lectura es de ;,< segundos. = el pla3o para escri%ir la solicitud es de < segundos. l dispositivo de %loque tam%i$n mantiene tres colas -
"orted queue ead queue >rite queue
stas queues se ordenan seg2n la echa límite.
Dispositivos de caracter 8odos los dispositivos de caracter tratan con datos 2nicos de caracter en un tiempo * los procesan secuencialmente. j. Los golpes de teclado, clics del ratón, etc. +ualquier driver de dispositivo-caracter registrados en el 5ernel de Linux tam%i$n de%en registrar un conjunto de unciones que implementan las operaciones de archivo )! que el conductor pueda manejar. l 5ernel no reali3a casi ning2n procesamiento previo de una solicitud de archivo de lectura o escritura al dispositivo en cuestión * permite que el dispositivo lidiar con la solicitud. Las impresoras son dispositivos de caracter * despu$s el 5ernel envía datos a la impresora, la responsa%ilidad de que los datos pasen a la impresora. l 5ernel no puede reali3ar copias de seguridad * volver a examinar los datos. ?@. La excepción a esta regla es el su%conjunto especial de los drivers del dispositivo de caracter que implementan dispositivos terminales. l n2cleo mantiene una intera3 est0ndar para estos conductores por medio de un conjunto de estructuras tty!struct" +ada una de estas estructuras proporciona almacenamiento en el %uAer * control de Bujo en el Bujo de datos desde el dispositivo terminal * alimenta los datos a una disciplina de línea. ?<.
Una disciplina de línea es un int$rprete de la inormación desde el dispositivo terminal. La disciplina de línea m0s com2n es la tty discipline. tty discipline decide cuales datos del proceso de%en ser conectada o desconectada del dispositivo terminal. ?C Estructura de Red Los usuarios no pueden transerir datos directamente a los dispositivos de la red. "e comunican indirectamente mediante la apertura de una conexión con el su%sistema de red de n2cleo. edes en el 5ernel de Linux es implementada por tres capas de sotDare& ?. La intera3 soc5et E. Los controladores de protocolo F. Los controladores de dispositivos de red. - La intera3 de soc5et& - Las aplicaciones de usuario reali3an todas las solicitudes de red a trav$s de la intera3 de soc5et. - "e ve como la capa de conectores ("', por lo que el programa dise4ado para el soc5et ("' puede correr 0cilmente en Linux sin ning2n cam%io de código uente. - "oc5et ("' es sufciente para representar las direcciones de red de los protocolos de red. - +ontroladores de protocolo& - s la segunda capa de sotDare. - +uando los datos llegan a esta capa, se espera que han sido etiquetadas con un identifcador que especifca qu$ red de protocolo que contienen. - /unciones de la capa de protocolo& - eescri%ir paquetes - +rear :uevos paquetes - "plit o volver a montar los paquetes en ragmentos, - 'escartar datos entrantes
+ontroladores de 'ispositivos de red -
!!
La comunicación entre las capas de pila de red se reali3a pasando estructuras individuales s#bu$ Un s#bu$ es un conjunto de punteros en una sola 0rea continua de la memoria, lo que representa un %uAer dentro de la cual los paquetes de red pueden ser construidos. l código de red o %ien a4aden o recortan los datos desde el fnal del paquete.
/alta traducir, *o lo har$ GG33
l conjunto m0s importante del protocolo utili3ado en L):UH es la suite %P &CP" Protocolo )P implementa enrutamiento entre dierentes ej$rcitos, en cualquier lugar de la red. Protocolo U'P transporta datagramas individuales ar%itrarias entre hosts Protocolo 8+P implementa conexión fa%le entre los ej$rcitos. Protocolo )+P se utili3a para llevar a varios errores * mensajes de estado entre los ej$rcitos. E?. Los paquetes )P entrantes se entregan al controlador )P. sta capa reali3a el enrutamiento. 'espu$s de decidir el destino de un paquete se reenvía para apropiarse de controlador de protocolo interno para entrega local o in*ecta de nuevo en una cola conductor -device red seleccionada para ser remitido a otro host. EE. l encaminamiento se puede hacer por dos ta%las& ?./)( 6reenvío de %ase de inormación7 E.+ache de decisiones de enrutamiento recientes. ?. /)( es un conjunto de ta%las hash indexados por la dirección de destino. E. "e almacena en cach$ rutas solamente por destino específco. Una entrada en cach$ de ruta expira despu$s de un período fjo sin hits. EF. "otDare )P pasa sus paquetes a un código de sección separada para la gestión de cortauegos.
Iestiona cadenas freDall separadas ?./or paquetes reenviados E./or los paquetes que se reci%e para acoger F.Para datos generados en el host. +ontrolador )P reali3a el desmontaje * montaje de los paquetes grandes. E@. Paquetes salientes grandes se dividen en ragmentos m0s peque4os n el host de recepción se vuelven a montar estos ragmentos. /ragmentos entrantes se comparan con cada ipq conocido1 "i un partido se ragmento encontrado se a4ade a ella de otro modo, se crea nueva ipq Una ve3 que el ragmento fnal se est0 creada llegado nueva s5J%uA, para cele%rar de nuevo paquete. sto se pasa de nuevo al controlador )P.