Concurrencia De Procesos

Páginas: 6 (1291 palabras) Publicado: 21 de enero de 2013
TEMA 4. CONCURRENCIA: EXCLUSIÓN MUTUA Y SINCRONIZACIÓN
4.1 Comunicación y sincronización de procesos 4.1.1 Cooperación entre los procesos 4.1.2 Competencia entre los procesos 4.1.3 Requisitos para la Exclusión Mutua 4.2 Utilizando memoria compartida 4.2.1 Soluciones software a la exclusión mutua 4.2.2 Soluciones hardware a la exclusión mutua 4.2.3 Semáforos 4.2.4 Monitores 4.3 Sin utilizarmemoria compartida. Mensajes 4.4 Problemas Clásicos de Comunicación entre Procesos 4.4.1 La Cena de los Filósofos 4.4.2 Lectores y Escritores 4.5 Apéndice I: Arquitectura Cliente-Servidor

4.1 Comunicación y Sincronización de Procesos [BENA82] [LIST86] [STAL95] [TANE93] [FINK90]
Puede verse la concurrencia de procesos como la ejecución simultánea de varios procesos. Si tenemos un multiprocesador oun sistema distribuido(tema 1) la concurrencia parece clara, en un momento dado cada procesador ejecuta un proceso. Se puede ampliar el concepto de concurrencia si entendemos por procesado concurrente (o procesado paralelo) la circunstancia en la que de tomar una instantánea del sistema en conjunto, varios procesos se vean en un estado intermedio entre su estado inicial y final. Esta últimadefinición incluye los sistemas multiprogramados de un único procesador que estudiamos en los temas anteriores. Los distintos procesos dentro de un ordenador no actúan de forma aislada. Por un lado, algunos procesos cooperan para lograr un objetivo común. Por otro lado, los procesos compiten por el uso de unos recursos limitados, como el procesador, la memoria o los ficheros. Estas dos actividades decooperación y competición llevan asociada la necesidad de algún tipo de comunicación entre los procesos. Parte de este tema lo dedicaremos a estudiar mecanismos de comunicación entre los procesos. Para aclarar un poco todo esto, supongamos que en un entorno UNIX se ejecuta la orden cat tema1 tema2 tema3 | wc -l

Esta orden va a provocar que el intérprete de órdenes cree dos procesosconcurrentes, el primero ejecutará el programa cat, que concatenará el contenido de los ficheros de texto tema1, tema2 y tema3. El segundo ejecutará el programa wc, que contará el número de líneas de la salida producida por cat. Estos dos procesos cooperan, y será preciso algún tipo de sincronización entre ellos, concretamente hasta que cat no produzca alguna salida wc debería bloquearse.

4.1.1Cooperación entre Procesos
La velocidad de un proceso con respecto a otro es impredecible ya que depende de la frecuencia de la interrupción asociada a cada uno de ellos y cuán a menudo y de por cuánto tiempo tiene asignado cada proceso un procesador. Diremos, pues, que
converted by Web2PDFConvert.com

un proceso se ejecuta asíncronamente con respecto a otro, es decir, sus ejecuciones sonindependientes. Sin embargo, hay ciertos instantes en lo que los procesos deben sincronizar sus actividades. Son estos puntos a partir de los cuales un proceso no puede progresar hasta que otro haya completado algún tipo de actividad. Los procesos también necesitan comunicarse entre sí. Por ejemplo, para leer de un fichero, los procesos de usuario deben decir al proceso que gestiona los ficheros lo quedesean. Este, a su vez, debe pedirle al proceso de disco que lea los bloques necesarios. Cuando el shell conecta dos procesos con un tubo, los datos de salida del primer proceso se transfieren al segundo. Se necesita que los procesos se comuniquen entre sí, con un mecanismo bien estructurado y no por medio de interrupciones.

4.1.2 Competencia entre los procesos
Los recursos de un sistema puedenclasificarse como compartibles, lo que significa que pueden ser utilizados por varios procesos de forma concurrente, o no compartibles, lo que equivale a que su uso se restrinja a un sólo proceso a la vez. El hecho de que un recurso no sea compartible deriva de una de las dos razones siguientes:

La naturaleza física del recurso hace que sea imposible compartirlo. Un ejemplo lo constituye una...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Procesos Concurrentes
  • Concurrencia Entre Procesos Y Exclusión Mutua
  • Procesos concurrentes
  • Procesos Concurrentes: Sistemas Operativo
  • Sistemas operativos: procesos concurrentes
  • concurrencia
  • Concurrencia
  • Concurrente

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS