8/17/2019 Sistemas Operativos 2.0
1/51
8/17/2019 Sistemas Operativos 2.0
2/51
*+u es un siste(ao-eratio.
Es un -rogra(a que a$(inistra losrecursos $e har$/are $e unaco(-uta$ora, -ro-orciona 0ases -aralos -rogra(as $e a-licaci1n y act2aco(o inter(e$iario entre el usuario y
el har$/are3 Algo $estaca0le $e un siste(a
o-eratio es la gran arie$a$ $e)or(as en la que -ue$en e4ecutar unatarea3
"os siste(as o-eratios son $ise5a$os-ara (2lti-les -ro-1sitos co(o: Ser efcientes, -ara o-ti(i!ar el uso $el
har$/are3 E4e(-lo: Main)ra(es oco(-uta$or central3
Ser prácticos, -ara e4ecutar to$o ti-o $ea-licaciones y un ser )áciles $e usar3 E4e(-lo:
8/17/2019 Sistemas Operativos 2.0
3/51
Puntos $e ista
Varia seg2n la inter)a! que se use3 Por e4e(-lo:
Cuan$o el usuario usauna PC co(2n3
Cuan$o se estaconecta$o a unaestaci1n $e tra0a4o3
Cuan$o se conecta auna (icroco(-uta$ora3 Cuan$o usa una
co(-uta$ora $e (ano3
Es visto como unasignador derecursos.
Es visto como un
programa decontrol.
Del usuario Del sistema
8/17/2019 Sistemas Operativos 2.0
4/51
6e7nici1n $e Siste(ao-eratio
Es (uy $i)'cil hallar una $e7nici1n a$ecua$a3 Son istos co(o la soluci1n (ás i$1nea -ara crear un
siste(a in)or(ático utili!a0le3 A$e(ás no hay una $e7nici1n a(-lia(ente ace-ta$a3 8eneral(ente se incluye to$o lo que un siste(a
su(inistra (ás las caracter'sticas in$ii$uales $eca$a uno
8/17/2019 Sistemas Operativos 2.0
5/51
9istoria
El conce-to $e siste(a o-eratiosurge en la $ca$a $e los ;3
El -ri(ero $e la historia )uecrea$o en -ara unor$ena$or IBM ?;@3
En los a5os >; se -ro$uce unareoluci1n en el ca(-o ya-arecen conce-tos co(osiste(a (ultitarea, siste(a(ultiusuario, siste(a(ulti-rocesa$ores y siste(a entie(-o real3
Es en esta $ca$a cuan$oa-arece #%I, la 0ase $e la gran(ayor'a $e los siste(aso-eratios que eisten hoy en
8/17/2019 Sistemas Operativos 2.0
6/51
En los a5os ?; se -ro$uce un0oo( en cuesti1n $e or$ena$ores
-ersonales3 Esto hace que se(ulti-lique el $esarrollo,creán$ose el lengua4e $e-rogra(aci1n C 3
En los a5os ;, la -rinci-al-riori$a$ )ue reali!ar un siste(a$e )ácil uso, -ara -ersonas sinconoci(ientos en -rogra(aci1n3
En los ; nacieron siste(as co(oMacOS, MSD6OS, in$o/s3
En la $ca$a $e los =; hace su
a-arici1n "inu, que-osterior(ente se unir'a al-royecto 8%#, un siste(ao-eratio co(-leta(ente li0re, alque le )alta0a -ara )uncionar unn2cleo )uncional3
8/17/2019 Sistemas Operativos 2.0
7/51
Estructuras y o-eraciones $e unSiste(a o-eratio
8/17/2019 Sistemas Operativos 2.0
8/51
Estructura $e un siste(aso-eratio
Es la ca-aci$a$ $e hacer que la CP#tenga sie(-re algo que hacer3
Esto genera un entorno $on$e losrecursos $e la co(-uta$ora sea-roechan e7ciente(ente, -ero noo)rece contacto entre el usuario y el
siste(a in)or(ático3
Es una extensión de loanteriormente mencionado.
Permite que la velocidad derealización de trabajos sea tanrápida, que el usuario puedeinteractuar con el programa almismo tiempo.
Multiprogramación Multitarea
8/17/2019 Sistemas Operativos 2.0
9/51
Sericios
• Eisten $e (uchos ti-os, -ero la (ásusa$a es la inter)a! grá7ca3
Interaz de usuario
• Tiene la ca-aci$a$ $e cargar el-rogra(a ala (e(oria y e4ecutarlo
Ejecución deprogramas
• El usuario no $e0e tener acceso aestas3
!peraciones deentrada " salida
• "eer, so0rescri0ir, reali!ar 02sque$as,etc
Manipulación desistema de arc#ivos
• Interca(0iar in)or(acion con otro-roceso
$omunicaciones
• 6e0e llear a ca0o una acci1na-ro-ia$a3
Detección de errores
• Cuan$o arios tra0a4os se e4ecutansi(ultánea(ente 3
%signación de recursos
• Ca-aci$a$ $e que los errores $e un-rogra(a no a)ecte a otro3
Protección, seguridad "
responsabilidad
8/17/2019 Sistemas Operativos 2.0
10/51
Fernel o %2cleo
Princi-al res-onsa0le $e )acilitar a los$istintos -rogra(as acceso seguro alhar$/are $e la co(-uta$ora 3
Encarga$o $e gestionar recursos, a
tras $e sericios $e lla(a$a alsiste(a3
Suele incluir una serie $e a0stracciones$e siste(a, que -er(ite escon$er laco(-le4i$a$ y o)recer un inter)a! (ás
li(-ia3 Son $e cuatro ti-os:
Monol&tico Micron'cleo (&bridos
8/17/2019 Sistemas Operativos 2.0
11/51
Interru-ciones y ece-ciones
"os siste(as (o$ernos están controla$os -orinterru-ciones y ece-ciones3
Se $an cuan$o el har$/are necesita que elsiste(a e4ecute un c1$igo3 Se $an-rinci-al(ente en $os ocasiones:
Cuan$o un $is-ositio $e entra$aDsali$anecesita atenci1n $el siste(a3
Se -ro$uce un error al intentar e4ecutar unainstrucci1n $e un -rogra(a3
#na interru-ci1n se $a cuan$o un
$is-ositio $e entra$aDsali$a en'a unase5al a la CP# in$ican$o que el -rocesoya ha ter(ina$o3
#na ece-ci1n es cuan$o se $a una
situaci1n $e error que $e0e ser reisa$a-or el siste(a3
8/17/2019 Sistemas Operativos 2.0
12/51
"la(a$as $e siste(a
Pro-orciona una inter)a! en lacual el siste(a -ue$e inocarlos sericios que el siste(ao-eratio o)rece3
8eneral(ente están escritasen lengua4e C o CGG3
Para )acilitar su uso, el-rogra(a$or utili!a unainter)a! $e -rogra(aci1n oAPIs
"o que hacen es eitar al-rogra(a$or conocer sei(-le(enta el -roceso $e la
lla(a$a3
8/17/2019 Sistemas Operativos 2.0
13/51
Ti-os $e lla(a$as
)ipos
$ontrol deprocesos
%dministrador de
arc#ivos
%dministrador de
dispositivo
s
Mantenimiento de la
inormacion
$omunicaciones
8/17/2019 Sistemas Operativos 2.0
14/51
Estructuras
Muchos siste(as
o-eratios no ten'an unestructura $e7ni$a3
En el caso $e MSD6OS,solo )ue escrito -ara-ro-orcionar la (ái(a)uncionali$a$ en el(enor es-acio -osi0le3
En el caso $e #ni, elsiste(as gira0a entorno
a un n2cleo (onol'tico3
*oporte de #ard+are apropiado.
Permite un control ma"or sobrela computadora " las
aplicaciones.
Es importante la ocultación de la
complejidad a los nivelessuperiores.
Estructura simple Estructura por niveles
8/17/2019 Sistemas Operativos 2.0
15/51
#n siste(a o-eratio estructura$o -or nieles
8/17/2019 Sistemas Operativos 2.0
16/51
Se $esarrollo con elsiste(a Mach3
Consiste en quitar los
co(-onentes noesenciales y e4ecutarlosen (o$o usuario3
Pro-orciona un(ecanis(o $eco(unicaciones entrelos -rogra(as clientesy los sericios que see4ecutan el es-acio $e
usuario3
Es quizás la mejormetodolog&a paradisear los sistemasactualmente.
Inclu"e los aspectosde los niveles " los
micro-ernels, perocon la dierencia quelos módulos sepueden comunicarentre si libremente
Micro-ernels Módulos
8/17/2019 Sistemas Operativos 2.0
17/51
ernel
de*olaris
$ontroladores de bus "
los
dispositivos Modulosmisceláneos
$lases deplani/cacion
*istema
dearc#ivos
0lamadas al
sistema
cargables
Módulos*)1E%M*
2ormatosejecutables
Estructura (o$ular $eSolaris
8/17/2019 Sistemas Operativos 2.0
18/51
Máquinas irtuales y arranque $e siste(a
Máquina irtual Se $a con la
estructura -ornieles3
Sire -ara a0straer alhar$/are3
Crea la ilusi1n $e que
ca$a entorno $ee4ecuci1n esta sien$oo-era$o en unaco(-uta$ora irtual3
Arranque $e siste(a Es el -roceso en el que la
co(-uta$ora arranca el Hernel alencen$erse la (áquina3
"a (ayor'a tienen una -eque5a -arte$e c1$igo que hace que el siste(aarranque3
8/17/2019 Sistemas Operativos 2.0
19/51
O-eraciones
Se tienen que $e7nirlas o-eraciones
reali!a$as -or losusuarios y -or elsiste(a
%os -er(ite -roteger
a los usuarios $e suserrores y $e loserrores $e otrosusuarios3
2ija a la
computadora paraque se interrumpaen un momentodado.
*e usa un reloj derecuencia /ja " uncontador.
Modo dual
$ontrol desistema
operativo3modo
-ernel4
$ontrol deusuario3modo
usuario4
*e devuelveel control al
sistema3interrupció
n4
)emporizador
8/17/2019 Sistemas Operativos 2.0
20/51
Proceso deusuario
ernel Excepción5it de modo
6 7
1etorno5it de
modo 6 8
E4ecuci1n-roceso $e
usuario
"la(a$as alsiste(a
Retorno $e lalla(a$a al
siste(a
E4ecutar
lla(a$a alsiste(a
Mo$o usuarioBit $e (o$o
<
Mo$o HernelBit $e (o$o
;
8/17/2019 Sistemas Operativos 2.0
21/51
8esti1n $e -rocesos
8/17/2019 Sistemas Operativos 2.0
22/51
Procesos
#n -roceso es si(-le(ente, un-rogra(a en e4ecuci1n que necesitarecursos -ara reali!ar su tarea:
tie(-o $e CP#, (e(oria, archios y$is-ositios $e EJS
8/17/2019 Sistemas Operativos 2.0
23/51
Plani7caci1n $e -rocesos
% largo plazo9 6eci$equ -rocesos serán lossiguientes en serinicia$os3 Este ti-o $e-lani7caci1n era el (ás)recuente en los siste(as$e lotes y(ulti-rogra(a$o en lotes
% corto plazo9 6eci$ec1(o co(-artir (o(entoa (o(ento al equi-oentre to$os los -rocesosque requieren $e susrecursos, es-ecial(enteel -rocesa$or3
% mediano plazo9 6eci$e cuáles-rocesos esconeniente0loquear en$eter(ina$o(o(ento, sea -orescase!Jsaturaci1n
$e alg2n recursoKco(o la (e(oria-ri(ariaL o -orqueestán reali!an$o
alguna solicitu$ queno ue$e
8/17/2019 Sistemas Operativos 2.0
24/51
8/17/2019 Sistemas Operativos 2.0
25/51
Co(unicaci1n entre -rocesos
"os -rocesos -ue$en co(unicarse entre s'a tras $e co(-artir es-acios $e(e(oria, ya sean aria0les co(-arti$as o
0uers, o a tras $e las herra(ientas-roistas -or las rutinas $e IPC3 "a IPC-roee un (ecanis(o que -er(ite a los-rocesos co(unicarse y sincroni!arse
entre s', nor(al(ente a tras $e unsiste(a $e 0a4o niel $e -aso $e (ensa4esque o)rece la re$ su0yacente3
8/17/2019 Sistemas Operativos 2.0
26/51
Ti-os $e co(unicaci1n
*&ncrona %s&ncrona Persistente
Momentánea Directa Destino Indirecta *im:trica
%sim:trica ;so de bu
8/17/2019 Sistemas Operativos 2.0
27/51
9e0ras
9e0ra o su0-roceso es la uni$a$$e -rocesa(iento (ás -eque5a
que -ue$e ser -lani7ca$a -orun siste(a o-eratio3
8/17/2019 Sistemas Operativos 2.0
28/51
8/17/2019 Sistemas Operativos 2.0
29/51
Muc#os a muc#os9 Este (ecanis(o-er(ite que eistan hilos $e a(0os (o$elos:
Per(ite la eistencia $e hilos uni$os, en queca$a hilo corres-on$e a un Ky s1lo unL "P, y$e hilos no uni$os, $e los cuales uno o (ásestarán (a-ea$os a ca$a "P3 El esque(a
(uchos a (uchos -ro-orciona las -rinci-alescaracter'sticas $e a(0os esque(asN en caso$e e4ecutarse en un siste(a que no so-orte(ás que el (o$elo uno a (uchos, el siste(a-ue$e caer en ste co(o (o$o $egra$a$o3
8/17/2019 Sistemas Operativos 2.0
30/51
Plani7caci1n $e la CP#
"os (ecanis(os $e-lani7caci1n $e la CP#son la 0ase $e lossiste(as o-eratios
(ulti-rogra(a$o3 Me$iante la con(utaci1n
$e la CP# entre $istintos-rocesos, el siste(a
o-eratio -ue$e hacerque la co(-uta$ora sea(ás -ro$uctia3
8/17/2019 Sistemas Operativos 2.0
31/51
Criterios $e -lani7caci1n
#tili!aci1n $e laCP#
Ren$i(iento Tie(-o $e
Retorno Tie(-o $e
es-era El tie(-o $e
res-uesta
8/17/2019 Sistemas Operativos 2.0
32/51
Sincroni!aci1n $e -rocesos
Se5ales Tu0er'as
Se(á)oros Mute y aria0les
con$icionales
Paso $e (ensa4es
8/17/2019 Sistemas Operativos 2.0
33/51
Inter0loqueos
El 0loqueo (utuo es el 0loqueo -er(anente $e uncon4unto $e -rocesos o hilos $e e4ecuci1n en unsiste(a concurrente que co(-iten -or recursos $elsiste(a o 0ien se co(unican entre ellos3
A $i)erencia $e otros -ro0le(as $e concurrencia $e-rocesos, no eiste una soluci1n general -ara losinter0loqueos3
8/17/2019 Sistemas Operativos 2.0
34/51
8/17/2019 Sistemas Operativos 2.0
35/51
Me(oria irtual
"a (e(oria irtual es un recurso (uy i(-ortante3 El siste(ao-eratio, con ayu$a $e la (e(oria irtual, -ue$e $is-oner$e (ayor canti$a$ $e (e(oria )'sica3 Pero *Por qu nuestrosiste(a o-eratio requiere $e una (e(oria irtual.3 Esto se$e0e a que el siste(a o-eratio no solo reali!a la e4ecuci1n
$e un -rogra(a, reali!a la e4ecuci1n $e n -rogra(as a la e!3 "a (e(oria irtual 0asa$a en la -aginaci1n y seg(entaci1n
se ha conerti$o en una herra(ienta (uy 2til, -ara lossiste(as o-eratios, al (o(ento $e reali!ar -rocesos3
"a (e(oria RAM ayu$a a la (e(oria irtual en el
al(acena(iento $e la e4ecuci1n $e -rogra(as, ta(0inayu$a en el -roceso $e seg(entaci1n, el cual lo ere(os (ása$elante3 A (ayor (e(oria RAM, (ayor (e(oria irtual3
8/17/2019 Sistemas Operativos 2.0
36/51
Paginaci1n
Proceso incula$o, al igual que la seg(entaci1n, con la(e(oria irtual3
Con ayu$a $e los siste(as $e -aginaci1n se -ue$elograr la $iisi1n $e los -rogra(as en -eque5as
-orciones o -áginas3 Ta(0in, $urante la $iisi1n $e los -rogra(as, la
(e(oria -rinci-al es $ii$i$a en -orciones $irecta(ente-ro-orcionales con el ta(a5o $e las -áginas lla(a$os(arcos $e -ágina3
Esto tiene co(o 7nali$a$ lo siguiente: "a (e(oria-rinci-al al reali!ar la e4ecuci1n $e un -rogra(aK-rocesoL -ue$a -er$er la (enor canti$a$ $e es-acio $eal(acena(iento3
8/17/2019 Sistemas Operativos 2.0
37/51
8/17/2019 Sistemas Operativos 2.0
38/51
Seg(entaci1n
"a seg(entaci1n es una herra(ienta (uy 2til -ara el-rogra(a$or $e0i$o a que -er(ite er a la (e(oriaco(o un con4unto $e es-acios $e $irecciones oseg(entos3
#no $e los 0ene7cios $el es-acio $e (e(oriaseg(enta$o es asignar un seg(ento $istinto a ca$a una$e las secciones $el es-acio en (e(oria $e un -roceso3
"a seg(entaci1n ta(0in ayu$a a incre(entar la(o$ulari$a$ $e un -rogra(a3
"a (e(oria RAM en con4unto con la (e(oria irtualayu$a a crear este -roceso $eno(ina$o seg(entaci1n3
8/17/2019 Sistemas Operativos 2.0
39/51
8/17/2019 Sistemas Operativos 2.0
40/51
8/17/2019 Sistemas Operativos 2.0
41/51
8/17/2019 Sistemas Operativos 2.0
42/51
Siste(as o-eratios $istri0ui$os
Viene a ser un con4unto $e co(-uta$oras los cualesen con4unto son (ostra$os al usuario en )or(a $e unsiste(a 2nico3
#n e4e(-lo -ara enten$er (e4or el conce-to $e Sist3
O-er3 6istri3 ser'a el siguiente: Piense en un enorme banco con cientos de
sucursales por todo el mundo. Cada ofcina tieneuna computadora maestra para guardar las cuentaslocales y el manejo de las transacciones locales.
Además cada computadora tiene la capacidad decomunicarse con las de otras sucursales y con unacomputadora central en las ofcinas centrales. Si lastransacciones se pueden realizar sin importardónde se encuentre el cliente o la cuenta y si losusuarios no observan dierencia alguna entre este
8/17/2019 Sistemas Operativos 2.0
43/51
Siste(as $e -ro-1sito general
8/17/2019 Sistemas Operativos 2.0
44/51
8/17/2019 Sistemas Operativos 2.0
45/51
8/17/2019 Sistemas Operativos 2.0
46/51
*+u es un archio.
"as co(-uta$oras -ue$enal(acenar in)or(aci1n en ariosso-ortes $e al(acena(ientoco(o: $iscos (agnticos, cintas(agnticas y $iscos 1-ticos3
"os archios son una colecci1n$e in)or(aci1n relaciona$a, conun no(0re, que se gra0a en elal(acena(iento secun$ario
Co(2n(ente los archiosre-resentan -rogra(as y $atos,
los archios $e $atos -ue$enser nu(ricos, al)a0ticos,al)anu(ricos o 0inarios
#n archio es una secuencia $e0its, 0ytes, l'neas o registros
8/17/2019 Sistemas Operativos 2.0
47/51
Atri0utos
"os atri0utos ar'an seg2nsiste(a o-eratio,general(ente son: =ombre9 Es aquel que el usuario
le asigna
)ipo9 Es necesario -ara lossiste(as que so-orten $i)erentesti-os $e archios
;bicación9 %os hace re)erencia ala $irecci1n que -o$e(osencontrar
)amao9 atri0uto que -ue$e ser(e$i$o en K0ytes, -ala0ras o0loquesL
Protección9 in)or(aci1n $econtrol $e acceso que $eter(inaquin -ue$e leer el archio,escri0ir, e4ecutarlo, etc3
8/17/2019 Sistemas Operativos 2.0
48/51
O-eraciones
O-eraciones
Crear
Escritura
"ectura
Re-osici1n
Borra$o
Trunca$o
8/17/2019 Sistemas Operativos 2.0
49/51
8/17/2019 Sistemas Operativos 2.0
50/51
8esti1n $e $isco
2ormateo del disco
#n $isco (agntico nueoes una -i!arra en 0lanco:se trata si(-le(ente $euna -laca $e (aterial
(agntico -aragra0aci1n3
Antes $e -o$er al(acenar$atos en el $isco, esnecesario $ii$ir este en
sectores que lacontrola$ora $e $isco-ue$a leer y escri0ir3
Este -roceso se $eno(ina)or(ateo $e 0a4o niel o
)or(ateo )'sico3
5loque de arranque
Se encarga $e iniciar
to$os los as-ectos $elsiste(a, $es$e losregistro $el CP# hasta lascontrola$oras $e$is-ositios y el conteni$o
$e la (e(oria -rinci-al, yluego arranca el siste(ao-eratio3
Para llear a ca0o sutarea, el -rogra(a $e
arranque locali!a el Hernel$el siste(a o-eratio enel $isco, carga $ichoHernel en (e(oria y saltahasta una $irecci1n inicial
con el 7n $e co(en!ar lae4ecuci1n $el siste(a
8/17/2019 Sistemas Operativos 2.0
51/51