Está en la página 1de 62

Es un conjunto de elementos electrónicos que

interactúan entre si,(Hardware) para procesar y


almacenar información de acuerdo a una serie de
instrucciones(software).
CPU

memoria
Se provee de al menos dos modos de operación:

* Modo usuario(user mode)

* Modo monitor(monitor mode)


* Protección de E/S: Todas las instrucciones de Entrada/Salida
son privilegiadas.

* Proteccion de memoria:Evaluacion de las direcciones de


memoria a travez de MMU

* Protección del CPU: Introduccion de un timer que permite


limitar el uso del CPU
*
Es la estructura de los primeros sistemas operativos.
Fundamentalmente por un solo programa compuesto de un
conjunto de rutinas entrelazadas de tal forma que cada una
puede llamar a cualquier otra.
* Construcción de programa final a base de módulos compilados
separadamente que se une a través del editor de enlaces.
* Buena definición de parámetros de enlace entre la rutinas
existentes.
* Carecen de protección y privilegios al entrar y manejan
diferentes aspectos de la computadora.
* Generalmente están hechos a la medida
* Por ejemplo los cajeros automáticos donde sólo tienen que
cumplir una determinada función siguiendo una serie de
procesos ya determinados.
-Núcleos tipo Unix
-Linux
-Syllable
-Unix
-BSD (FreeBSD, NetBSD, OpenBSD)
-Solaris
-Núcleos tipo DOS.
Familia Microsoft Windows 9x (95,
-

98, 98SE, Me)


-Núcleos del Mac OS hasta Mac OS
8.6
-OpenVMS
-XTS-400
Consiste en organizar el sistema
operativo con una jerarquía de
capas cada una construida sobre la
que esta bajo ella.
*Las zonas mas intensas o núcleo están mas
protegidas de posibles accesos indeseados desde
las capas mas externas.
*Tienes un contacto mas próximo con el hardware
*Núcleo mínimo, mas seguro y ágil.
*En esta estructura se basan prácticamente la
mayoría de los SO actuales. Otra forma de ver
este tipo de sistema es la denominación de
anillos concéntricos o “RINGS”
EJEMPLOS
-Multics
-Unix.
Se trata de un SO que presenta
una interfaces cada proceso, mostrando una
máquina que parece idéntica a la máquina real
subyacente. Estos SO separan dos conceptos:
Multiprogramación y La Máquina Extendida Su
objetivo es distinguir distintos SO dando la
sensación de ser varias máquinas. Tiene
capacidad de utilizar varios SO simultáneamente.
*Se puede hacer varios sistemas operativos
sin necesidad de crear particiones.
*Se puede simular el hardware
*Gran capacidad de disco duro-memoria
RAM
*Protección cada maquina virtual esta
aislada de las otras y no puede inferir.
Ejemplos
-Nachos: sistema
operativo se ejecuta en
una virtual mips, cuyo
emulador corre sobre
Linux.
-IBM IV: ofrecía a cada
usuario su propia
maquina virtual no
multiprogramado.
* Es el tipo más reciente de los SO, que pueden ser ejecutados
en la mayoría de las computadoras, ya sean grandes o
pequeñas. Este sistema sirve para todo, por lo tanto es de
propósito general y se basa en lo mismo que el resto de los SO
convencionales: núcleo y procesos, presentando grandes
diferencias en cuanto a la forma de distribuir los trabajos
entre sus diferentes partes.
* Coordina, permite el trabajo entre iguales.
* Cliente; inicia las solicitudes o peticiones (maestro)
* Espera y recibe respuesta del servidor
* Se puede conectar a varios servidores a la vez .
* Servidor:
* Esclavo, espera las solicitudes del cliente
* Aceptan conexiones desde un gran numero de clientes.
EJEMPLOS
-Sistema operativo
Novell NetWare 1983,
plataforma mas fiable
para ofrecer acceso
seguro.
-Windows 2000
-Cualquiera de este
puede compartir sus
recursos con otro
Windows 2000
-Windows xp en
adelante.
FUNCIONES Y
MÓDULOS
a) Asignación de tiempos de CPU:
La asignación de tiempos de CPU, consiste en planificar las distintas
actividades que tienen o van a tener lugar en el computador, y a las cuales
habrá que dedicar tiempo de CPU.
a) Control de recursos:
El control de recursos consiste en asignar los recursos del computador de
una forma racional. Entre las tareas más importantes a la hora de asignar
recursos se encuentra el reparto de la memoria del computador entre los
programas, la distribución del espacio en las unidades de almacenamiento
masivo, tanto para los programas como para los datos y, el control de las
colas de los dispositivos de salida.
a) Control de entrada/salida:
En el control de entrada/salida se gestionan los canales de datos hacia y
desde los periféricos. El sistema operativo permite unificar y controlar el
acceso de los programas a los recursos materiales a través de los drivers
(también conocidos como administradores periféricos o de entrada/salida).

• Dispositivos de entrada.

• Dispositivos de salida.

• Dispositivos de bloques.
a) Control de errores y protección:
El control de errores, y la protección frente a estos, supone informar de
cualquier condición anómala, a la vez que se intenta minimizar su efecto
sobre el resto del sistema informático.
a) Interface con el operador y facilidades contables:
La interface con el operador proporciona a la persona que utiliza el
computador, facilidad para el uso del mismo. Las facilidades contables
permiten facturar a los usuarios el importe que supone su uso de los recursos
del computador, de acuerdo a una tabla de costes previamente establecida.
MODULOS:

•Núcleo o Kernel.
•Administrador de memoria.
•Sistema de entrada/ salida.
•Administrador de archivos

NUCLEO O KERNEL:

Es el módulo de más bajo nivel de un sistema operativo, pues


descansa directamente sobre el hardware de la computadora. Entre
las tareas que desempeña se incluyen el manejo de las
interrupciones, la asignación de trabajo al procesador y el
proporcionar una vía de comunicación entre los distintos programas.

. El núcleo contiene un submódulo denominado "planificador", el cual


se encarga de asignar tiempo del procesador a los programas, de
acuerdo a una cierta política de planificación que varía de un
sistema operativo a otro.
Administrador de memoria:

Este módulo se encarga de asignar ciertas porciones de la


memoria principal (RAM) a los diferentes programas o partes de
los programas que la necesiten, mientras el resto de los datos y
los programas se mantienen en los dispositivos de almacenamiento
masivo. De este modo, cuando se asigna una parte de la memoria
principal se hace de una forma estructurada, siguiendo un
determinado orden. La forma más común de administración de la
memoria supone crear una memoria virtual; con este sistema, la
memoria de la computadora aparece, para cualquier usuario del
sistema, mucho mayor de lo que en realidad es.
Control de la E/S:

Este componente presenta al usuario la E/S de datos como una cuestión


independiente del dispositivo; es decir, para los usuarios, todos los
dispositivos tienen las mismas características y son tratados de la misma
forma, siendo el sistema operativo el encargado de atender las
particularidades de cada uno de ellos (como su velocidad de operación).
Una técnica muy común, especialmente en salida, es el uso de "spoolers".
Los datos de salida se almacenan de forma temporal en una cola situada en
un dispositivo de almacenamiento masivo (el spool), hasta que el
dispositivo periférico requerido se encuentre libre; de este modo se evita
que un programa quede retenido porque el periférico no esté disponible.
Administrador de archivos:

Se encarga de mantener la estructura de los datos y los programas del


sistema y de los diferentes usuarios (que se mantienen en archivos) y de
asegurar el uso eficiente de los medios de almacenamiento masivo. El
administrador de archivos también supervisa la creación, actualización y
eliminación de los archivos, manteniendo un directorio con todos los
archivos que existen en el sistema en cada momento y coopera con el
módulo administrador de memoria durante las transferencias de datos
desde y hacia la memoria principal. Si se dispone de un sistema de
memoria virtual, existen transferencias entre la memoria principal y los
medios de almacenamiento masivo para mantener la estructura de la
misma.
A veces se considera un quinto módulo: el intérprete de comandos
o intérprete de instrucciones, el cual se encarga de "traducir" las
órdenes que el usuario ingresa mediante el teclado u otros
dispositivos a un "lenguaje" que la máquina pueda entender
PROCESOS Y ADMINISTRADOR DE PROCESOS

Programas: Colección de instrucciones que


el procesador interpreta y ejecuta, se almacenan en
sistemas no volátiles necesitando ser cargados en memoria
principal para poder ser ejecutados, se considera un ente
estático.

Procesos : Programa en ejecución, el sistema operativo les


asigna recursos, Se consideran un ente dinámico.
El proceso es una abstracción creada
por el SO, que se compone de:
- Código de Programa: sección texto
- Contexto de Ejecución: PC, registros del
procesador y una pila para invocación de
procedimientos.
-Sección de datos, que
contiene variables globales
-Recursos del sistema.
ESTADOS Y TRANSICIONES DE LOS
PROBLEMAS
Los estados se pueden dividir en:
Activos e inactivos

* Activos: Los que compiten por el procesador.


Tipos:
-Ejecución: Cuando el proceso tiene
el control del cpu.
-Preparado (Listo): Tienen las condiciones para
ser ejecutados pero no están en ejecución por
alguna causa.
-Bloqueado: No pueden ejecutarse porque
necesitan algún recurso no disponible

*Inactivos: No pueden competir por el CPU


Operaciones sobre procesos:
*Creación: Se produce con la orden de
ejecución del programa, usa argumentos
(nombre, prioridad). En este momento aparece
el PCB y es insertado en la lista de listos
Pasos que sigue el S.O.

-Asignarle un PCB
-Establecer espacio de direcciones de
memoria
-Cargar imagen (ejecutable) en
memoria
-Marcar la tarea como ejecutable
Tipos de creación:
>Jerárquica: cada proceso que se crea es hijo
del proceso creador y hereda el entorno de
ejecución del padre.
El primer proceso que ejecuta un usuario será
hijo del intérprete de comandos. Un proceso
durante su ejecución puede crear varios
procesos hijos a través de llamadas al sistema
para creación de procesos

>No jerárquica: Cada proceso creado por otro


se ejecuta independiente de su creador con
un entorno independiente.
Destrucción:

Orden de eliminación del proceso, el sistema


operativo destruye el PCB y libera los recursos
empleados
Normalmente lo hace un antepasado directo (p.e.
el proceso padre)
Significa la terminación de toda su "descendencia"
(terminación en cascada)
Pasos que sigue el S.O.
1. Envío de datos del proceso finalizado al creador.
(p.e. Código de finalización)
2. El SO desasigna los recursos que tiene
Suspensión: Paralización de un
proceso que puede ser reanudado
posteriormente, se aplica en
ocasiones de mal funcionamiento o
sobrecarga de trabajo(Guarda su
PCB en disco)
-Reanudación: Activación de un proceso
suspendido (Reinserta el PCB en memoria)
-Cambio de prioridad: Reasignación de un nuevo
rango de prioridad
-Temporizar la ejecución: Un proceso se ejecuta
cada cierto periodo de tiempo, por etapas o de
una vez
-Despertar un proceso: Desbloqueo de un
proceso
-Bloqueo: puesta en espera de un proceso.
CONCEPCIÓN DE
MODELOS DE
ESTADO
Para poder entender y definir mejor la concepción o creación de los
modelos de estado, necesitamos definir previamente lo que es:

* Programa
* Proceso
* Estado
¿Qué es un programa?
Un programa se define
como un compuesto
secuencial de órdenes que
puede interpretar un
mecanismo cualquiera.
Que es un proceso?
* Un “proceso” se define
como "Una unidad de
actividad que se
caracteriza por la
ejecución de una secuencia
de instrucciones" en otras
palabras es una agrupación
de acciones aplicadas a una
entidad para modificarla,
en este caso ya que dentro
de un programa surgen
varias modificaciones, lo
podemos tomar como
ejemplo de proceso
también.
¿Qué es un estado?
* Formalmente, la definición
de estado es: “Situación o
modo de estar de una
persona o cosa, en especial
la situación temporal de las
personas o cosas cuya
condición está sujeta a
cambios”.
* Ya que hablamos de
informática un estado
sería: “Una configuración
única de información en un
programa o máquina”.
Los procesos de un sistema se pueden encontrar en cinco
fases distintas, de las cuales, las tres primeras son las más
elementales.
* Ejecución
Primera fase, el proceso se encuentra en una etapa de procesamiento que está
siendo realizado por el procesador. El estado del proceso habita en los registros del
procesador.
* Bloqueado
Segunda fase, el proceso se encuentra interrumpido, a la espera de que suceda un
evento por lo tanto no puede proseguir hasta que este ocurra. Un ejemplo típico de
esta fase es la espera a una petición de la función de entrada y salida. El estado
del proceso habita en el BCP (Bloque Central de Procesos).
* Listo
Tercera fase, el proceso se encuentra preparado para ejecutar su procesamiento.
El sistema operativo es el encargado de indicar cuál proceso es el siguiente a pasar
a la fase de ejecución en caso de existir más de un proceso en fase de listo. El
estado del proceso habita en el BCP.
Modelo de Proceso con 2 Estados
Solo puede estar un proceso a la vez

El proceso que pasa por la transición de pausa queda en cola

Dependiendo de la Política de Planificación, el orden de los


procesos cambia, pudiendo ser:

ó
Modelo de Proceso con 3 Estados

Este estado, hace uso de la memoria virtual:

En la mayoría de casos, es necesario que el usuario


intervenga para que el proceso quede nuevamente
habilitado, pasando al estado de listo.
Modelo de Proceso con 5 Estados

Este nuevo estado clasifica los


procesos, para determinar cual
pasa al procesador

También podría gustarte