Você está na página 1de 51

Universidad Nacional Mayor de San Marcos

Facultad de Ingeniera de Sistemas e


Informtica

Integrantes:
Arenas Machaca, Cristian
Calcina Aguilar, Brayan
Chalco Vila, Enrique
Chvez Aliaga, Luis

SISTEMAS
OPERATIVOS

Qu es un sistema
operativo?

Es un programa que administra los


recursos
de
hardware
de
una
computadora, proporciona bases para
los programas de aplicacin y acta
como intermediario entre el usuario y
el hardware.

Algo destacable de un sistema


operativo es la gran variedad de
formas en la que pueden ejecutar una
tarea.

Los sistemas operativos son diseados


para mltiples propsitos como:

Ser eficientes, para optimizar el uso del


hardware.
Ejemplo:
Mainframes
o
computador central.

Ser prcticos, para ejecutar todo tipo de


aplicaciones y un ser fciles de usar. Ejemplo:

Puntos de vista
Del usuario

Del sistema

Varia segn la interfaz que se use. Por ejemplo:

Cuando el usuario usa


una PC comn.
Cuando se esta
conectado a una
estacin de trabajo.
Cuando se conecta a
una microcomputadora.
Cuando usa una
computadora de mano.

Es visto como
asignador
recursos.
Es visto como
programa
control.

un
de
un
de

Definicin de Sistema
operativo

Es muy difcil hallar una definicin adecuada.


Son vistos como la solucin ms idnea para crear un
sistema informtico utilizable.
Adems no hay una definicin ampliamente aceptada.
Generalmente se incluye todo lo que un sistema
suministra ms las caractersticas individuales de
cada uno

Historia

El concepto de sistema operativo


surge en la dcada de los 50.

El primero de la historia fue


creado
en
1956
para
un
ordenador IBM 704.

En los aos 60 se produce una


revolucin en el campo y
aparecen
conceptos
como
sistema
multitarea,
sistema
multiusuario,
sistema
multiprocesadores y sistema en
tiempo real.

Es en esta dcada cuando


aparece UNIX, la base de la gran
mayora
de
los
sistemas
operativos que existen hoy en

En los aos 70 se produce un


boom en cuestin de ordenadores
personales. Esto hace que se
multiplique
el
desarrollo,
crendose
el
lenguaje
de
programacin C .
En los aos 80, la principal
prioridad fue realizar un sistema
de fcil uso, para personas sin
conocimientos en programacin.
En los 80 nacieron sistemas como
MacOS, MS-DOS, Windows.
En la dcada de los 90 hace su
aparicin
Linux,
que
posteriormente
se
unira
al
proyecto
GNU,
un
sistema
operativo completamente libre, al
que le faltaba para funcionar un
ncleo funcional.

Estructuras y operaciones de un
Sistema operativo

Estructura de un sistemas
operativo
Multiprogramacin

Es la capacidad de hacer que la CPU


tenga siempre algo que hacer.
Esto genera un entorno donde los
recursos de la computadora se
aprovechan eficientemente, pero no
ofrece contacto entre el usuario y el
sistema informtico.

Multitarea

Es
una
extensin
de
anteriormente mencionado.

lo

Permite que la velocidad de


realizacin de trabajos sea tan
rpida, que el usuario puede
interactuar con el programa al
mismo tiempo.

Servicios
Interfaz de usuario
Ejecucin de
programas
Operaciones de
entrada y salida
Manipulacin de
sistema de archivos
Comunicaciones
Deteccin de errores

Existen de muchos tipos, pero la ms


usada es la interfaz grfica.
Tiene la capacidad de cargar el
programa ala memoria y ejecutarlo
El usuario no debe tener acceso a
estas.
Leer, sobrescribir, realizar bsquedas,
etc
Intercambiar informacion con otro
proceso
Debe llevar a cabo una accin
apropiada.

Asignacin de recursos Cuando varios trabajos se ejecutan


simultneamente .
Proteccin, seguridad y Capacidad de que los errores de un
responsabilidad
programa no afecte a otro.

Kernel o Ncleo

Principal responsable de facilitar a los


distintos programas acceso seguro al
hardware de la computadora .
Encargado de gestionar recursos, a
travs de servicios de llamada al
sistema.
Suele incluir una serie de abstracciones
de sistema, que permite esconder la
complejidad y ofrecer un interfaz ms
limpia.
Son de cuatro tipos:
Monoltico
Microncleo
Hbridos

Interrupciones y excepciones

Los sistemas modernos estn controlados por


interrupciones y excepciones.

Se dan cuando el hardware necesita que el


sistema
ejecute
un
cdigo.
Se
dan
principalmente en dos ocasiones:

Cuando un dispositivo de
necesita atencin del sistema.

entrada-salida

Se produce un error al intentar ejecutar una


instruccin de un programa.

Una interrupcin se da cuando un


dispositivo de entrada-salida enva una
seal a la CPU indicando que el proceso
ya ha terminado.

Una excepcin es cuando se da una


situacin de error que debe ser revisada
por el sistema.

Llamadas de sistema

Proporciona una interfaz en la


cual el sistema puede invocar
los servicios que el sistema
operativo ofrece.

Generalmente estn escritas


en lenguaje C o C++.

Para facilitar su uso, el


programador
utiliza
una
interfaz de programacin o
APIs

Lo que hacen es evitar al


programador
conocer
se
implementa el proceso de la
llamada.

Tipos de llamadas
Control de
procesos
Administra
dor de
archivos

Comunicacio
nes
Tipos

Mantenimie
nto de la
informacion

Administra
dor de
dispositivo
s

Estructuras
Estructura simple

Muchos sistemas
operativos no tenan un
estructura definida.
En el caso de MS-DOS,
solo fue escrito para
proporcionar la mxima
funcionalidad en el
menor espacio posible.
En el caso de Unix, el
sistemas giraba entorno
a un ncleo monoltico.

Estructura por niveles

Soporte de hardware apropiado.


Permite un control mayor sobre
la computadora y las
aplicaciones.
Es importante la ocultacin de la
complejidad a los niveles
superiores.

Un sistema operativo estructurado por niveles

Microkernels
Se desarrollo con el

sistema Mach.

Consiste en quitar los


componentes
no
esenciales y ejecutarlos
en modo usuario.
Proporciona
un
mecanismo
de
comunicaciones entre
los programas clientes
y los servicios que se
ejecutan el espacio de
usuario.

Mdulos

Es quizs la mejor
metodologa
para
disear los sistemas
actualmente.
Incluye los aspectos
de los niveles y los
microkernels,
pero
con la diferencia que
los
mdulos
se
pueden
comunicar
entre si libremente

Controlador
es de bus y
los
dispositivos

Formatos
ejecutabl
es

Modulos
miscelne
os

Kernel
de
Solaris

Mdulos
STREAM
S
Llamada
s al
sistema
cargable
s

Clases de
planificaci
on

Sistema
de
archivos

Estructura modular de
Solaris

Mquinas virtuales y arranque de sistema


Mquina virtual
Se da con la
estructura por
niveles.
Sirve para abstraer al
hardware.
Crea la ilusin de que
cada entorno de
ejecucin esta siendo
operado en una
computadora virtual.

Arranque de sistema

Es el proceso en el que la
computadora arranca el kernel al
encenderse la mquina.

La mayora tienen una pequea parte


de cdigo que hace que el sistema
arranque.

Operaciones
Modo dual

Temporizador

Se tienen que definir


Fija
a
la
las
operaciones
computadora para
realizadas por los
que se interrumpa
usuarios y por el
sistema
en un momento
dado.
Nos permite proteger
Se usa un reloj de
a los usuarios de sus
errores y de los
frecuencia
fija y un
Se devuelve
Control de
Control de
errores
otros
el control al
contador.
sistemade
usuario
sistema
operativo
usuarios.
(modo
(interrupci
(modo
(modo
kernel)

usuario)

(interrupci
n)

Proceso de
usuario
Ejecucin
proceso de
usuario

Kernel

Llamadas al
sistema

Retorno de la
llamada al
sistema

Retorno
Bit de
modo = 1

Excepcin
Bit de modo
=0
Ejecutar
llamada al
sistema

Modo usuario
Bit de modo
=1

Modo kernel
Bit de modo
=0

Gestin de procesos

Procesos

Un proceso es simplemente, un
programa en ejecucin que necesita
recursos para realizar su tarea:
tiempo de CPU, memoria, archivos y
dispositivos de E/S

Planificacin de procesos

A largo plazo: Decide


qu procesos sern los
siguientes
en
ser
iniciados. Este tipo de
planificacin era el ms
frecuente en los sistemas
de
lotes
y
multiprogramado en lotes
A corto plazo: Decide
cmo compartir momento
a momento al equipo
entre todos los procesos
que requieren de sus
recursos, especialmente
el procesador.

A mediano plazo:
Decide
cules
procesos
es
conveniente
bloquear
en
determinado
momento, sea por
escasez/saturacin
de
algn
recurso
(como la memoria
primaria) o porque
estn
realizando
alguna solicitud que
no
puede

Comunicacin entre procesos

Los procesos pueden comunicarse entre s


a travs de compartir espacios de
memoria, ya sean variables compartidas o
buffers, o a travs de las herramientas
provistas por las rutinas de IPC. La IPC
provee un mecanismo que permite a los
procesos comunicarse y sincronizarse
entre s, normalmente a travs de un
sistema de bajo nivel de paso de mensajes
que ofrece la red subyacente.

Tipos de comunicacin

Sncrona
Asncrona
Persistente
Momentnea Directa
Destino
Indirecta
Simtrica
Asimtrica
Uso de buffers
automtico

Hebras

Hebra o subproceso es la unidad


de procesamiento ms pequea
que puede ser planificada por
un sistema operativo.

Modelos multihebras

Muchos
a
uno:
Muchos
hilos
son
agrupados en un slo
proceso. Los hilos
verdes entran en este
supuesto:
Para
el
sistema
operativo,
hay un slo proceso;
mientras
tiene
la
ejecucin, ste se
encarga de repartir el
tiempo entre sus hilos

Uno a uno: Cada hilo es


ejecutado como un proceso
ligero; podra dar la impresin
de
que
este
esquema
desperdicia
la
principal
caracterstica de los hilos, que
es una mayor sencillez y
rapidez de inicializacin que los
procesos, sin
embargo, la
informacin de estado requerida
para crear un LWP es mucho
menor que la de un proceso
regular, y mantiene como
ventaja que los hilos continan
compartiendo
su
memoria,
descriptores de archivos y
dems estructuras.

Muchos a muchos: Este mecanismo


permite que existan hilos de ambos modelos:
Permite la existencia de hilos unidos, en que
cada hilo corresponde a un (y slo un) LWP, y
de hilos no unidos, de los cuales uno o ms
estarn mapeados a cada LWP. El esquema
muchos a muchos proporciona las principales
caractersticas de ambos esquemas; en caso
de ejecutarse en un sistema que no soporte
ms que el modelo uno a muchos, el sistema
puede caer en ste como modo degradado.

Planificacin de la CPU

Los
mecanismos
de
planificacin de la CPU
son la base de los
sistemas
operativos
multiprogramado.
Mediante la conmutacin
de la CPU entre distintos
procesos,
el
sistema
operativo puede hacer
que la computadora sea
ms productiva.

Criterios de planificacin
Utilizacin de
CPU
Rendimiento
Tiempo
Retorno
Tiempo
espera
El
tiempo
respuesta

la

de
de
de

Sincronizacin de procesos
Seales
Tuberas
Semforos
Mutex y variables
condicionales
Paso de mensajes

Interbloqueos

El bloqueo mutuo es el bloqueo permanente de un


conjunto de procesos o hilos de ejecucin en un
sistema concurrente que compiten por recursos del
sistema o bien se comunican entre ellos.
A diferencia de otros problemas de concurrencia de
procesos, no existe una solucin general para los
interbloqueos.

Gestin de memoria

Memoria virtual

La memoria virtual es un recurso muy importante. El sistema


operativo, con ayuda de la memoria virtual, puede disponer
de mayor cantidad de memoria fsica. Pero Por qu nuestro
sistema operativo requiere de una memoria virtual?. Esto se
debe a que el sistema operativo no solo realiza la ejecucin
de un programa, realiza la ejecucin de n programas a la vez.

La memoria virtual basada en la paginacin y segmentacin


se ha convertido en una herramienta muy til, para los
sistemas operativos, al momento de realizar procesos.

La memoria RAM ayuda a la memoria virtual en el


almacenamiento de la ejecucin de programas, tambin
ayuda en el proceso de segmentacin, el cual lo veremos ms
adelante. A mayor memoria RAM, mayor memoria virtual.

Paginacin

Proceso vinculado, al igual que la segmentacin, con la


memoria virtual.
Con ayuda de los sistemas de paginacin se puede
lograr la divisin de los programas en pequeas
porciones o pginas.
Tambin, durante la divisin de los programas, la
memoria principal es dividida en porciones directamente
proporcionales con el tamao de las pginas llamados
marcos de pgina.
Esto tiene como finalidad lo siguiente: La memoria
principal al realizar la ejecucin de un programa
(proceso) pueda perder la menor cantidad de espacio de
almacenamiento.

Segmentacin

La segmentacin es una herramienta muy til para el


programador debido a que permite ver a la memoria
como un conjunto de espacios de direcciones o
segmentos.
Uno de los beneficios del espacio de memoria
segmentado es asignar un segmento distinto a cada una
de las secciones del espacio en memoria de un proceso.
La segmentacin tambin ayuda a incrementar la
modularidadde un programa.
La memoria RAM en conjunto con la memoria virtual
ayuda a crear este proceso denominado segmentacin.

Sistemas distribuidos

Qu son?

Sistema en el cual las actividades se distribuyen por reas


de trabajo diferentes con el objetivo de llegar a un mismo
fin.
Los sistemas distribuidos conformado por elementos como el
hardware y software se comunican mediante la transmisin
de mensajes con el fin de poseer un mismo objetivo.
Algunas caractersticas de los sistemas distribuidos son las
siguientes:
CONCURRENCIA
ESCALABILIDAD
TOLERANCIA A FALLOS
TRANSPARENCIA

Sistemas operativos distribuidos

Viene a ser un conjunto de computadoras los cuales


en conjunto son mostrados al usuario en forma de un
sistema nico.

Un ejemplo para entender mejor el concepto de Sist.


Oper. Distri. sera el siguiente:
Piense en un enorme banco con cientos de
sucursales por todo el mundo. Cada oficina tiene
una computadora maestra para guardar las cuentas
locales y el manejo de las transacciones locales.
Adems cada computadora tiene la capacidad de
comunicarse con las de otras sucursales y con una
computadora central en las oficinas centrales. Si las
transacciones se pueden realizar sin importar
dnde se encuentre el cliente o la cuenta y si los
usuarios no observan diferencia alguna entre este

Sistemas de propsito general

Qu son?

Existen diferentes clases de sistemas


informticos cuyas funciones son ms
limitadas y cuyo objetivo es tratar con
dominios de procesamiento limitados.

Sistemas Embebidos en tiempo real


Sistemas multimedia
Sistemas de mano

Gestin de archivos

Qu es un archivo?

Las computadoras pueden


almacenar informacin en varios
soportes de almacenamiento
como: discos magnticos, cintas
magnticas y discos pticos.
Los archivos son una coleccin
de informacin relacionada, con
un nombre, que se graba en el
almacenamiento secundario
Comnmente
los
archivos
representan programas y datos,
los archivos de datos pueden
ser
numricos,
alfabticos,
alfanumricos o binarios
Un archivo es una secuencia de
bits, bytes, lneas o registros

Atributos

Los atributos varan segn


sistema operativo,
generalmente son:

Nombre: Es aquel que el usuario


le asigna
Tipo: Es necesario para los
sistemas que soporten diferentes
tipos de archivos
Ubicacin: Nos hace referencia a
la direccin que podemos
encontrar
Tamao: atributo que puede ser
medido en (bytes, palabras o
bloques)
Proteccin: informacin de
control de acceso que determina
quin puede leer el archivo,
escribir, ejecutarlo, etc.

Operaciones
Crear
Trunca
do

Escritu
ra

Operacion
es
Borrad
o

Lectura

Reposicin

Estructura

Los tipos de archivo tambin pueden usarse para


indicar la estructura interna del archivo.

Los archivos fuente y objeto tiene estructura que se


corresponden con las expectativas de los programas
que se van a encargar de leerlos.

Adems ciertos archivos deben adaptarse a una


estructura requerida, comprensible por parte del
sistema operativo

Gestin de disco
Bloque de arranque

Se encarga de iniciar
todos los aspectos del
sistema, desde los
registro del CPU hasta las
controladoras de
dispositivos y el contenido
de la memoria principal, y
luego arranca el sistema
operativo.

Para llevar a cabo su


tarea, el programa de
arranque localiza el kernel
del sistema operativo en
el disco, carga dicho
kernel en memoria y salta
hasta una direccin inicial
con el fin de comenzar la
ejecucin del sistema

Formateo del disco

Un disco magntico nuevo


es una pizarra en blanco:
se trata simplemente de
una placa de material
magntico para
grabacin.

Antes de poder almacenar


datos en el disco, es
necesario dividir este en
sectores que la
controladora de disco
pueda leer y escribir.

Este proceso se denomina


formateo de bajo nivel o
formateo fsico.

Bloqueos defectuosos

Puesto que los discos tiene partes mviles y


tolerancias muy pequeas (recuerde que el cabezal
del disco vuela justo por encima de la superficie del
disco) son bastante propenso a los fallos

El sistema
operativo
trata de
leer el
bloque
lgico

La
controlado
ra calcula
el Cdigo
de
correccin
de errores.

Comprueb
a que el
sector es
defectuos
o.

Informa a
la
controlado
ra SCSI.

Al reiniciar
se ejecuta
un
comando
para que
remplace
la seccin.

Cada vez
que se
busque
ese sector,
se
remplazar
la
nueva
direccin.

Você também pode gostar