Sistema
Bancario
Reservacione
s en línea
aerolíneas
Juegos
Compiladores Editores Interprete
de
comandos
Sistema Operativo
Lenguaje de máquina
Microprogramación
Dispositivos físicos
Programas de Aplicación
Programas de Sistema
Hardware
Unsistemaoperativoesunconjuntodeprogramasintegrados
quetienencomoobjetivoaprovecharelhardwaredeuna
computadorayutilizarloenformasegurayeficiente.Para
lograrlo,sepuedenresumirlassiguientesfuncionesbásicas:
•Gestionarlosrecursosdehardwaredela
computadora.
•Serunainterfazentreelusuarioylacomputadora.
•Serlaplataformaparalosprogramasdeaplicación
delusuario.
Concepto de Sistema
operativo
Gestionar los recursos de
hardware disponibles en la
computadora
Unacomputadoraestáconstituidaporunagrancantidaddeelementosde
hardwarededistintostipos;comoejemplopodemosmencionarlos
dispositivosinternos,talescomoprocesador,memoria,busesypuertosde
comunicación,controladorasdevideoysonido,entreotros.Cadaunode
ellosnecesitasercoordinadoyoperadocorrectamenteparaintegrarun
sistemacapazderecibirdatosdeentrada,procesarlosyproducirdatosde
salida.Eseconjuntoderutinasdesoftwarequeseencargande
gestionarlos,esunaparteesencialdelsistemaoperativo,sinestaparte
intermediaria,losdispositivosnosepuedencoordinarsolosparatrabajary,
lomásimportante,nopuedenoperarcomounequipodeprocesamientode
datos.
Ser una interfaz entre el
usuario y la computadora
Cuando el usuario ejecuta una aplicación de software, el
sistema operativo funge como un intermediario que procesa el
deseo del usuario externado mediante un comando o la
activación algún botón. Al interpretar esta orden, el sistema
operativo determina los recursos necesarios para la aplicación
y gestiona su disponibilidad. Cada vez que el usuario introduce
datos o ejecuta órdenes el sistema operativo debe de
procesarlos obteniendo y presentando un resultado que el
mismo usuario espera recibir. Este proceso se repite una y otra
vez mientras el sistema operativo siga activo.
Ser la plataforma para los
programas de aplicación del
usuario
Elobjetivomásimportantedelascomputadorasesservirdeherramientaal
serhumanoparaprocesardatosenformarápida,segurayeficiente.Estos
datosprovienendelquehacerdiariodelaspersonas,yparapoderlosprocesar
existenunagranvariedaddeaplicacionesquevandesdelospropósitosmás
generaleshastalosmásespecíficos.Desafortunadamente,porlasmismas
característicasdelasaplicaciones,noseríaviablequecadaunadeellas
integraratodaslasrutinasnecesariasparagestionarelhardwaretanvariadoy
complejoqueconformaalascomputadoras.Deestemodo,loquequedaes
dejaresetrabajoalsistemaoperativo,peroalmismotiempo,segenerauna
dependenciadedichasaplicacionessobreélparapoderseejecutar,puessino
haysistemaoperativo,nopuedenfuncionarlosprogramasdeaplicación
Sistema Operativo como
controlador de recursos
Desdeelpuntodevistadecontroladorderecursosel
sistemaoperativoproporcionaalosusuariosunainterfaz
convenientedearribahaciaabajo(top–down),yaquesu
laboresladeproporcionarunaasignaciónordenaday
controladadelosprocesadores,memoria,dispositivosde
I/Oejemplo:3procesoslleganalamismaimpresora.
HISTORIA DE LOS S.O
•PreHISTORIA.CharlesBabbage(1792-1871),creouna
maquinaanalítica,eraundiseñocompletamente
mecánicopormedioderuedas,engranes,levasydemás
partesmecánicasnoexistíaSistemaOperativo.
•PRIMERAGENERACION (1945-1955)aparecenlos
bulbosyconexiones,despuésdela2Guerramundial,
supremamenteenormes,yexistíangentequese
encargabadediseñar,otrosconstruíaelprog.Yotros
dabanmantenimientoalamisma
•CUARTA GENERACION (1980 -1990)Pc Personales
•LCI (Circuitos Integrados)
•Se habla de estaciones de trabajo
•Mucho mas amigables con los usuarios finales
•RISC
•Sistemas operativos en red y distribuidos
CUARTAGENERACION (1980-1990)
•Conlainvencióndeloscircuitosintegradosagranescala(LSI),
chipsquecontienenmilesdetransistoresenuncm
2
desilicio.
•Naciólaeradelacomputadorapersonal.
•Preciosíqueerandiferentes.Sibienlaminicomputadorahacía
posiblequeundepartamentodeunacompañíaouniversidadtuviera
supropiacomputadora.
•Chipmicroprocesadorpermitíaqueunsoloindividuoporloregular
estasmáquinasestáninterconectadasmedianteunared.
•RISC
•Sistemas operativos en red y distribuidos MSDOS, UNIX
•Archivos: Una de las funciones principales del S.O es ocultar
particularidades de los discos y demás dispositivos de I/O, para
presentar al programador un modelo agradable y nítido de
archivos independientes de los dispositivos. Antes de poder
leer un archivo, hay que abrir éste; después de leer un archivo,
éste debe cerrarse; las llamadas permiten hacer todo esto.
•Para poder proporcionar un espacio donde almacenar los
archivos, la mayoría de los sistemas operativos soportan el
concepto de directoriocomo una forma de agrupar los
archivos.
•ELShell:InterpretedecomandosnohacepartedelS.O
ESTRUCTURA DE LOS SISTEMAS
OPERATIVOS
SISTEMAS MONOLITICOS
•Seescribecomounacoleccióndeprocedimientosque
puedencomunicarseentreelloscuantasvecesquieranyen
elmomentoquequieran.
•Modosupervisor–modonúcleo
¿Que es un Proceso?
Esunprogramaenestadodeejecución,enlaactualidad
loscomputadoresmodernoshacenvariascosasalmismo
tiempo,alavezqueejecutanprogramasdeusuariosej:
puedenleerundisco,efectuarprocesosdeunaTerminalo
imprimirundocumento.
LaCPUejecutaenciertoinstanteunsoloprogramay
duranteunsegundopuedetrabajarconvariosdeelloslo
quedaunaaparienciadeparalelismo.YessoloelSOel
encargadodedeterminarcualdeellosseejecuta
Modelo de Procesos
El primer modelo es el secuencialconsiste en tener en
forma de lista los procesos incluyendo contadores,
registros y variables del programa.
El segundo modelo es el conceptual observándose en forma
abstracta los procesos y en donde c/u de ellos pose su
propio flujo de control.
UN CONTADOR DE PROGRAMA ALTERNANDOR
DE PROCESOS
A
B
C
D
A
CUATRO CONTADORES DE
PROGRAMA
B C D
¿Diferencia entre Programa y un
Proceso?
Elprogramaesunaseriedepasosconsecutivosparalograr
unobjetivo.
Elprocesoeslaformacomovaallegaracumplirel
programa
Ej:unapersonadeseahacerunpastelparaellonecesitauna
listadeingredientes,lareceta(programa)proceso(forma
comoleelosdatosyefectúaelprocesodemescla)
JERARQUIAS DE LOS
PROCESOS
Losprocesospormuysencillosqueseandebenofrecer
ciertaformadepodercreartodoslosprocesosnecesarios,
sinembargoenlamayoríadelossistemasesnecesaria
unaformadecrearydestruirprocesos,cuandose
requieradurantelaoperación.Ej:enLinuxestala
instrucciónkillafindematarlosprocesosqueelusuario
definaconveniente
ESTADOS DE LOS PROCESOS
•EJECUCION–CuandoelprocesoutilizalaCPUenun
instantedado
•LISTO–Elprocesoseejecutaosimplementeentraenun
estadotemporaloesperaparaqueotroprocesopueda
ejecutarlo
•BLOQUEADO –Eselprocesodondenosepuede
ejecutarningúnprocesodebidoalaocurrenciadealgún
eventoexterno.
1.) El proceso se bloquea en
espera de datos
2.) El planificador elige otro
proceso
3.) El planificador elige este
proceso
4.) Los datos estan disponibles
EJECUCION
LISTOBLOQUEADO
1
4
3
2
IMPLANTACION DE UN
PROCESO
TABLA DE LOS PROCESOS
Registros
P. Couter
Apuntador
Estado Pro.
Hora Inicio
Tiempo
utilizado
CPU
Hora sig.
Alarma
Banderas
COMUNICACIÓN DE LOS
PROCESOS
•Entreellosnecesitancomunicarse,porlogeneralen
formasecuencial,hastafinalizarlatabladeprocesos,sin
utilizarinterrupciones.
•Condición Mutua: Memoria compartida -Spooling trabaja
con un Demonio.
PLANIFICACION DE LOS
PROCESOS
Cuando mas de un proceso es ejecutable, el SO debe decidir
cual de ellos debe ejecutarse en primer termino –
Planificador y el algoritmo que utiliza se llama algoritmo de
planificación.
1.EQUIDAD
2.EFICACIA
3.TIEMPO DE RESPUESTA
4.TIEMPO DE REGRESO
5.RENDIMIENDO
Planificación Round
Robin
•Quantum
B F D G A
F D G A B
Prímero el trabajo más
corto
8 4 4 4 4
B F D G A
4 4 4 4 8
F D G A B
PROBLEMA DE LOS
FILOSOFOS
•Si los filósofos toman todos el tenedor mano izq, en
forma simultanea ocurriría un bloqueo
•El programa verificara si el tenedor der. Esta disponible,
sino el filosofo deja el izq. Espera cierto tiempo y vuelve
a repetir todo el proceso (inanición)
•Asignar un quantum
•Semáforo binario, generar un arreglo de tres estados
comiendo, pensando, hambriento y comen cuando dos
vecinos no están comiendo