Diferencia entre revisiones de «Tubería (informática)»
Contenido eliminado Contenido añadido
subcategoría para no mezclar los conceptos de sistemas operativos con la lista (categoría) de sistemas operativos |
Correcciones de estilo |
||
Línea 1:
{{fusionar
[[Image:Pipe and broken bar.svg|thumb|Tubería y barra partida.]]
En [[informática]], una '''tubería''' (''pipeline'', cauce o '|') consiste en una cadena de [[Proceso (informática)|procesos]] conectados de forma tal que la salida de cada elemento de la cadena es la entrada del próximo. Permiten la comunicación y sincronización entre procesos. Es común el uso de [[búfer de datos]] entre elementos consecutivos.
La comunicación por medio de tuberías se basa en la interacción productor/consumidor, los procesos productores (aquellos que envían datos) se comunican con los procesos consumidores (que reciben datos) siguiendo un orden [[FIFO]]. Una vez que el proceso consumidor recibe un dato, éste se elimina de la tubería.
==
Las tuberías (''pipes'') están implementadas en forma muy eficiente en los [[sistemas operativos]] [[multitarea]], iniciando todos los procesos al mismo tiempo, y atendiendo automáticamente los requerimientos de lectura de datos para cada proceso cuando los datos son escritos por el proceso anterior. De esta manera el planificador de corto plazo va a dar el uso de la [[CPU]] a cada proceso a medida que pueda ejecutarse minimizando los tiempos muertos.
Para mejorar el rendimiento, la mayoría de los sistemas operativos implementan las tuberías usando búferes, lo que permite al proceso proveedor generar más datos que lo que el proceso consumidor puede atender inmediatamente.
Se pueden distinguir dos tipos de tuberías
'''Tubería sin nombre:''' las tuberías sin nombre tienen asociado un fichero en [[memoria principal]], por lo tanto, son temporales y se eliminan cuando no están siendo usados ni por productores ni por consumidores. Permiten la comunicación entre el proceso que crea un cauce y procesos hijos tras la creación de la tubería.
[[Tubería nombrada|'''Tubería con nombre:''']] su diferencia respecto a las tuberías sin nombre radica en que el cauce se crea en el [[sistema de archivos]], y por lo tanto no tienen carácter temporal. Se manejan mediante [[llamadas al sistema]] (''open'', ''close'', ''read'' y ''write'') como el resto de ficheros del sistema. Permiten la comunicación entre los procesos que usen dicha tubería, aunque no exista una conexión jerárquica entre ellos.
==Véase también==
* [[Arquitectura en pipeline (informática)]]
* [[Pleca]]
[[Categoría:Programación]]
[[Categoría:Conceptos de sistemas operativos]]
|