PDF de programación - Sistema Operativo

Imágen de pdf Sistema Operativo

Sistema Operativográfica de visualizaciones

Publicado el 23 de Enero del 2020
327 visualizaciones desde el 23 de Enero del 2020
386,5 KB
33 paginas
Creado hace 2a (28/01/2018)
Sistema
Operativo

Contexto y Motivación

• Para entender mejor lo que es un sistema software

resulta necesario entender dos elementos muy
importantes

- El computador como elemento básico constructivo de una
aplicación
- El sistema operativo como intermediador de esas dos capas
• Hay que ser capaz de entender las diferentes misiones

que un sistema operativo tiene encomendadas

2

Contenidos

• ¿Qué es un sistema operativo (S.O.)?
• Elementos a gestionar por un S.O.
• Funciones de un S.O.
• Tipos de S.O.
• Carga de un S.O.
• Partes de un S.O.

1. Gestión de interrupciones
2. Gestión de procesos
3. Gestión de memoria
4. Gestión de sistemas de ficheros

3

¿Qué es un sistema operativo?

Informalmente:

• Un “programa” que actúa de intermediario entre el usuario de

un ordenador (“sistema informático”) y el hardware.

• Objetivos de un S.O.:
- Ejecutar programas
- Almacenar datos de usuarios
- Facilitar el uso de un sistema informático

• Usa el hardware de forma eficiente.

4

Estructura de un computador

Divisible en cuatro componentes:

1. Hardware: CPU, memoria, dispositivos I/O (entrada/salida)
2. Sistema operativo: Controla y coordina el uso del hardware

entre las varias aplicaciones (usuarios)

3. Programas de aplicación:

Usan un sistema informático para resolver “problemas” de

los usuarios

Ejemplos de aplicaciones: Procesadores de texto,

compiladores, navegadores web, bases de datos,
juegos, etc

1. Usuarios

Personas y (también) otras máquinas

5

Cuatro componentes de un sistema

informático

6

Definición de sistema operativo

• No existe una definición universalmente aceptada

- De hecho cada sistema operativo tiene sus particularidades

• Dos características principales:

El S.O. es un gestor-administrador de recursos

- Gestiona todos los recursos hardware del ordenador
- Gestiona las peticiones de los usuarios y resuelve

conflictos mediante el reparto justo de los recursos.

El S.O. es un “programa” de control de programas

-
-

Interviene en el ciclo de vida de las aplicaciones
Controla la ejecución de programas y reparte el
tiempo de CPU entre ellos

7

Funciones de un O.S

• Asignación de tiempo de CPU:

- Planificar las diversas actividades

• Control de memoria:

- División de la memoria del ordenador entre los programas

• Control de entrada/salida:

- Gestionar los datos desde y hacia los periféricos
- Gestionar las interrupciones de estos dispositivos
Interfaz con el usuario:
- Facilita el uso



• Sistema de ficheros:

Organizar la información en disco.

8

Tipos de O.S.

Algunos elementos que permiten su clasificación:

• Por número de usuarios:

- Mono usuario vs. Multi-usario

• Por número de tareas:

- Mono-tarea vs. Multitarea

• Por número de procesadores:

- Uniprocesadores, multiprocesadores

(simétricos, asimétricos).

9

El arranque del S.O.

• Al arrancar el ordenador se sigue un proceso de

inicialización (más o menos igual en todos los S.O.):
- Se lee el código de almacenamiento no-volátil (ROM)

“Este código detecta el dispositivo de arranque y lee (del sector de
arranque) el código para detectar la posición del sistema operativo”

- Se carga el “núcleo” o kernel del S.O.

“Funcionalidad siempre activa del S.O. como la funcionalidad de
ejecutar procesos”

- El S.O. toma el control arrancando los servicios del

sistema (programas o demonios de sistema) y arrancando la
interfaz de interacción con el usuario

10

Organización de un S.O.

• Un sistema informático tiene

- Una o más CPUs, memoria principal, y dispositivos

de E/S todo interconectado por buses

- Los programas que se ejecutan concurrentemente

compiten por los recursos

11

Gestión de E/S: Ideas

• Cada dispositivo de I/O tiene un controlador HW con capacidad

de ejecutar órdenes concurrentemente (a la vez) con la CPU

• Los controladores de I/O tienen buffers
• La CPU lee y escribe en los buffers de los controladores de E/S
• Los controladores de I/O pueden avisar a la CPU mediante

interrupciones hardware de que algo ha pasado:
Una nueva tecla se ha pulsado en el teclado
La operación de escritura en disco ha finalizado

-
-

Dirección

CPU

Controlador

Datos

Interrupción

Dispositivo

12

Interrupciones

• El sistema operativo tiene configurada una tabla con

información (puntero a una rutina) de cómo tratar cada
una de las interrupciones hardware

• Cuando el hardware detecta una interrupción, el

control se transfiere a la rutina, método o función en la
tabla de interrupciones.

• Esta rutina procesa la interrupción interactuando con

el S.O.

• Al finalizar el procesamiento de la rutina de atención a

la interrupción se puede reanudar la ejecución del
proceso interrumpido o pasar a ejecutar un proceso
distinto.

13

Interrupciones en un PC

14

Manejo de interrupciones

• El S.O. guarda el estado de ejecución de la CPU (los

registros de la CPU, entre ellos el contador de programa).

• Determina el tipo de interrupción que ha ocurrido:

- Polling o interrogación a cada dispositivo
- Uso de vector de interrupciones

• Ejecuta la rutina asociada a la interrupción

15

Cronograma de atención

a una interrupción

16

Colas de tareas en S. O.

asignadas a dispositivos de E/S

17

Acceso directo a memoria (DMA)
• La transferencia de grandes cantidades de datos entre
un dispositivo de E/S (por ejemplo un disco) y memoria,
sería lenta hacerla a través de la CPU

• El controlador de dispositivo lee o escribe directamente
en memoria principal.

- Al acabar la transferencia se debe notificar al

sistema mediante una interrupción de CPU

18

Estructura de almacenamiento

• Datos internos de la CPU (muy próximos)

- Registros
- Cachés de datos
- Caches de instrucciones
- Tablas de traducción de direcciones

• Memoria principal – almacenamiento del espacio de trabajo de la

CPU; i.e., código y datos de los programas en ejecución y del
S.O.

• Almacenamiento secundario – Discos del sistema.

- Almacenamiento persistente de los datos de usuarios y sistema

• Almacenamiento terciario – Sistemas externos

- Discos USB, cintas, disquetes, USB pen.

19

Jerarquía en el almacenamiento

¿Por qué diferentes niveles de

almacenamiento?.

I. Velocidad
II. Coste
III. Volatilidad

Caches – aumentan la eficiencia del sistema
subiendo de nivel una serie de datos que se
prevee que se necesitaran a corto plazo.

20

Jerarquía en el almacenamiento

21

Gestión de multiprogramación

Multiprogramación – necesaria por eficiencia

La CPU suele estar ociosa en sistemas monoprogramados ¿Puedes
pensar por qué?
La multiprogramación organiza las tareas para maximizar el uso de
la CPU
Estas tareas deberán compartir también la memoria
La gestión de procesos la realiza el planificador
Si un proceso tiene que esperar (por ejemplo una operación I/O), el
SO cambia de tarea

Compartición temporal es una extensión lógica en la que la CPU

cambia tareas tan rápidamente que los distintos usuarios pueden
interactuar con sus tareas sin notar retardos (interactividad)
El tiempo de respuesta debe ser < 1 segundo
Cada usuario podrá tener al menos una tarea en ejecución proceso
Si no hay suficiente memoria principal  swapping o intercambio
La memoria Virtual memory combina la memoria principal con la zona
22

de intercambio o swap

Gestión de Memoria

23

Interfaz con la aplicación: Llamadas

al sistema

• Una aplicación puede usar los servicios del

S.O. haciendo llamadas al sistema.

• Estas llamadas hacen que se ejecute el

código del S.O.

• El código de usuario se ejecuta en modo

usuario
o Menor prioridad
o Menores permisos de escritura en memoria
o Interrumpible por el S.O.

• El código de S.O. se ejecuta en modo “kernel”

24

Interfaz con la aplicación: Modo

Modo Dual

dual

Modo usuario y modo kernel
El hardware dispone de un bit en un registro de estado de la

CPU para indicar el modo

- Algunas instrucciones de CPU solo se pueden

ejecutar en modo kernel (privilegiado)

- Cada vez que se hace una llamada a sistema se
pasa a modo kernel al igual que al procesar una
interrupción hardware

25

Transición entre modo usuario y kernel
• Varias causas:

- Temporizador establecido por el planificador
-
- Llamada al sistema por parte de la aplicación

Interrupción HW

• Realizar una operación de entrada/salida
• Pasar datos a otra aplicación
• Obtener datos del estado del sistema (hora del sistema por

ejemplo)

- El proceso no tiene nada más que hacer y deja la CPU

26

Gestión de procesos

• Un proceso es un programa en ejecución. Es una unidad

de trabajo dentro del sistema. Un programa o aplicación es
una entidad pasiva, un proceso es una entidad activa.
• Un proceso necesita recursos para completar la tarea
CPU, memoria, I/O, ficheros y comunicación con otros procesos

• Al terminar un proceso debe devolver los recursos usados

al sistema

• Un proceso puede contener hilos

- Cada hilo es una ejecución distinta dentro de un proceso
- Cada hilo implica un contador de programa diferente
- Son una optimización para mejorar el tiempo de cambio entre

procesos

• Un sistema moderno ejecutará de forma concurrente varios

procesos, cada uno de ellos con varios hilos

27

Gestión de procesos

• El sistema operativo es el responsable de la

gestión de procesos:
- Creación y finalización de procesos
- Suspender y retomar procesos
- Sincronización de procesos
- Proporcionar mecanismos de comunicación entre

procesos

- Evitar inanición y bloqueo de procesos

28

Gestión de memoria

• Para poder ser ejecutado por la CPU, el código

de una aplicación debe cargarse en memoria

• La gestión de memoria se encarga de

determinar qué se carga en memoria
- Se intenta optimizar el sistema en casos de que no

haya memoria suficiente para cargar todos las
aplicaciones

• Actividades de gestión de memoria

- Saber qué procesos usan qué partes de memoria
- Decidir que parte de la memoria asignar a las

nuevas necesidades de los procesos

- Com
  • Links de descarga
http://lwp-l.com/pdf17178

Comentarios de: Sistema Operativo (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad