Está en la página 1de 14

Colegio Universitario Francisco de Miranda

Unidad Curricular:: SISTEMAS OPERATIVOS


Modulo: SISTEMAS OPERATIVOS II
Auntes Recoilados or: Pro!esor "ernardo #on$ale$ Ro%as
U&I 'A' (: COOR'I &ACI O& ) SI &CRO&I *ACI O& 'E
PROCESOS+
TEMA &, -: CO&CURRE&CIA+
-+-+ Introducci.n+
/os concetos claves en los 0ue se 1asan los siste2as oerativos 2odernos son el de roceso 3 el de 4ilo+ /os
te2as !unda2entales de dise5o de siste2as oerativos est6n relacionados con la gesti.n de rocesos:
Multirogra2aci.n: Es la gesti.n de varios rocesos dentro de un siste2a 2onorocesador+ /a 2a3or7a de
los co2utadores ersonales8 estaciones de tra1a%o8 siste2as 2onorocesador 3 siste2as oerativos
actuales de estas 260uinas8 tales co2o 9indo:s ;8 OS<= 3 el Siste2a ; de Macintos4 dan soorte a la
2ultirogra2aci.n+ /os siste2as oerativos co2o U&I> 3 /I&U> incororan 2ultirogra2aci.n de
siste2as 2onorocesador co2artidos+
Multiroceso : Es la gesti.n de varios rocesos dentro de un siste2a 2ultirocesador+ ?asta no 4ace
2uc4o8 los siste2as 2ultirocesador se utili$a1an @nica2ente en grandes siste2as8 co2utadores
centrales 3 2inico2utadores+ /os siste2as oerativos co2o MVS 3 VMS dan soorte de 2ultiroceso+
M6s reciente2ente8 el 2ultiroceso 4a e2e$ado a ganarse la aro1aci.n de los servidores 3 las
estaciones de tra1a%o+ 9indo:s &T es un e%e2lo de un siste2a oerativo dise5ado ara estos entornos+
Proceso distri1uido : Es la gesti.n de varios rocesos 0ue e%ecutan en siste2as de co2utadores 2@ltiles
3 re2otas+
-+=+ 'e!inici.n+
/a concurrencia es el unto clave de los tres ca2os anteriores 3 !unda2entales ara el diAse5o de siste2as
oerativos+ /a concurrencia co2rende un gran n@2ero de cuestiones de dise5o8 inclu3endo la co2unicaci.n
entre rocesos8 co2artici.n 3 co2etencia or los recursos8 sincroni$aci.n de la e%ecuci.n de varios rocesos 3
asignaci.n del tie2o de rocesador a los rocesos+ Se ver6 0ue estas cuestiones no solo surgen en entornos de
2ultiArocesadores 3 roceso distri1uido8 sino incluso en siste2as 2ultirogra2ados con un solo rocesador+
/a concurrencia uede resentarse en tres conteBtos di!erentes:
Varias alicaciones : /a 2ultirogra2aci.n se cre. ara er2itir 0ue el tie2o de rocesador de la
260uina !uese co2artido din62ica2ente entre varios tra1a%os o alicaciones activas+
Alicaciones estructuradas: Co2o a2liaci.n de los rinciios del dise5o 2odular 3 la rogra2aci.n
estructurada8 algunas alicaciones ueden i2le2entarse e!ica$2ente co2o un con%unto de rocesos
concurrentes+
Estructura del siste2a oerativo: /as 2is2as venta%as de estructuraci.n son alica1les a los
rogra2adores de siste2as 3 se 4a co2ro1ado 0ue algunos siste2as oerativos est6n i2le2entados
co2o un con%unto de rocesos+
-+C+ E%e2lo Concurrencia+
Para ilustrar estos concetos 3 co2arar los
2Dtodos resentados en este te2a8 se usan dos
ro1le2as cl6sicos de concurrencia+ En ri2er
lugar8 se resentar6 el ro1le2a del
roductor<consu2idor co2o e%e2lo t7ico+ El te2a
ter2ina con el ro1le2a de los lectores<escritores+
En un siste2a 2ultirogra2ado con un @nico
rocesador8 los rocesos se intercalan en el tie2o
ara dar la aariencia de e%ecuci.n si2ult6nea
E!igura -+-F+
Figura -+- A Intercalaci.n
P6gina - de -(
Colegio Universitario Francisco de Miranda
Unidad Curricular:: SISTEMAS OPERATIVOS
Modulo: SISTEMAS OPERATIVOS II
Auntes Recoilados or: Pro!esor "ernardo #on$ale$ Ro%as
Aun0ue no se consigue un roceso aralelo real 3
aun0ue se roduce una cierta so1recarga en los
interca21ios de rocesos de un sitio a otro8 la
e%ecuci.n intercalada roduce 1ene!icios
i2ortantes en la e!iciencia del rocesa2iento 3 en
la estructuraci.n de los rogra2as+
En un siste2a con varios rocesadores8 no solo es
osi1le intercalar los rocesos8 sino ta21iDn
sueronerlos E!igura -+=F+
Figura -+= G Intercalaci.n 3 Suerosici.n
A ri2era vista8 odr7a arecer 0ue la intercalaci.n 3 la suerosici.n reresentan !or2as de e%ecuci.n 2u3
di!erentes 3 0ue introducen ro1le2as distintos+ 'e 4ec4o8 a21as tDcnicas ueden conte2larse co2o e%e2los
de roceso concurrente 3 a21as lantean los 2is2os ro1le2as+ En el caso de un siste2a 2onorocesador8 los
ro1le2as creados or la 2ultirogra2aci.n arten del 4ec4o de 0ue la velocidad relativa de e%ecuci.n de los
rocesos no uede redecirse+ 'eende de la actividad de otros rocesos8 de la !or2a en 0ue el siste2a oerativo
trata las interruciones 3 de las ol7ticas de lani!icaci.n+ As7 surgen las siguientes di!icultades:
i+A /a co2artici.n de recursos glo1ales est6 llena de riesgos+ Por e%e2lo8 si dos rocesos 4acen uso al 2is2o
tie2o de la 2is2a varia1le glo1al 3 a21os llevan a ca1o tanto lecturas co2o escrituras so1re la varia1le8 el
orden en 0ue se e%ecuten las lecturas 3 escrituras es cr7tico+ En el siguiente aartado se o!rece un e%e2lo de
este ro1le2a+
ii+A Para el siste2a oerativo resulta di!7cil asignar los recursos de !or2a .ti2a+ Por e%e2lo8 el roceso A uede
solicitar el uso de un canal de E<S en articular 3 susenderse antes de 4acer uso del canal+ Si el siste2a
oerativo 1lo0uea el canal e i2ide su uso or arte de otros rocesos8 se tiene una cierta ine!iciencia+
iii+AResulta di!7cil locali$ar un error de rogra2aci.n or0ue los resultados no son nor2al2ente reroduci1les+
Todas las di!icultades anteriores se resentan ta21iDn en los siste2as 2ultirocesador8 3a 0ue ta21iDn en ellos es
i2redeci1le la velocidad relativa de e%ecuci.n de los rocesos+ Un siste2a 2ultirocesador de1e solucionar8
ade26s8 los ro1le2as originados or el 4ec4o de 0ue varios rocesos uedan estar e%ecutando a la ve$+ Sin
e21argo8 los ro1le2as son8 !unda2ental2ente8 los 2is2os 0ue en el caso anterior+
-+(+A /a1ores del Siste2a Oerativo+
HIuD ele2entos de gesti.n 3 dise5o surgen or causa de la concurrenciaJ Se ueden enu2erar los siguientes:
i+A El siste2a oerativo de1e ser caa$ de seguir la ista de los distintos rocesos activos+ Esto lo 4ace or
2edio de 1lo0ues de control de rocesos8 co2o se descri1i. en la unidad anterior+
ii+A El siste2a oerativo de1e asignar 3 0uitar los distintos recursos a cada roceso activo+ Entre estos recursos
se inclu3en:
Tie2o de rocesador: Es !unci.n de la lani!icaci.n+
Me2oria: /a 2a3or7a de los siste2as oerativos e2lean es0ue2as de 2e2oria virtual+
Arc4ivos+
'isositivos de E<S .
iii+A El siste2a oerativo de1e roteger los datos 3 los recursos !7sicos de cada roceso contra in%erencias no
intencionadas de otros rocesos+ Esto suone e2lear tDcnicas relativas a la 2e2oria8 arc4ivos 3
disositivos de E<S8 0ue se estudian en los ca7tulos corresondientes+
iv+A /os resultados de un roceso de1en ser indeendientes de la velocidad relativa a la 0ue se reali$a la
e%ecuci.n con resecto a otros rocesos concurrentes+
Para co2render c.2o se uede a1ordar la indeendencia de la velocidad8 4ace !alta estudiar las !or2as en las
0ue los rocesos ueden interactuar+
P6gina = de -(
Colegio Universitario Francisco de Miranda
Unidad Curricular:: SISTEMAS OPERATIVOS
Modulo: SISTEMAS OPERATIVOS II
Auntes Recoilados or: Pro!esor "ernardo #on$ale$ Ro%as
-+(+-+A Co2etencia entre rocesos or los recursos
/os rocesos concurrentes entran en con!licto cuando co2iten or el uso del 2is2o recurso+ "6sica2ente8 es
osi1le descri1ir esta situaci.n co2o sigue+ 'os o 26s rocesos necesitan acceder a un recurso durante el curso
de su e%ecuci.n+ Cada roceso no es consciente de la eBistencia de los otros 3 no se ve a!ectado or su e%ecuci.n+
'e a0u7 se o1tiene 0ue cada roceso de1e de%ar tal 3 co2o estD el estado de cual0uier recurso 0ue utilice+ Co2o
e%e2los de recursos se tienen a los disositivos de E<S8 la 2e2oria8 el tie2o de rocesador 3 el relo%+
&o 4a3 interca21io de in!or2aci.n entre los rocesos en co2etencia+ Sin e21argo8 la e%ecuci.n de un roceso
uede in!luir en el co2orta2iento de los rocesos 0ue co2iten+ En articular8 si dos rocesos desean acceder a
un @nico recurso8 el siste2a oerativo le asignar6 el recurso a uno de ellos 3 el otro tendr6 0ue eserar+ Por tanto8
el roceso al 0ue se niega el acceso se retrasar6+ En el eor caso8 el roceso 1lo0ueado uede 0ue no consiga
nunca acceder al recurso 38 or tanto8 no ter2inar6 con DBito nunca+
-+(+=+ACooeraci.n entre rocesos or co2artici.n
El caso de cooeraci.n or co2artici.n co2rende a los rocesos 0ue interact@an con otros sin tener
conoci2iento eBlicito de ellos+ Por e%e2lo8 varios rocesos ueden tener acceso a varia1les co2artidas8
arc4ivos o 1ases de datos co2artidas+ /os rocesos ueden e2lear 3 actuali$ar los datos co2artidos sin 4acer
re!erencia a los otros rocesos8 ero son conscientes de 0ue estos otros ueden tener acceso a los 2is2os datos+
As7 ues8 los rocesos de1en cooerar asa asegurar 0ue los datos 0ue se co2arten se gestionan
correcta2ente+ /os 2ecanis2os de control de1en garanti$ar la integridad de los datos co2artidos+
-+(+C+A Cooeraci.n entre rocesos or co2unicaci.n
En los dos ri2eros casos eBuestos8 cada roceso osee su roio entorno aislado8 0ue no inclu3e a los otros
rocesos+ /as interacciones entre los rocesos son indirectas+ En a21os casos8 eBiste co2artici.n+ En caso de
co2etencia8 los rocesos est6n co2artiendo recursos sin tener conoci2iento de la eBistencia de otros rocesos+
En el segundo caso8 est6n co2artiendo valores 38 aun0ue cada roceso no tiene conoci2iento eBlicito de los
otros8 si es consciente de la necesidad de conservar la integridad de los datos+ Cuando los rocesos cooeran or
co2unicaci.n8 en ca21io8 los distintos rocesos artician en una la1or co2@n 0ue une a todos los rocesos+ /a
co2unicaci.n es una 2anera de sincroni$ar o coordinar las distintas actividades+
&or2al2ente8 la co2unicaci.n uede caracteri$arse or estar !or2ada or 2ensa%es de alg@n tio+ /as ri2itivas
ara enviar 3 reci1ir 2ensa%es ueden venir dadas co2o arte del lengua%e de rogra2aci.n o or el n@cleo del
siste2a oerativo+
TEMA &K = SEMAFOROS+
=+-+ Introducci.n+
Se vuelven a considerar a4ora los 2ecanis2os 0ue se usan en el siste2a oerativo 3 en los lengua%es de
rogra2aci.n ara dar soorte a la concurrencia+ En este te2a se trataran los se26!oros+ En las dos siguientes
secciones se discutir6 so1re los 2onitores 3 el aso de 2ensa%es+
El ri2er gran avance en la resoluci.n de los ro1le2as de rocesos concurrentes lleg. en 1965, con el tratado de
'i%Lstra so1re la cooeraci.n entre rocesos secuDnciales8 'i%Lstra esta1a interesado en el dise5o de un siste2a
oerativo co2o un con%unto de rocesos secuDnciales cooerantes 3 en el desarrollo de 2ecanis2os e!icientes 3
!ia1les ara dar soorte a la cooeraci.n+ /os rocesos de usuario odr6n utili$ar estos 2ecanis2os en tanto 0ue
el rocesador 3 el siste2a oerativo los 4agan disoni1les+
El rinciio !unda2ental es el siguiente: 'os o 26s rocesos ueden cooerar or 2edio de si2les se5ales8 de
!or2a 0ue se ueda o1ligar a detenerse a un roceso en una osici.n deter2inada 4asta 0ue reci1a una se5al
esec7!ica+ Cual0uier re0uisito co2licado de coordinaci.n uede satis!acerse or 2edio de la estructura de
se5ales adecuada+ Para la se5ali$aci.n8 se usan varia1les eseciales lla2ados se26!oros. Para trans2itir una
se5al or el Se26!oro s, los rocesos e%ecutan la ri2itiva signalEsF. Para reci1ir una se5al del se26!oro s, los
rocesos e%ecutan la ri2itiva :aitEsF; si la se5al corresondiente a@n no se 4a trans2itido8 el roceso es
susendido 4asta 0ue tenga lugar la trans2isi.n+
P6gina C de -(
Colegio Universitario Francisco de Miranda
Unidad Curricular:: SISTEMAS OPERATIVOS
Modulo: SISTEMAS OPERATIVOS II
Auntes Recoilados or: Pro!esor "ernardo #on$ale$ Ro%as
=+=+ Funciona2iento de los Se26!oros+
Para lograr el e!ecto deseado8 se ueden conte2lar los se26!oros co2o varia1les 0ue tienen un valor entero
so1re el 0ue se de!inen las tres oeraciones siguientes:
i+A Un se26!oro uede iniciali$arse con un valor no negativo+
ii+A /a oeraci.n :ait decre2enta el valor del se26!oro+ Si el valor se 4ace negativo8 el roceso 0ue e%ecuta el
:ait se 1lo0uea+
iii+A/a oeraci.n signal incre2enta el valor del se26!oro+ Si el valor no es ositivo8 se desA1lo0uea a un roceso
1lo0ueado or una oeraci.n :ait.
Aarte de estas tres oeraciones8 no 4a3 !or2a de eBa2inar o 2aniular los se26!oros+
=+C+ I2le2entaci.n de Se26!oros+
/a !igura =+- roone una de!inici.n 26s !or2al de las ri2itivas de los se26!oros+ /as ri2itivas :ait 3 signal se
suonen at.2icas8 es decir8 no ueden ser interru2idas 3 cada rutina uede considerarse co2o un aso
indivisi1le+ En la !igura =+= se de!ine una versi.n 26s li2itada8 conocida co2o se26!oro 1inario. Un se26!oro
1inario solo uede to2ar los valores M 3 -+ En rinciio8 los se26!oros 1inarios son 26s sencillos de i2le2entar 3
uede de2ostrarse 0ue tienen la 2is2a otencia de eBresi.n 0ue los se26!oros generales+
Figura =+- G Una 'e!inici.n Pri2itivas Se26!oros
Figura =+= G Una 'e!inici.n Pri2itivas Se26!oros
"inarios
Tanto en los se26!oros co2o en los se26!oros 1inarios se e2lea una cola ara 2antener los rocesos
eserando en el se26!oro+ /a de!inici.n no dicta el orden en el 0ue se 0uitan los rocesos de dic4a cola+ /a
ol7tica 26s e0uitativa es la FIFO: el roceso 0ue 4a estado 1lo0ueado durante 26s tie2o se li1era de la cola+ /a
@nica eBigencia estricta es 0ue un roceso no de1e 0uedar retenido en la cola de un se26!oro inde!inida2ente
or0ue otros rocesos tengan re!erencia+ N
P6gina ( de -(
Colegio Universitario Francisco de Miranda
Unidad Curricular:: SISTEMAS OPERATIVOS
Modulo: SISTEMAS OPERATIVOS II
Auntes Recoilados or: Pro!esor "ernardo #on$ale$ Ro%as
=+(+A EBclusi.n Mutua
/a !igura =+C 2uestra una soluci.n sencilla al ro1le2a de la eBclusi.n 2utua or 2edio de un se26!oro s+ Sean n
rocesos8 identi!icados or el arra3 PEsF+ En cada roceso8 se e%ecuta un :aitEsF %usto antes de su secci.n cr7tica+
Si el valor de s es negativo8 se susende el roceso+ Si el valor es -8 se decre2enta a M 3 el roceso entra
in2ediata2ente en su secci.n criticaO uesto 0ue s 3a no es ositivo8 no se er2itir6 a ning@n otro roceso entrar
en su secci.n critica+
El se26!oro se iniciali$a a -+ 'e este 2odo8 el
ri2er roceso 0ue e%ecute un :ait odr6
entrar in2ediata2ente en la secci.n cr7tica8
oniendo el valor de s a M+ Cual0uier otro
roceso 0ue intente entras en la secci.n
critica /a encontrar6 ocuada 3 se 1lo0ueara8
oniendo el valor de s a A-+ Cual0uier n@2ero
de rocesos uede intentar entrarO cada uno
de estos intentos in!ructuosos origina un
nuevo decre2ento del valor de s.
El se26!oro se iniciali$a a -+ 'e este 2odo8 el
ri2er roceso 0ue e%ecute un :ait odr6
entrar in2ediata2ente en la secci.n cr7tica8
oniendo el valor de s a M+ Cual0uier otro
roceso 0ue intente entras en la secci.n
critica /a encontrar6 ocuada 3 se 1lo0ueara8
oniendo el valor de s a A-+ Cual0uier n@2ero
de rocesos uede intentar entrarO cada uno
de estos intentos in!ructuosos origina un
nuevo decre2ento del valor de s.
program eBclusionN2utuaO
const n P QO ER n@2ero de rocesos RFO var s: se26!oro
E:P -FO
procedure P Ei: enteroFO
begin
repeat
:aitEsF
Ssecci.n criticaTO
signalEsFO
SrestoT
forever
end;
begin ER rogra2a rincial RF
parbegin
PE-FO
PE=FO
Q
PEnFO
parend
end.
Figura =+C G EBclusi.n Mutua or Medio de Se26!oros
Cuando el roceso 0ue entr. al rinciio en su secci.n critica salga8 se incre2entar6 s 3 se eli2inar6 uno de los
rocesos 1lo0ueados Esi los 4a3F de la cola de rocesos asociada al se26!oro8 oniDndolo en el estado listo+
Cuando sea lani!icado de nuevo or el siste2a oerativo8 odr6 entrar en la secci.n critica+
El algorit2o de eBclusi.n
2utua or 2edio de
se26!oros se uede
ilustrar con el 2odelo del
igl@ E!igura =+(F+ Ade26s
de la i$arra8 el igl@ tiene
un otente congelador+
Un roceso entra ara
reali$ar un :ait,
decre2enta el valor de la
i$arra en -+ Si el valor
0ue 4a3 a4ora en la
i$arra no es negativo8
uede entrar en su
secci.n critica+ En otro
caso8 entra en
4i1ernaci.n en el
congelador+
Figura =+( G Un Iglu Se26!oro
P6gina U de -(
Colegio Universitario Francisco de Miranda
Unidad Curricular:: SISTEMAS OPERATIVOS
Modulo: SISTEMAS OPERATIVOS II
Auntes Recoilados or: Pro!esor "ernardo #on$ale$ Ro%as
Esto vac7a el interior del igl@8 er2itiendo 0ue otros rocesos entren+ Cuando un roceso 4a co2letado su
secci.n cr7tica8 entra al igl@ ara reali$ar un signal, incre2entando el valor de la i$arra en -+ Si el valor no es
ositivo8 li1era un roceso del congelador+ El rogra2a de la !igura =+C uede 2ane%ar igual de 1ien el re0uisito de
0ue 26s de un roceso ueda entrar en su secci.n cr7tica en un instante+ Este re0uisito se satis!ace si2le2ente
iniciali$ando el se26!oro con un valor esec7!ico+ 'e este 2odo8 en cual0uier instante8 el valor de s+contador uede
interretarse co2o sigue:
s+contador N M: s+contador es el n@2ero de rocesos 0ue ueden e%ecutar un :aitEsF sin 1lo0uearse Esi no se
e%ecuta ning@n signalEsF 2ientras tantoF+
s+contador SM: el valor a1soluto de s+contador es el n@2ero de rocesos 1lo0ueados en s.cola.
TEMA &K C MO&ITORES+
C+-+ Introducci.n+
/os se26!oros son una 4erra2ienta 16sica8 ero otente 3 !leBi1le8 ara 4acer cu2lir la eBclusi.n 2utua 3
coordinar rocesos+ Sin e21argo8 co2o se roone en la !igura (+-(8 uede resultar di!7cil construir un rogra2a
correcto or 2edio de se26!oros+ /a di!icultad est6 en 0ue las oeraciones :ait 3 signal de1en distri1uirse or todo
el rogra2a 3 no es !6cil advertir el e!ecto glo1al de estas oeraciones so1re los se26!oros a los 0ue a!ectan+
/os 2onitores son estructuras de un lengua%e de rogra2aci.n 0ue o!recen una !uncionalidad e0uivalente a la de
los se26!oros 3 0ue son 26s !6ciles de controlar+ /a estructura de 2onitor se 4a i2le2entado en varios lengua%es
de rogra2aci.n8 incluido Pascal Concurrente8 PascalAlus8 ModulaA= 3 ModulaAC+ M6s reciente2ente8 se 4an
i2le2entado co2o una 1i1lioteca de rogra2as+ Esto er2ite oner cierres de 2onitor a o1%etos cuales0uiera+ En
articular8 ara algo arecido a una lista enla$ada8 se uede 0uerer 1lo0uear todas las listas enla$adas con un solo
cierre o 1ien tener un cierre ara cada ele2ento de cada lista+
Se co2en$ar6 estudiando la versi.n de ?oare ara desuDs eBa2inar una leve 2odi!icaci.n+
C+=+A Monitores con Se5ales+
Un 2onitor es un 2.dulo de so!t:are 0ue consta de uno o 26s rocedi2ientos8 una secuencia de iniciali$aci.n 3
unos datos locales+ /as caracter7sticas 16sicas de un 2onitor son las siguientes:
i+A /as varia1les de datos locales est6n solo accesi1les ara los rocedi2ientos del 2onitor 3 no ara
rocedi2ientos eBternos+
ii+A Un roceso entra en el 2onitor invocando a uno de sus rocedi2ientos+
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
/as dos ri2eras caracter7sticas recuerdan a las de los o1%etos del so!t:are orientado a o1%etos+ En realidad8 un
siste2a oerativo o lengua%e de rogra2aci.n orientado a o1%etos uede i2le2entar un 2onitor !6cil2ente co2o
un o1%eto con caracter7sticas eseciales+
Si se cu2le la nor2a de un roceso cada ve$8 el 2onitor uede o!recer un servicio de eBclusi.n 2utua+ /as
varia1les de datos del 2onitor ueden ser accedidas solo or un roceso cada ve$+ As7 ues8 una estructura de
datos co2artida uede rotegerse situ6ndola dentro de un 2onitor+ Si los datos del 2onitor reresentan a alg@n
recurso8 el 2onitor o!recer6 un servicio en eBclusi.n 2utua en el acceso a este recurso+
Para 0ue resulten @tiles en el roceso concurrente los 2onitores de1en incluir 4erra2ientas de sincroni$aci.n+ Por
e%e2lo8 su.ngase 0ue un roceso lla2a a un 2onitor 38 2ientras est6 en el 2onitor8 de1e susenderse 4asta
0ue se cu2la alguna condici.n+ ?ace !alta un servicio ara 0ue el roceso no solo estD susendido8 sino 0ue
li1ere el 2onitor 3 otro roceso ueda entrar+ M6s tarde8 cuando se cu2la la condici.n 3 el 2onitor est6 de nuevo
disoni1le8 el roceso uede reanudarse 3 tiene 0ue er2it7rsele volver a entrar en el 2onitor en el unto de la
susensi.n+
P6gina V de -(
Colegio Universitario Francisco de Miranda
Unidad Curricular:: SISTEMAS OPERATIVOS
Modulo: SISTEMAS OPERATIVOS II
Auntes Recoilados or: Pro!esor "ernardo #on$ale$ Ro%as
Un 2onitor roorciona sincroni$aci.n or 2edio de las varia1les de condici.n 0ue se inclu3en dentro del 2onitor 3
0ue son accesi1les s.lo desde dentro+ ?a3 dos !unciones ara oerar con las varia1les de condici.n:
:aitEcF: Susende la e%ecuci.n del roceso lla2ado 1a%o la condici.n c+ El 2onitor est6 a4ora disoni1le ara ser
usado or otro roceso+
signalEcF: Reanuda la e%ecuci.n de alg@n roceso susendido desuDs de un :ait 1a%o la 2is2a condici.n+ Si 4a3
varios rocesos8 elige uno de ellosO si no 4a3 ninguno8 no 4ace nada+
&.tese 0ue las oeraciones de 2onitor
:ait<signal son di!erentes de las de los
se26!oros+ Si un roceso de un 2onitor
e%ecuta un signal 3 no 4a3 tareas eserando
en la varia1le de condici.n8 el signal se
ierde
/a !igura C+- ilustra la estructura de un
2onitor+ Aun0ue un roceso uede entrar al
2onitor lla2ando a cual0uiera de sus
rocedi2ientos8 uede considerarse 0ue el
2onitor tiene un @nico unto de entrada 0ue
est6 custodiado ara 0ue s.lo un roceso
ueda estar en el 2onitor en cada instante+
Otros rocesos 0ue intenten entrar al
2onitor se a5adir6n a una cola de rocesos
susendidos 2ientras eseran a 0ue el
2onitor estD disoni1le+ Una ve$ 0ue un
roceso est6 dentro del 2onitor8 uede
susenderse a s7 2is2o te2oral2ente 1a%o
la condici.n x e%ecutando :aitEBF; entonces
se sit@a en una cola de rocesos 0ue
eseran volver a entrar al 2onitor cuando la
condici.n ca21ie+
Si un roceso 0ue est6 e%ecutando en el
2onitor detecta un ca21io en una varia1le
de condici.n B8 e%ecuta signalEBF8 lo 0ue
avisa a la cola de condici.n corresondiente
de 0ue la condici.n 4a ca21iado+
Figura C+- G Estructura de un Monitor
/a !igura (+=( 2uestra una soluci.n con 2onitores+ El 2.dulo 2onitor8 1u!!erNacotado, controla el 1u!!er e2leado
ara al2acenar 3 retirar caracteres+ El 2onitor inclu3e dos varia1les de condici.n: noNlleno es cierta cuando 4a3
sitio ara a5adir al 2enos un car6cter al 1u!!er 3 noNvac7o es cierta cuando 4a3 al 2enos un car6cter en el 1u!!er+
Un roductor s.lo uede a5adir caracteres al 1u!!er or 2edio del rocedi2iento
TEMA &K ( PASO 'E ME&SAWES+
(+-+ Introducci.n+
Cuando los rocesos interact@an unos con otros8 se de1en satis!acer dos re0uisitos 16sicos: la sincroni$aci.n 3 la
co2unicaci.n+ /os rocesos tienen 0ue sincroni$arse ara cu2lir la eBclusi.n 2utuaO los rocesos cooerantes
ueden necesitar interca21iar in!or2aci.n+ Un 2Dtodo osi1le ara o!recer a21as !unciones es el aso de
2ensa%es+ El aso de 2ensa%es tiene la venta%a adicional de 0ue se resta a ser i2le2entado en siste2as
distri1uidos8 as7 co2o en siste2as 2ultirocesador 3 2onorocesador de 2e2oria co2artida+
P6gina ; de -(
Colegio Universitario Francisco de Miranda
Unidad Curricular:: SISTEMAS OPERATIVOS
Modulo: SISTEMAS OPERATIVOS II
Auntes Recoilados or: Pro!esor "ernardo #on$ale$ Ro%as
?a3 varias !or2as de siste2as de aso de 2ensa%es+ En esta secci.n8 se o!recer6 una introducci.n general 0ue
discute las caracter7sticas t7icas encontradas en estos siste2as+ /a !uncionalidad real del aso de 2ensa%es se
o!rece8 nor2al2ente8 or 2edio de un ar de ri2itivas:
send Edestino8 2ensa%eF
receive Eorigen8 2ensa%eF
Este es el con%unto 27ni2o de oeraciones necesario ara 0ue los rocesos uedan dedicarse al aso de
2ensa%es+ Un roceso env7a in!or2aci.n en !or2a de un mensaje a otro roceso designado co2o destino. Un
roceso reci1e in!or2aci.n e%ecutando la ri2itiva receive, 0ue indica el roceso e2isor (origen) 3 el mensaje.
(+=+A Sincroni$aci.n+
/a co2unicaci.n de un 2ensa%e entre dos rocesos i2lica cierto nivel de sincroni$aci.n entre a21os+ El recetor
no uede reci1ir un 2ensa%e 4asta 0ue sea enviado or otro roceso+ Ade26s8 4ace !alta eseci!icar 0uD le sucede
a un roceso desuDs de e%ecutar una ri2itiva sena o receive.
ConsidDrese en ri2er lugar la ri2itiva send+ Cuando se e%ecuta una ri2itiva sena en un roceso8 4a3 dos
osi1ilidades: O 1ien el roceso e2isor se 1lo0uea 4asta 0ue se reci1e el 2ensa%e o no se 1lo0uea+
An6loga2ente8 cuando un roceso e%ecuta una ri2itiva receive, 4a3 dos osi1ilidades:
i+A Si revia2ente se 4a enviado alg@n 2ensa%e8 Dste es reci1ido 3 contin@a la e%ecuci.n+
ii+A Si no 4a3 ning@n 2ensa%e eserando entonces8 o 1ien EaF el roceso se 1lo0uea 4asta 0ue llega un
2ensa%e o E1F el roceso contin@a e%ecutando8 a1andonando el intento de receci.n+
As7 ues8 tanto el e2isor co2o el recetor ueden ser 1lo0ueantes o no 1lo0ueantes+ Son 4a1ituales las siguientes
tres co21inaciones8 aun0ue cual0uier siste2a concreto i2le2enta s.lo una o dos co21inaciones:
Env7o 1lo0ueante8 receci.n 1lo0ueante : Tanto el e2isor co2o el recetor se 1lo0uean 4asta 0ue se
entrega el 2ensa%eO esta tDcnica se conoce co2o rende$vous+ Esta co21inaci.n er2ite una !uerte
sincroni$aci.n entre rocesos+
Env7o no 1lo0ueante8 receci.n 1lo0ueante : Aun0ue el e2isor uede continuar8 el recetor se 1lo0uea
4asta 0ue llega el 2ensa%e solicitado+ Esta es8 ro1a1le2ente8 la co21inaci.n 26s @til+ Per2ite 0ue un
roceso env7e uno o 26s 2ensa%es a varios destinos tan r6ido co2o sea osi1le+ Un roceso 0ue de1e
reci1ir un 2ensa%e antes de oder 4acer alguna !unci.n @til tiene 0ue 1lo0uearse 4asta 0ue llegue el
2ensa%e+ Un e%e2lo es el de un roceso servidor 0ue o!re$ca un servicio o un recurso a otros rocesos+
Env7o no 1lo0ueante8 receci.n no 1lo0ueante : &adie de1e eserar+
El send no 1lo0ueante es la !or2a 26s natural ara 2uc4as tareas de rogra2aci.n concurrente+ Por e%e2lo8 si
se usa ara solicitar una oeraci.n de salida8 tal co2o una i2resi.n8 er2ite al roceso solicitante reali$ar la
solicitud en !or2a de 2ensa%e 3 continuar+ Un osi1le riesgo del send no 1lo0ueante es 0ue un error uede llevar a
una situaci.n en la 0ue el roceso genere 2ensa%es reetida2ente+ Co2o no 4a3 1lo0ueo ara 4acer entrar en
discilina al roceso8 esos 2ensa%es ueden consu2ir recursos del siste2a8 incluido tie2o del rocesador 3
esacio en 1u!!er8 en detri2ento de otros rocesos 3 del siste2a oerativo+ Ade26s8 el send no 1lo0ueante carga
so1re el rogra2ador el eso de deter2inar 0uD 2ensa%e se 4a reci1ido: /os rocesos de1en e2lear 2ensa%es
de resuesta ara acusar /a receci.n de un 2ensa%e+
Para la ri2itiva receive, la versi.n 1lo0ueante arece ser la 26s natural ara 2uc4as tareas de rogra2aci.n
concurrente+ En general8 un roceso 0ue solicita un 2ensa%e necesitar6 la in!or2aci.n eserada antes de
continuar+ Sin e21argo8 si se ierde un 2ensa%e8 un roceso recetor uede 0uedarse 1lo0ueado inde!inida2ente+
Este ro1le2a uede resolverse or 2edio del receive no 1lo0ueante+ Sin e21argo8 el riesgo de esta soluci.n es
0ue si un 2ensa%e se env7a desuDs de 0ue un roceso 4a3a e%ecutado el corresondiente receive, el 2ensa%e se
erder6+ Otro 2Dtodo osi1le consiste en er2itir a un roceso co2ro1ar si 4a3 un 2ensa%e eserando antes de
e%ecutar un receive 3 en er2itir a un roceso eseci!icar 26s de un origen en una ri2itiva receive. Esta @lti2a
tDcnica resulta @til si un roceso esera 2ensa%es de 26s de un origen 3 uede continuar si llega cual0uiera de
estos 2ensa%es+
P6gina X de -(
Colegio Universitario Francisco de Miranda
Unidad Curricular:: SISTEMAS OPERATIVOS
Modulo: SISTEMAS OPERATIVOS II
Auntes Recoilados or: Pro!esor "ernardo #on$ale$ Ro%as
(+C+A 'irecciona2iento+
Evidente2ente8 es necesario disoner de alguna !or2a de eseci!icar en la ri2itiva send 0uD roceso va a reci1ir
el 2ensa%e+ 'e !or2a si2ilar8 la 2a3or7a de las i2le2entaciones er2iten a los rocesos recetores indicar el
origen del 2ensa%e 0ue se va a reci1ir+
/os distintos es0ue2as ara 4acer re!erencia a los rocesos en las ri2itivas sena 3 receive se encuadran dentro
de dos categor7as: direcciona2iento directo e indirecto+ Con el direcciona2iento directo, la ri2itiva sena inclu3e
una identi!icaci.n esec7!ica del roceso destino+ /a ri2itiva receive se uede gestionar de dos !or2as+ Una
osi1ilidad re0uiere 0ue el roceso designe eBl7cita2ente un roceso e2isor+ As7 ues8 el roceso de1e conocer
de ante2ano de 0uD roceso esera un 2ensa%e+ Esto suele ser e!ica$ ara rocesos concurrentes 3 cooerantes+
En otros casos8 sin e21argo8 es i2osi1le eseci!icar el roceso de origen or anticiado+ Un e%e2lo es un
roceso servidor de i2resoras8 0ue acetar6 2ensa%es de solicitud de i2resi.n de cual0uier otro roceso+ Para
tales alicaciones8 una tDcnica 26s e!ectiva consiste en usar direcciona2iento i2l7cito+ En este caso8 el
ar62etro origen de la ri2itiva receive tendr6 un valor de reto2o cuando se 4a3a reali$ado la oeraci.n de
receci.n+
El otro en!o0ue es el direcciona2iento indirecto. En este caso8 los 2ensa%es no se env7an directa2ente del e2isor
al recetor8 sino a una estructura de datos co2artida !or2ada or colas 0ue ueden guardar los 2ensa%es
te2oral2ente+ Estas colas se deno2inan general2ente 1u$ones E2ail1oBesF. 'e este 2odo8 ara 0ue dos
rocesos se co2uni0uen8 uno env7a 2ensa%es al 1u$.n aroiado 3 el otro los coge del 1u$.n+
Una venta%a del direcciona2iento indirecto es 0ue se desacola a e2isor 3 recetor8 er2itiendo una 2a3or
!leBi1ilidad en el uso de los 2ensa%es+ /a relaci.n entre e2isores 3 recetores uede ser uno a uno8 de 2uc4os a
uno8 de uno a 2uc4os o de 2uc4os a 2uc4os+ Una relaci.n uno a uno er2ite 0ue se esta1le$ca un enlace
rivado de co2unicaciones entre dos rocesos8 lo 0ue a7sla su interacci.n de in%erencias err.neas de otros
rocesos+ Una relaci.n de 2uc4os a uno resulta @til ara interacciones cliente<servidor8 donde un roceso o!rece
un servicio a un con%unto de rocesos+ En este caso8 el 1u$.n se deno2ina uerto E!igura (+-F+ Una relaci.n uno a
2uc4os er2ite un e2isor 3 2uc4os recetoresO es @til ara alicaciones en las 0ue un 2ensa%e o alguna
in!or2aci.n se di!unda a un con%unto de rocesos+
/a asociaci.n de rocesos a 1u$ones uede ser
est6tica o din62ica+ /os uertos suelen estar
asociados est6tica2ente con alg@n roceso en
articular8 es decir8 el uerto se crea 3 se asigna al
roceso er2anente2ente+ 'e !or2a si2ilar8 una
relaci.n uno a uno nor2al2ente se de!ine de !or2a
est6tica 3 er2anente+ Cuando 4a3 varios
e2isores8 la asociaci.n de un e2isor a un 1u$.n
uede reali$arse din62ica2ente+ Se ueden usar
ri2itivas co2o conectar 3 desconectar con este
ro.sito+
Una cuesti.n a!7n es la de la roiedad del 1u$.n+
En el caso de un uerto8 nor2al2ente ertenece 3
es creado or el roceso recetor+ 'e este 2odo8
cuando se destru3e el roceso8 ta21iDn se
destruir6 el uerto+ Para el caso general de los
1u$ones8 el siste2a oerativo uede o!recer un
servicio de creaci.n de 1u$ones+ Estos 1u$ones
ueden ser considerados co2o roiedad del
roceso creador8 en cu3o caso se destru3en %unto
con el roceso o ueden ser considerados co2o
roiedad del siste2a oerativo8 en cu3o caso se
necesita una orden eBl7cita ara destruir el 1u$.n+
Figura (+-A Co2unicaci.n Indirecta Entre Procesos
P6gina Y de -(
Colegio Universitario Francisco de Miranda
Unidad Curricular:: SISTEMAS OPERATIVOS
Modulo: SISTEMAS OPERATIVOS II
Auntes Recoilados or: Pro!esor "ernardo #on$ale$ Ro%as
(+(+A For2ato de Mensa%es+
El !or2ato de los 2ensa%es deende de los o1%etivos del servicio de 2ensa%er7a 3 de si el servicio e%ecuta en un
ordenador indeendiente o en un siste2a distri1uido+ Para algunos siste2as oerativos8 los dise5adores 4an
elegido 2ensa%es cortos 3 de ta2a5o !i%o ara 2ini2i$ar el rocesa2iento 3 el coste de al2acena2iento+ Si se va
a asar una gran cantidad de datos8 los datos ueden onerse en un arc4ivo 3 el 2ensa%e si2le2ente 4ar6
re!erencia a este arc4ivo+ Una soluci.n 26s !leBi1le es er2itir 2ensa%es de longitud varia1le+
/a !igura (+= 2uestra un !or2ato t7ico de
2ensa%es ara siste2as oerativos 0ue
er2iten 2ensa%es de longitud varia1le+ El
2ensa%e se divide en dos artes: una
ca1ecera8 0ue al1erga in!or2aci.n so1re el
2ensa%e 3 un cuero8 0ue al1erga el
contenido real del 2ensa%e+ /a ca1ecera
uede contener una identi!icaci.n del origen
3 el destino deseados8 un ca2o de longitud
3 un ca2o de tio ara distinguir entre
varios tios de 2ensa%es+ Puede 4a1er
ta21iDn in!or2aci.n de control adicional8
co2o un ca2o auntador ara oder crear
una lista enla$ada de 2ensa%esO un n@2ero
de secuencia8 ara guardar constancia del
orden 3 n@2ero de 2ensa%es asados entre
origen 3 destinoO 3 un ca2o de rioridad+
Figura (+=A For2ato T7ico de Mensa%e
TEMA &K U Secci.n Cr7tica+
U+-+ 'e!inici.n+
Se deno2ina secci.n cr7tica8 en rogra2aci.n concurrente8 a la orci.n de c.digo de un rogra2a de co2utador
en la cual se accede a un recurso co2artido Eestructura de datos o disositivoF 0ue no de1e ser accedido or 26s
de un 4ilo en e%ecuci.n+ /a secci.n cr7tica or lo general ter2ina en un tie2o deter2inado 3 el 4ilo8 roceso o
tarea s.lo tendr6 0ue eserar un er7odo deter2inado de tie2o ara entrar+ Se necesita un 2ecanis2o de
sincroni$aci.n en la entrada 3 salida de la secci.n cr7tica ara asegurar la utili$aci.n en eBclusiva del recurso+
El acceso concurrente se controla teniendo cuidado de las varia1les 0ue se 2odi!ican dentro 3 !uera de la secci.n
cr7tica+ /a secci.n cr7tica se utili$a or lo general cuando un rogra2a 2ulti4ilo actuali$a 2@ltiles varia1les sin un
4ilo de e%ecuci.n searado 0ue lleve los ca21ios con!lictivos a esos datos+ Una situaci.n si2ilar8 la secci.n cr7tica
uede ser utili$ada ara asegurarse de 0ue un recurso co2artido8 or e%e2lo8 una i2resora8 uede ser
accedida or un solo roceso a la ve$+
U+=+ El Pro1le2a de la Secci.n Cr7tica+
El ro1le2a de la secci.n cr7tica es uno de los ro1le2as 0ue con 2a3or !recuencia aarece cuando se e%ecutan
rocesos concurrentes+ /a 2anera en c.2o se i2le2entan las secciones uede variar deendiendo de los
diversos siste2as oerativos+ S.lo un roceso uede estar en una secci.n cr7tica a la ve$+
/os rocesos concurrentes entran en con!licto cuando co2iten or el uso del 2is2o recurso8 es decir8 0uieren
acceder a un recurso al 2is2o tie2o+ ) la e%ecuci.n de un roceso uede in!luir en el co2orta2iento de los
rocesos 0ue co2iten 3 el siste2a oerativo le asignar6 el recurso a uno de ellos 3 el otro tendr6 0ue eserar+
P6gina -M de -(
Colegio Universitario Francisco de Miranda
Unidad Curricular:: SISTEMAS OPERATIVOS
Modulo: SISTEMAS OPERATIVOS II
Auntes Recoilados or: Pro!esor "ernardo #on$ale$ Ro%as
Por lo 0ue el roceso 0ue 0uede eserando8 se retrasar68 se 1lo0ueara 3 en el eor de los casos nunca se
ter2inar6 con DBito
Es en estos rocesos concurrentes8 donde8 se lantean una serie de situaciones cl6sicas de co2unicaci.n 3
sincroni$aci.n8 entre ellos el ro1le2a de la secci.n cr7tica+
Para entender un oco 2e%or el conceto se resenta el siguiente e%e2lo: Se tiene un Siste2a Oerativo 0ue
de1e asignar un identi!icador de roceso EPI'F a dos rocesos en un siste2a 2ultirocesador+ Cuando el SO
reali$a esta acci.n en dos rocesadores de !or2a si2ult6nea sin ning@n tio de control8 se ueden roducir
errores8 3a 0ue se uede asignar el 2is2o PI' a dos rocesos distintos+ Este ro1le2a se de1e a 0ue constitu3en
una secci.n cr7tica 0ue de1e e%ecutarse en !or2a at.2ica8 es decir8 de !or2a co2leta e indivisi1le 3 ning@n otro
roceso odr6 e%ecutar dic4o c.digo 2ientras el ri2ero no 4a3a aca1ado su secci.n+
U+C+A Soluci.n a la Secci.n Cr7tica+
Para resolver el ro1le2a de la secci.n cr7tica es necesario utili$ar alg@n 2ecanis2o de sincroni$aci.n 0ue
er2ita a los rocesos cooerar entre ellos sin ro1le2as+ Este 2ecanis2o de1e roteger el c.digo de la secci.n
cr7tica 3 su !unciona2iento 16sico es el siguiente:
Cada roceso de1e solicitar er2iso ara entrar en la secci.n cr7tica8 2ediante alg@n !rag2ento de c.digo
0ue se deno2ina de !or2a genDrica entrada en la secci.n cr7tica+
Cuando un roceso sale de la secci.n cr7tica de1e indicarlo 2ediante otro !rag2ento de c.digo 0ue se
deno2ina salida de la secci.n cr7tica+ Este !rag2ento er2itir6 0ue otros rocesos entren a e%ecutar el
c.digo de la secci.n cr7tica+
Cual0uier soluci.n 0ue se utilice ara resolver este ro1le2a de1e cu2lir los tres re0uisitos siguientes:
EBclusi.n 2utua : Si un roceso est6 e%ecutando c.digo de la secci.n cr7tica8 ning@n otro roceso lo odr6
4acer+
Progreso : Si ning@n roceso est6 e%ecutando dentro de la secci.n cr7tica8 la decisi.n de 0uD roceso entra
en la secci.n se 4ar6 so1re los rocesos 0ue desean entrar+
Esera acotada : 'e1e 4a1er un l72ite en el n@2ero de veces 0ue se er2ite 0ue los de26s rocesos entren
a e%ecutar c.digo de la secci.n cr7tica desuDs de 0ue un roceso 4a3a e!ectuado una solicitud de entrada 3
antes de 0ue se conceda la su3a+
U+(+A EBclusi.n Mutua+
/a eBclusi.n 2utua Eintroducida en el te2a nK =F la odr7a2os de!inir co2o una oeraci.n de control 0ue er2ite la
coordinaci.n de rocesos concurrentes8 3 0ue tiene la caacidad de ro4i1ir a los de26s rocesos reali$ar una
acci.n cuando un roceso 4a3a o1tenido el er2iso+
El control de la co2etencia involucra al siste2a oerativo inevita1le2ente8 or0ue es el siste2a oerativo el 0ue
asigna los recursos+ Ade26s8 los rocesos de1en ser caaces or s7 2is2os de eBresar de alg@n 2odo los
re0uisitos de eBclusi.n 2utua8 co2o uede ser 1lo0ueando los recursos antes de usarlos+
?acer 0ue se cu2la la eBclusi.n 2utua crea dos ro1le2as de control adicionales+
Inter1lo0ueo + Si se tienen dos rocesos P- 3 P= 3 dos recursos cr7ticos8 R- 3 R=+ Su.ngase 0ue cada
roceso necesita acceder a a21os recursos ara llevar a ca1o una arte de su !unci.n+ En tal caso8 es
osi1le 0ue se resente la siguiente situaci.n: el siste2a oerativo asigna R- a P= 3 R= a P-+ Cada roceso
est6 eserando a uno de los dos recursos+ &inguno li1erar6 el recurso 0ue 3a osee 4asta 0ue ad0uiera el
otro 3 e%ecute su secci.n cr7tica+ A21os rocesos est6n 7nter1lo0ueados+
Inanici.n+ Su.ngase 0ue tres rocesos8 P-8 P= 3 PC8 necesitan acceder eri.dica2ente al recurso R+
ConsidDrese la situaci.n en la 0ue P- est6 en osesi.n del recurso 3 tanto P= co2o PC est6n arados8
eserando al recurso+ Cuando P- a1andona su secci.n cr7tica8 tanto P= co2o PC de1en oder acceder a R+
Su.ngase 0ue se le concede el acceso a PC 3 0ue8 antes de 0ue ter2ine su secci.n cr7tica8 P- solicita
P6gina -- de -(
Colegio Universitario Francisco de Miranda
Unidad Curricular:: SISTEMAS OPERATIVOS
Modulo: SISTEMAS OPERATIVOS II
Auntes Recoilados or: Pro!esor "ernardo #on$ale$ Ro%as
acceso de nuevo+ Si se le concede el acceso a P- desuDs de 0ue PC ter2ine 3 si P- 3 PC se conceden el
acceso reetida2ente el uno al otro8 se uede negar de!inida2ente a P= el acceso al recurso+
U+(+-+ARe0uisitos ara la eBclusi.n 2utua+
El uso adecuado de la concurrencia entre rocesos eBige la caacidad de de!inir secciones cr7ticas 3 4acer cu2lir
la eBclusi.n 2utua+ Esto es !unda2ental ara cual0uier es0ue2a de roceso concurrente+ Cual0uier servicio o
caacidad 0ue dD soorte ara la eBclusi.n 2utua de1e cu2lir los re0uisitos siguientes:
i+A 'e1e cu2lirse la eBclusi.n 2utua: Solo un roceso8 de entre todos los 0ue oseen secciones cr7ticas or
el 2is2o recurso u o1%eto co2artido8 de1e tener er2iso ara entrar en ella en un instante dado+
ii+A Un roceso 0ue se interru2e en una secci.n no cr7tica de1e 4acerlo sin estor1ar a los otros rocesos+
iii+A Un roceso no de1e oder solicitar acceso a una secci.n cr7tica ara desuDs ser de2orado
inde!inida2enteO no uede er2itirse el inter1lo0ueo o la inanici.n+
iv+A Cuando ning@n roceso est6 en su secci.n cr7tica8 cual0uier roceso 0ue solicite entrar en la su3a de1e
oder 4acerlo sin dilaci.n+
v+A &o se ueden 4acer suosiciones so1re la velocidad relativa de los rocesos o su n@2ero+
vi+A Un roceso er2anece en su secci.n cr7tica solo or un tie2o !inito+
U+(+=+A Soluciones a la eBclusi.n 2utua+
?a3 varias !or2as de satis!acer los re0uisitos de eBclusi.n 2utua:
Soluciones or So!t:are+ Una 2anera es de%ar la resonsa1ilidad a los rocesos 0ue deseen e%ecutar
concurrente2ente8 de esta 2anera los rocesos de1en coordinarse unos con otros ara cu2lir la eBclusi.n 2utua
sin a3uda alguna8 aun0ue estas soluciones son roensas a errores 3 a una !uerte carga de roceso EAlgunos
e%e2los de estas son: Algorit2o de 'eLLer 3 Algorit2o de PetersonF+
Soluciones or ?ard:are+ Proone el uso de instrucciones de la 260uina a tal e!ecto8 estas tienen la venta%a de
reducir la so1recarga+
El tercer 2Dtodo consiste en dar alg@n tio de soorte en el siste2a oerativo8 entre estos 2Dtodos se encuentran
los se26!oros8 2onitores8 aso de 2ensa%es8 etc+
RESUME&+
/os te2as centrales de los siste2as oerativos 2odernos son la 2ultirogra2aci.n8 el 2ultiroceso 3 el roceso
distri1uido+ Un unto !unda2ental en estos te2as 3 en las tecnolog7as de dise5o de siste2as oerativos es la
concurrencia+ Cuando se e%ecutan varios rocesos concurrente2ente8 en el caso real de un siste2a
2ultirocesador o en el caso virtual de un siste2a 2onorocesador 2ultirogra2ado8 aarecen cuestiones de
resoluci.n de con!lictos 3 de cooeraci.n+
/os rocesos concurrentes ueden interactuar de varias !or2as+ /os rocesos 0ue no tienen conoci2iento unos de
otros ueden co2etir or recursos tales co2o el tie2o del rocesador o los disositivos de E<S+ /os rocesos
ueden tener conoci2iento indirecto de los otros or0ue co2arten el acceso a unos o1%etos co2unes8 tales co2o
un 1lo0ue de 2e2oria rincial o un arc4ivo+ /os rocesos ueden tener un conoci2iento directo de los otros 3
cooerar 2ediante interca21io de in!or2aci.n+ /os untos clave 0ue surgen en esta interacci.n son la eBclusi.n
2utua 3 el inter1lo0ueo+
/a eBclusi.n 2utua es una condici.n en la cual 4a3 un con%unto de rocesos concurrentes 3 s.lo uno uede
acceder a un recurso dado o reali$ar una !unci.n dada en cada instante de tie2o+ /as tDcnicas de eBclusi.n
2utua ueden usarse ara resolver con!lictos8 tales co2o co2etencia or los recursos 3 ara sincroni$ar
rocesos de 2odo 0ue uedan cooerar+
Se 4an desarrollado varios algorit2os en so!t:are ara o!recer eBclusi.n 2utua8 de los cuales el 26s conocido es
el algorit2o de 'eLLer+ /as soluciones or so!t:are suelen tener un alto coste 3 el riesgo de errores l.gicos en el
P6gina -= de -(
Colegio Universitario Francisco de Miranda
Unidad Curricular:: SISTEMAS OPERATIVOS
Modulo: SISTEMAS OPERATIVOS II
Auntes Recoilados or: Pro!esor "ernardo #on$ale$ Ro%as
rogra2a es ta21iDn alto+ Un segundo con%unto de 2Dtodos ara soortar la eBclusi.n 2utua suonen el uso de
instrucciones eseciales de la 260uina+ Estos 2Dtodos reducen la so1recarga8 ero son a@n ine!icientes or0ue
e2lean esera activa+
Otro 2Dtodo ara dar soorte a la eBclusi.n 2utua consiste en incluir las caracter7sticas dentro del siste2a
oerativo+ 'os de las tDcnicas 26s co2unes son los se26!oros 3 el aso de 2ensa%es+ /os se26!oros se usan
ara la se5ali$aci.n entre rocesos 3 ueden e2learse !6cil2ente ara 4acer resetar una discilina de eBclusi.n
2utua+ /os 2ensa%es son @tiles ara el cu2li2iento de la eBclusi.n 2utua 3 o!recen ta21iDn un 2edio e!ectivo de
co2unicaci.n entre rocesos+
P6gina -C de -(
Colegio Universitario Francisco de Miranda
Unidad Curricular:: SISTEMAS OPERATIVOS
Modulo: SISTEMAS OPERATIVOS II
Auntes Recoilados or: Pro!esor "ernardo #on$ale$ Ro%as
"I"/I#RAFIA+
Estos auntes !ueron recoilados de Internet8 entre las 6ginas 9E" 0ue se resentan a continuaci.n:
-+ SISTEMAS OPERATIVOSASegunda edici.nA9illia2 StallingsAPRE&TICE ?A//
=+ 4tt:<<es+:iLiedia+org<:iLi<SecciZCCZ"CnNcrZCCZA'tica
C+ 4tt:<<:::+2itecnologico+co2<Main<EBclusionMutuaSeccionesCriticas
P6gina -( de -(

También podría gustarte