Escolar Documentos
Profissional Documentos
Cultura Documentos
Proceso distribuido: Es la gestin de varios procesos que ejecutan en sistemas de computadores mltiples
y remotas.
1.2. Definicin.
La concurrencia es el punto clave de los tres campos anteriores y fundamentales para el di-seo de sistemas operativos. La concurrencia comprende un gran nmero de cuestiones de diseo, incluyendo la comunicacin entre procesos, comparticin y competencia por los recursos, sincronizacin de la ejecucin de varios procesos y asignacin del tiempo de procesador a los procesos. Se ver que estas cuestiones no solo surgen en entornos de multi-procesadores y proceso distribuido, sino incluso en sistemas multiprogramados con un solo procesador. La concurrencia puede presentarse en tres contextos diferentes:
Aplicaciones estructuradas: Como ampliacin de los principios del diseo modular y la programacin
estructurada, algunas aplicaciones pueden implementarse eficazmente como un conjunto de procesos concurrentes.
Estructura del sistema operativo: Las mismas ventajas de estructuracin son aplicables a los
programadores de sistemas y se ha comprobado que algunos sistemas operativos estn implementados como un conjunto de procesos.
Colegio Universitario Francisco de Miranda Unidad Curricular:: SISTEMAS OPERATIVOS Modulo: SISTEMAS OPERATIVOS II Apuntes Recopilados por: Profesor Bernardo Gonzalez Rojas
para dar la apariencia de ejecucin simultnea (figura 1.1). Aunque no se consigue un proceso paralelo real y aunque se produce una cierta sobrecarga en los intercambios de procesos de un sitio a otro, la ejecucin intercalada produce beneficios importantes en la eficiencia del procesamiento y en la estructuracin de los programas. En un sistema con varios procesadores, no solo es posible intercalar los procesos, sino tambin superponerlos (figura 1.2).
A primera vista, podra parecer que la intercalacin y la superposicin representan formas de ejecucin muy diferentes y que introducen problemas distintos. De hecho, ambas tcnicas pueden contemplarse como ejemplos de proceso concurrente y ambas plantean los mismos problemas. En el caso de un sistema monoprocesador, los problemas creados por la multiprogramacin parten del hecho de que la velocidad relativa de ejecucin de los procesos no puede predecirse. Depende de la actividad de otros procesos, de la forma en que el sistema operativo trata las interrupciones y de las polticas de planificacin. As surgen las siguientes dificultades:
i.- La comparticin de recursos globales est llena de riesgos. Por ejemplo, si dos procesos hacen uso al mismo
tiempo de la misma variable global y ambos llevan a cabo tanto lecturas como escrituras sobre la variable, el orden en que se ejecuten las lecturas y escrituras es crtico. En el siguiente apartado se ofrece un ejemplo de este problema.
ii.- Para el sistema operativo resulta difcil asignar los recursos de forma ptima. Por ejemplo, el proceso A puede
solicitar el uso de un canal de E/S en particular y suspenderse antes de hacer uso del canal. Si el sistema operativo bloquea el canal e impide su uso por parte de otros procesos, se tiene una cierta ineficiencia.
iii.-
Resulta difcil localizar un error de programacin porque los resultados no son normalmente reproducibles.
Todas las dificultades anteriores se presentan tambin en los sistemas multiprocesador, ya que tambin en ellos es impredecible la velocidad relativa de ejecucin de los procesos. Un sistema multiprocesador debe solucionar, adems, los problemas originados por el hecho de que varios procesos puedan estar ejecutando a la vez. Sin embargo, los problemas son, fundamentalmente, los mismos que en el caso anterior.
i.-
El sistema operativo debe ser capaz de seguir la pista de los distintos procesos activos. Esto lo hace por medio de bloques de control de procesos, como se describi en la unidad anterior. se incluyen:
ii.- El sistema operativo debe asignar y quitar los distintos recursos a cada proceso activo. Entre estos recursos
Tiempo de procesador: Es funcin de la planificacin. Memoria: La mayora de los sistemas operativos emplean esquemas de memoria virtual. Archivos. Dispositivos de E/S.
iii.- El sistema operativo debe proteger los datos y los recursos fsicos de cada proceso contra injerencias no
intencionadas de otros procesos. Esto supone emplear tcnicas relativas a la memoria, archivos y dispositivos de E/S, que se estudian en los captulos correspondientes.
Pgina 2 de 15
Colegio Universitario Francisco de Miranda Unidad Curricular:: SISTEMAS OPERATIVOS Modulo: SISTEMAS OPERATIVOS II Apuntes Recopilados por: Profesor Bernardo Gonzalez Rojas
iv.- Los resultados de un proceso deben ser independientes de la velocidad relativa a la que se realiza la
ejecucin con respecto a otros procesos concurrentes. Para comprender cmo se puede abordar la independencia de la velocidad, hace falta estudiar las formas en las que los procesos pueden interactuar.
Colegio Universitario Francisco de Miranda Unidad Curricular:: SISTEMAS OPERATIVOS Modulo: SISTEMAS OPERATIVOS II Apuntes Recopilados por: Profesor Bernardo Gonzalez Rojas
especfica. Cualquier requisito complicado de coordinacin puede satisfacerse por medio de la estructura de seales adecuada. Para la sealizacin, se usan variables especiales llamados semforos. Para transmitir una seal por el Semforo s, los procesos ejecutan la primitiva signal(s). Para recibir una seal del semforo s, los procesos ejecutan la primitiva wait(s); si la seal correspondiente an no se ha transmitido, el proceso es suspendido hasta que tenga lugar la transmisin.
i.- Un semforo puede inicializarse con un valor no negativo. ii.- La operacin wait decrementa el valor del semforo. Si el valor se hace negativo, el proceso que ejecuta el
wait se bloquea.
iii.-
La operacin signal incrementa el valor del semforo. Si el valor no es positivo, se des-bloquea a un proceso bloqueado por una operacin wait.
Aparte de estas tres operaciones, no hay forma de examinar o manipular los semforos.
Figura 2.1 Una Definicin Primitivas Semforos Figura 2.2 Una Definicin Primitivas Semforos Binarios
Pgina 4 de 15
Colegio Universitario Francisco de Miranda Unidad Curricular:: SISTEMAS OPERATIVOS Modulo: SISTEMAS OPERATIVOS II Apuntes Recopilados por: Profesor Bernardo Gonzalez Rojas
Tanto en los semforos como en los semforos binarios se emplea una cola para mantener los procesos esperando en el semforo. La definicin no dicta el orden en el que se quitan los procesos de dicha cola. La poltica ms equitativa es la FIFO: el proceso que ha estado bloqueado durante ms tiempo se libera de la cola. La nica exigencia estricta es que un proceso no debe quedar retenido en la cola de un semforo indefinidamente porque otros procesos tengan preferencia. _
Pgina 5 de 15
Colegio Universitario Francisco de Miranda Unidad Curricular:: SISTEMAS OPERATIVOS Modulo: SISTEMAS OPERATIVOS II Apuntes Recopilados por: Profesor Bernardo Gonzalez Rojas
El algoritmo de exclusin mutua por medio de semforos se puede ilustrar con el modelo del igl (figura 2.4). Adems de la pizarra, el igl tiene un potente congelador. Un proceso entra para realizar un wait, decrementa el valor de la pizarra en 1. Si el valor que hay ahora en la pizarra no es negativo, puede entrar en su seccin critica. En otro caso, entra en hibernacin en el congelador. Figura 2.4 Un Iglu Semforo Esto vaca el interior del igl, permitiendo que otros procesos entren. Cuando un proceso ha completado su seccin crtica, entra al igl para realizar un signal, incrementando el valor de la pizarra en 1. Si el valor no es positivo, libera un proceso del congelador. El programa de la figura 2.3 puede manejar igual de bien el requisito de que ms de un proceso pueda entrar en su seccin crtica en un instante. Este requisito se satisface simplemente inicializando el semforo con un valor especfico. De este modo, en cualquier instante, el valor de s.contador puede interpretarse como sigue:
s.contador _ 0: s.contador es el nmero de procesos que pueden ejecutar un wait(s) sin bloquearse (si no se
ejecuta ningn signal(s) mientras tanto).
i.- Las variables de datos locales estn solo accesibles para los procedimientos del monitor y no para
procedimientos externos.
Pgina 6 de 15
Colegio Universitario Francisco de Miranda Unidad Curricular:: SISTEMAS OPERATIVOS Modulo: SISTEMAS OPERATIVOS II Apuntes Recopilados por: Profesor Bernardo Gonzalez Rojas
ii.- Un proceso entra en el monitor invocando a uno de sus procedimientos. iii.- Solo un proceso puede estar ejecutando en el monitor en un instante dado; cualquier otro proceso que haya invocado al monitor quedara suspendido mientras espera a que el monitor est disponible
Las dos primeras caractersticas recuerdan a las de los objetos del software orientado a objetos. En realidad, un sistema operativo o lenguaje de programacin orientado a objetos puede implementar un monitor fcilmente como un objeto con caractersticas especiales. Si se cumple la norma de un proceso cada vez, el monitor puede ofrecer un servicio de exclusin mutua. Las variables de datos del monitor pueden ser accedidas solo por un proceso cada vez. As pues, una estructura de datos compartida puede protegerse situndola dentro de un monitor. Si los datos del monitor representan a algn recurso, el monitor ofrecer un servicio en exclusin mutua en el acceso a este recurso. Para que resulten tiles en el proceso concurrente los monitores deben incluir herramientas de sincronizacin. Por ejemplo, supngase que un proceso llama a un monitor y, mientras est en el monitor, debe suspenderse hasta que se cumpla alguna condicin. Hace falta un servicio para que el proceso no solo est suspendido, sino que libere el monitor y otro proceso pueda entrar. Ms tarde, cuando se cumpla la condicin y el monitor est de nuevo disponible, el proceso puede reanudarse y tiene que permitrsele volver a entrar en el monitor en el punto de la suspensin. Un monitor proporciona sincronizacin por medio de las variables de condicin que se incluyen dentro del monitor y que son accesibles slo desde dentro. Hay dos funciones para operar con las variables de condicin: wait(c): Suspende la ejecucin del proceso llamado bajo la condicin c. El monitor est ahora disponible para ser usado por otro proceso. signal(c): Reanuda la ejecucin de algn proceso suspendido despus de un wait bajo la misma condicin. Si hay varios procesos, elige uno de ellos; si no hay ninguno, no hace nada.
Pgina 7 de 15
Colegio Universitario Francisco de Miranda Unidad Curricular:: SISTEMAS OPERATIVOS Modulo: SISTEMAS OPERATIVOS II Apuntes Recopilados por: Profesor Bernardo Gonzalez Rojas
Ntese que las operaciones de monitor wait/signal son diferentes de las de los semforos. Si un proceso de un monitor ejecuta un signal y no hay tareas esperando en la variable de condicin, el signal se pierde La figura 3.1 ilustra la estructura de un monitor. Aunque un proceso puede entrar al monitor llamando a cualquiera de sus procedimientos, puede considerarse que el monitor tiene un nico punto de entrada que est custodiado para que slo un proceso pueda estar en el monitor en cada instante. Otros procesos que intenten entrar al monitor se aadirn a una cola de procesos suspendidos mientras esperan a que el monitor est disponible. Una vez que un proceso est dentro del monitor, puede suspenderse a s mismo temporalmente bajo la condicin x ejecutando wait(x); entonces se sita en una cola de procesos que esperan volver a entrar al monitor cuando la condicin cambie. Si un proceso que est ejecutando en el monitor detecta un cambio en una variable de condicin x, ejecuta signal(x), lo que avisa a la cola de condicin correspondiente de que la condicin ha cambiado. Figura 3.1 Estructura de un Monitor La figura 4.24 muestra una solucin con monitores. El mdulo monitor, buffer_acotado, controla el buffer empleado para almacenar y retirar caracteres. El monitor incluye dos variables de condicin: no_lleno es cierta cuando hay sitio para aadir al menos un carcter al buffer y no_vaco es cierta cuando hay al menos un carcter en el buffer. Un productor slo puede aadir caracteres al buffer por medio del procedimiento
Colegio Universitario Francisco de Miranda Unidad Curricular:: SISTEMAS OPERATIVOS Modulo: SISTEMAS OPERATIVOS II Apuntes Recopilados por: Profesor Bernardo Gonzalez Rojas
Este es el conjunto mnimo de operaciones necesario para que los procesos puedan dedicarse al paso de mensajes. Un proceso enva informacin en forma de un mensaje a otro proceso designado como destino. Un proceso recibe informacin ejecutando la primitiva receive, que indica el proceso emisor (origen) y el mensaje.
4.2.- Sincronizacin.
La comunicacin de un mensaje entre dos procesos implica cierto nivel de sincronizacin entre ambos. El receptor no puede recibir un mensaje hasta que sea enviado por otro proceso. Adems, hace falta especificar qu le sucede a un proceso despus de ejecutar una primitiva sena o receive. Considrese en primer lugar la primitiva send. Cuando se ejecuta una primitiva sena en un proceso, hay dos posibilidades: O bien el proceso emisor se bloquea hasta que se recibe el mensaje o no se bloquea. Anlogamente, cuando un proceso ejecuta una primitiva receive, hay dos posibilidades:
i.-
Si previamente se ha enviado algn mensaje, ste es recibido y contina la ejecucin. mensaje o (b) el proceso contina ejecutando, abandonando el intento de recepcin.
ii.- Si no hay ningn mensaje esperando entonces, o bien (a) el proceso se bloquea hasta que llega un
As pues, tanto el emisor como el receptor pueden ser bloqueantes o no bloqueantes. Son habituales las siguientes tres combinaciones, aunque cualquier sistema concreto implementa slo una o dos combinaciones:
Envo bloqueante, recepcin bloqueante: Tanto el emisor como el receptor se bloquean hasta que se
entrega el mensaje; esta tcnica se conoce como rendezvous. Esta combinacin permite una fuerte sincronizacin entre procesos.
Envo no bloqueante, recepcin bloqueante: Aunque el emisor puede continuar, el receptor se bloquea
hasta que llega el mensaje solicitado. Esta es, probablemente, la combinacin ms til. Permite que un proceso enve uno o ms mensajes a varios destinos tan rpido como sea posible. Un proceso que debe recibir un mensaje antes de poder hacer alguna funcin til tiene que bloquearse hasta que llegue el mensaje. Un ejemplo es el de un proceso servidor que ofrezca un servicio o un recurso a otros procesos.
4.3.- Direccionamiento.
Evidentemente, es necesario disponer de alguna forma de especificar en la primitiva send qu proceso va a recibir el mensaje. De forma similar, la mayora de las implementaciones permiten a los procesos receptores indicar el origen del mensaje que se va a recibir.
Pgina 9 de 15
Colegio Universitario Francisco de Miranda Unidad Curricular:: SISTEMAS OPERATIVOS Modulo: SISTEMAS OPERATIVOS II Apuntes Recopilados por: Profesor Bernardo Gonzalez Rojas
Los distintos esquemas para hacer referencia a los procesos en las primitivas sena y receive se encuadran dentro de dos categoras: direccionamiento directo e indirecto. Con el direccionamiento directo, la primitiva sena incluye una identificacin especfica del proceso destino. La primitiva receive se puede gestionar de dos formas. Una posibilidad requiere que el proceso designe explcitamente un proceso emisor. As pues, el proceso debe conocer de antemano de qu proceso espera un mensaje. Esto suele ser eficaz para procesos concurrentes y cooperantes. En otros casos, sin embargo, es imposible especificar el proceso de origen por anticipado. Un ejemplo es un proceso servidor de impresoras, que aceptar mensajes de solicitud de impresin de cualquier otro proceso. Para tales aplicaciones, una tcnica ms efectiva consiste en usar direccionamiento implcito. En este caso, el parmetro origen de la primitiva receive tendr un valor de retomo cuando se haya realizado la operacin de recepcin. El otro enfoque es el direccionamiento indirecto. En este caso, los mensajes no se envan directamente del emisor al receptor, sino a una estructura de datos compartida formada por colas que pueden guardar los mensajes temporalmente. Estas colas se denominan generalmente buzones (mailboxes). De este modo, para que dos procesos se comuniquen, uno enva mensajes al buzn apropiado y el otro los coge del buzn. Una ventaja del direccionamiento indirecto es que se desacopla a emisor y receptor, permitiendo una mayor flexibilidad en el uso de los mensajes. La relacin entre emisores y receptores puede ser uno a uno, de muchos a uno, de uno a muchos o de muchos a muchos. Una relacin uno a uno permite que se establezca un enlace privado de comunicaciones entre dos procesos, lo que asla su interaccin de injerencias errneas de otros procesos. Una relacin de muchos a uno resulta til para interacciones cliente/servidor, donde un proceso ofrece un servicio a un conjunto de procesos. En este caso, el buzn se denomina puerto (figura 4.1). Una relacin uno a muchos permite un emisor y muchos receptores; es til para aplicaciones en las que un mensaje o alguna informacin se difunda a un conjunto de procesos. La asociacin de procesos a buzones puede ser esttica o dinmica. Los puertos suelen estar asociados estticamente con algn proceso en particular, es decir, el puerto se crea y se asigna al proceso permanentemente. De forma similar, una relacin uno a uno normalmente se define de forma esttica y permanente. Cuando hay varios emisores, la asociacin de un emisor a un buzn puede realizarse dinmicamente. Se pueden usar primitivas como conectar y desconectar con este propsito. Una cuestin afn es la de la propiedad del buzn. En el caso de un puerto, normalmente pertenece y es creado por el proceso receptor. De este modo, cuando se destruye el proceso, tambin se destruir el puerto. Para el caso general de los buzones, el sistema operativo puede ofrecer un servicio de creacin de buzones. Estos buzones pueden ser considerados como propiedad del proceso creador, en cuyo caso se destruyen junto con el proceso o pueden ser considerados como propiedad del sistema operativo, en cuyo caso se necesita una orden explcita para destruir el buzn. Figura 4.1- Comunicacin Indirecta Entre Procesos
Pgina 10 de 15
Colegio Universitario Francisco de Miranda Unidad Curricular:: SISTEMAS OPERATIVOS Modulo: SISTEMAS OPERATIVOS II Apuntes Recopilados por: Profesor Bernardo Gonzalez Rojas
a pasar una gran cantidad de datos, los datos pueden ponerse en un archivo y el mensaje simplemente har referencia a este archivo. Una solucin ms flexible es permitir mensajes de longitud variable. La figura 4.2 muestra un formato tpico de mensajes para sistemas operativos que permiten mensajes de longitud variable. El mensaje se divide en dos partes: una cabecera, que alberga informacin sobre el mensaje y un cuerpo, que alberga el contenido real del mensaje. La cabecera puede contener una identificacin del origen y el destino deseados, un campo de longitud y un campo de tipo para distinguir entre varios tipos de mensajes. Puede haber tambin informacin de control adicional, como un campo apuntador para poder crear una lista enlazada de mensajes; un nmero de secuencia, para guardar constancia del orden y nmero de mensajes pasados entre origen y destino; y un campo de prioridad.
Colegio Universitario Francisco de Miranda Unidad Curricular:: SISTEMAS OPERATIVOS Modulo: SISTEMAS OPERATIVOS II Apuntes Recopilados por: Profesor Bernardo Gonzalez Rojas
Para entender un poco mejor el concepto se presenta el siguiente ejemplo: Se tiene un Sistema Operativo que debe asignar un identificador de proceso (PID) a dos procesos en un sistema multiprocesador. Cuando el SO realiza esta accin en dos procesadores de forma simultnea sin ningn tipo de control, se pueden producir errores, ya que se puede asignar el mismo PID a dos procesos distintos. Este problema se debe a que constituyen una seccin crtica que debe ejecutarse en forma atmica, es decir, de forma completa e indivisible y ningn otro proceso podr ejecutar dicho cdigo mientras el primero no haya acabado su seccin.
Cuando un proceso sale de la seccin crtica debe indicarlo mediante otro fragmento de cdigo que se
Exclusin mutua: Si un proceso est ejecutando cdigo de la seccin crtica, ningn otro proceso lo podr
hacer.
Progreso: Si ningn proceso est ejecutando dentro de la seccin crtica, la decisin de qu proceso entra
en la seccin se har sobre los procesos que desean entrar.
Espera acotada: Debe haber un lmite en el nmero de veces que se permite que los dems procesos entren
a ejecutar cdigo de la seccin crtica despus de que un proceso haya efectuado una solicitud de entrada y antes de que se conceda la suya.
Interbloqueo. Si se tienen dos procesos P1 y P2 y dos recursos crticos, R1 y R2. Supngase que cada
proceso necesita acceder a ambos recursos para llevar a cabo una parte de su funcin. En tal caso, es posible que se presente la siguiente situacin: el sistema operativo asigna R1 a P2 y R2 a P1. Cada proceso est esperando a uno de los dos recursos. Ninguno liberar el recurso que ya posee hasta que adquiera el otro y ejecute su seccin crtica. Ambos procesos estn nterbloqueados.
Inanicin. Supngase que tres procesos, P1, P2 y P3, necesitan acceder peridicamente al recurso R.
Considrese la situacin en la que P1 est en posesin del recurso y tanto P2 como P3 estn parados, esperando al recurso. Cuando P1 abandona su seccin crtica, tanto P2 como P3 deben poder acceder a R. Supngase que se le concede el acceso a P3 y que, antes de que termine su seccin crtica, P1 solicita acceso de nuevo. Si se le concede el acceso a P1 despus de que P3 termine y si P1 y P3 se conceden el acceso repetidamente el uno al otro, se puede negar definidamente a P2 el acceso al recurso.
Colegio Universitario Francisco de Miranda Unidad Curricular:: SISTEMAS OPERATIVOS Modulo: SISTEMAS OPERATIVOS II Apuntes Recopilados por: Profesor Bernardo Gonzalez Rojas
El uso adecuado de la concurrencia entre procesos exige la capacidad de definir secciones crticas y hacer cumplir la exclusin mutua. Esto es fundamental para cualquier esquema de proceso concurrente. Cualquier servicio o capacidad que d soporte para la exclusin mutua debe cumplir los requisitos siguientes:
i.ii.iii.iv.v.vi.-
Debe cumplirse la exclusin mutua: Solo un proceso, de entre todos los que poseen secciones crticas por el mismo recurso u objeto compartido, debe tener permiso para entrar en ella en un instante dado. Un proceso que se interrumpe en una seccin no crtica debe hacerlo sin estorbar a los otros procesos. Un proceso no debe poder solicitar acceso a una seccin crtica para despus ser demorado indefinidamente; no puede permitirse el interbloqueo o la inanicin. Cuando ningn proceso est en su seccin crtica, cualquier proceso que solicite entrar en la suya debe poder hacerlo sin dilacin. No se pueden hacer suposiciones sobre la velocidad relativa de los procesos o su nmero. Un proceso permanece en su seccin crtica solo por un tiempo finito.
RESUMEN.
Los temas centrales de los sistemas operativos modernos son la multiprogramacin, el multiproceso y el proceso distribuido. Un punto fundamental en estos temas y en las tecnologas de diseo de sistemas operativos es la concurrencia. Cuando se ejecutan varios procesos concurrentemente, en el caso real de un sistema multiprocesador o en el caso virtual de un sistema monoprocesador multiprogramado, aparecen cuestiones de resolucin de conflictos y de cooperacin. Los procesos concurrentes pueden interactuar de varias formas. Los procesos que no tienen conocimiento unos de otros pueden competir por recursos tales como el tiempo del procesador o los dispositivos de E/S. Los procesos pueden tener conocimiento indirecto de los otros porque comparten el acceso a unos objetos comunes, tales como un bloque de memoria principal o un archivo. Los procesos pueden tener un conocimiento directo de los otros y cooperar mediante intercambio de informacin. Los puntos clave que surgen en esta interaccin son la exclusin mutua y el interbloqueo. La exclusin mutua es una condicin en la cual hay un conjunto de procesos concurrentes y slo uno puede acceder a un recurso dado o realizar una funcin dada en cada instante de tiempo. Las tcnicas de exclusin mutua pueden usarse para resolver conflictos, tales como competencia por los recursos y para sincronizar procesos de modo que puedan cooperar. Se han desarrollado varios algoritmos en software para ofrecer exclusin mutua, de los cuales el ms conocido es el algoritmo de Dekker. Las soluciones por software suelen tener un alto coste y el riesgo de errores lgicos en el programa es tambin alto. Un segundo conjunto de mtodos para soportar la exclusin mutua suponen el uso de instrucciones especiales de la mquina. Estos mtodos reducen la sobrecarga, pero son an ineficientes porque emplean espera activa.
Pgina 13 de 15
Colegio Universitario Francisco de Miranda Unidad Curricular:: SISTEMAS OPERATIVOS Modulo: SISTEMAS OPERATIVOS II Apuntes Recopilados por: Profesor Bernardo Gonzalez Rojas
Otro mtodo para dar soporte a la exclusin mutua consiste en incluir las caractersticas dentro del sistema operativo. Dos de las tcnicas ms comunes son los semforos y el paso de mensajes. Los semforos se usan para la sealizacin entre procesos y pueden emplearse fcilmente para hacer respetar una disciplina de exclusin mutua. Los mensajes son tiles para el cumplimiento de la exclusin mutua y ofrecen tambin un medio efectivo de comunicacin entre procesos.
Pgina 14 de 15
Colegio Universitario Francisco de Miranda Unidad Curricular:: SISTEMAS OPERATIVOS Modulo: SISTEMAS OPERATIVOS II Apuntes Recopilados por: Profesor Bernardo Gonzalez Rojas
BIBLIGRAFIA.
Estos apuntes fueron recopilados de Internet, entre las pginas WEB que se presentan a continuacin:
Pgina 15 de 15