28
1 Sistemas Operativos (IS11) – Tema 1 1 Introducción. Sistemas Operativos. Tema 1. Sistemas Operativos (IS11) – Tema 1 2 Concepto y definición de Sistema Operativo. Sistema informático (S.I.) se divide en cuatro partes: • Hardware. Sistema Operativo. Programas de Aplicación. • Usuarios.

Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

Embed Size (px)

Citation preview

Page 1: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

1

Sistemas Operativos (IS11) – Tema 1 1

Introducción.

Sistemas Operativos.Tema 1.

Sistemas Operativos (IS11) – Tema 1 2

Concepto y definición de Sistema Operativo.

• Sistema informático (S.I.) se divide en cuatro partes:• Hardware.• Sistema Operativo.• Programas de Aplicación.• Usuarios.

Page 2: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

2

Sistemas Operativos (IS11) – Tema 1 3

• Hardware (Hw): – Proporciona recursos básicos del S.I.:

– El procesador, Memoria, Dispositivos E/S).• Sistema Operativo (SO):

– Es un programa. – Sirve de intermediario o interfaz entre usuarios y programas

de aplicación-hardware.– Puede verse como un entorno para ejecutar programas.

• Programas de Aplicación:– Aplicaciones concretas (para resolver los problemas de

computación de los usuarios.– Demandan servicios del S.O. mediante llamadas al sistema).

• Usuarios:– Entes que hacen uso del computador (personas, otras

computadoras y máquinas que pueden hacer un servicio del mismo).

Concepto y definición de Sistema Operativo.

Sistemas Operativos (IS11) – Tema 1 4

Concepto y definición de Sistema Operativo.

• Objetivos del S.O.:– Incrementar la productividad de usuarios (facilitando el uso).

• Proporciona entorno cómodo y abstracción del Hw al usuario.

– Optimizar la utilización de los componentes o recursos hardware.Objetivos a menudo contradictorios.

• S.O. puede considerarse gestor de recursos (HW y SW) del S.I.. Realiza tareas como:– Decidir quién, cuándo, durante cuánto tiempo se usa un recurso.– Resolver conflictos entre demandas concurrentes de recursos,

preservando la integridad del sistema.– Maximizar el rendimiento del S.I..

• Es difícil de definir el concepto de S.O..

Page 3: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

3

Sistemas Operativos (IS11) – Tema 1 5

Conceptos básicos.

• El S.O. puede considerarse como un interfaz entre Hw ySw:

• La evolución de los S.O. va muy ligada a la del hardware.

• Para entender mejor el concepto de S.O.:– Veremos una evolución histórica del desarrollo de los S.O. en

los siguientes apartados:• Monitores.• Sistemas Batch (por lotes).• Multiprogramación.• Tiempo Compartido.• Tiempo Real.

Sistemas Operativos (IS11) – Tema 1 6

Los Primeros Sistemas.• La máquina desnuda:

– Inicialmente sólo existía el hardware del computador (no S.O.).– El desarrollo de programas consistía en:

• Traducción manual de instrucciones en binario, octal o hexadecimal.

• Arranque del programa cargando el contador de programa con la dirección de la primera instrucción.

• El programador (usuario) realizaba el control de dispositivos de manera directa a través de puertos de E/S.

• Para extraer los resultados se examinan los contenidos de registros y memoria.

• Control interactivo de la ejecución:– El usuario estaba delante.– Vigilaba la existencia de errores en la ejecución.– Si existían podía detener el programa, examinar memoria y

registros, depurando el programa en la consola.

Page 4: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

4

Sistemas Operativos (IS11) – Tema 1 7

Los Primeros Sistemas.

– El usuario actuaba de operador del sistema:• Había una lista con los tiempos ocupados y libres.• Se apuntaba en la lista.

– Estos sistemas se caracterizaban por una productividad muy baja del usuario y hardware.

Sistemas Operativos (IS11) – Tema 1 8

Los Primeros Sistemas.

• El procesamiento serie:

– Se desarrolla hardware y software adicionales:

• Se popularizan lectores de tarjetas, impresoras de líneas y cintas magnéticas.

• Se diseñan ensambladores, cargadores y linkers. Se crean bibliotecas de funciones comunes.

• Cada dispositivo de E/S tiene características especiales. Se programan subrrutinas especiales, manejadores de dispositivos, (device driver), facilitan tareas tales como escribir o leer un carácter.

Page 5: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

5

Sistemas Operativos (IS11) – Tema 1 9

Los Primeros Sistemas.

• Aparecen compiladores (FORTRAN, COBOL, etc.):– Se facilita la tarea del programador.– Se hace más complejo el funcionamiento del computador.

Ejecutar un programa supone:• Montar el compilador, que esta en una cinta.• Cargar el compilador en memoria.• Pasar el programa fuente de la lectora de tarjetas a cinta

magnética.• Montar la cinta con el programa.• El compilador pasa el programa fuente a lenguaje

ensamblador.• Montar la cinta con el ensamblador.• Montar la cinta con las rutinas de la biblioteca.• Se obtiene el código binario listo para ejecución que se carga

en memoria.

Sistemas Operativos (IS11) – Tema 1 10

Los Primeros Sistemas.

– Existía un forma rudimentaria de S.O.:– Los manejadores de dispositivo.– El cargador: programa que transfiere la información de cinta

a memoria e inicia la ejecución del programa.

– Sigue existiendo baja productividad del usuario y hardware.

Page 6: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

6

Sistemas Operativos (IS11) – Tema 1 11

Sistemas por lotes (“batch”): uso de Monitores.

• Para reducir el tiempo de preparación de los trabajos:– Se incorpora un operador que trabaja en la consola:

• Cuando acaba un proceso comenzaba el siguiente.• Se reducía el tiempo de preparación (operador profesional).• La depuración se hacía con un volcado de memoria y

registros fuera de la consola.– Los trabajos con requisitos semejantes se agrupaban en lotes:

• Sólo hace falta cargar el compilador una vez.• Las operaciones las sigue haciendo el operador.• Mejora el rendimiento del sistema

• Posteriormente, se introduce el secuenciadorautomático de trabajos, un programa llamado monitor residente (en memoria).

Sistemas Operativos (IS11) – Tema 1 12

Monitores.– El monitor residente:

• Transfiere automáticamente el control de un programa al proceso, este lo devuelve al monitor y así sucesivamente.

• Formado por: interprete de tarjetas de control, cargador de memoria, manejadores de dispositivos de E/S.

• Para indicar al monitor qué programa ha de ejecutar se crean unas tarjetas de control:

– $JOB 10, 429754, CARLOS HERNANDEZ– $FORTRAN $ASM $RUN $END

• El monitor es un S.O. rudimentario.

Page 7: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

7

Sistemas Operativos (IS11) – Tema 1 13

Operaciones fuera de línea (off-line).

• La secuenciación automática de trabajos realizada por un monitor funciona ON-LINE:– La CPU lee de:

• La lectora de tarjetas.• La unidad de cinta del sistema.

• Problema: La CPU es mucho más rápida que la lectora de tarjetas.– Ejemplo:

• Un ensamblador o compilador puede procesar 300 tarj./s.• Un lector de tarjetas rápido puede leer 20 tarj./s.• Para un trabajo de 1200 tarjetas tendríamos:

– 60 seg. de lectura de tarjetas. 4 segundos de uso de CPU.– 56 de 60 seg. CPU inactiva. 93,3% del tiempo.

Sistemas Operativos (IS11) – Tema 1 14

• Solución: Operación fuera de línea.– La CPU lee de cintas magnéticas (dispositivos de E/S más

rápidos).– Los lectores de tarjetas e impresoras operan fuera de línea.

Intercambian sus datos con cintas. Su funcionamiento es independiente de la CPU.

Operaciones fuera de línea (off-line).

Page 8: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

8

Sistemas Operativos (IS11) – Tema 1 15

– Ventajas del funcionamiento off-line: 1.- La CPU depende de la velocidad de cintas (más

rápidas).

2.- Los programas usan dispositivos E/S lógicos, para conseguir independencia del hardware (tarjetas, cinta) conectado a la CPU. El sistema utiliza el manejador de dispositivo correspondiente ante una E/S.

3.- Se puede utilizar más de un sistema lector-cinta y cinta-impresora para una misma CPU. Equilibrando velocidades.

Operaciones fuera de línea (off-line).

Sistemas Operativos (IS11) – Tema 1 16

Almacenamiento temporal (buffers y spoolers).

• Buffer:– Método para hacer simultánea la E/S de un trabajo con su

propio computo.

• Funcionamiento:– Se lee un elemento a la entrada y se coloca en el buffer.– La CPU está lista y opera con él.– Simultáneamente comienza la próxima lectura y se acumula en

el buffer.

Unidad de entrada

Buffer lectura CPU

Buffer escritura

Unidad de salida

Page 9: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

9

Sistemas Operativos (IS11) – Tema 1 17

• Situaciones provocadas por las diferencias relativas entre los tiempos de procesamiento y E/S: 1.- Si la velocidad de procesamiento medio CPU = velocidad

de dispositivos, ambos funcionan a medio rendimiento.

2.- Si la CPU es mucho más rápida que los dispositivos o lasaplicaciones poseen una gran proporción de operaciones deE/S. La CPU vaciará rápidamente el buffer de entrada ydeberá esperar.

3.- Si la CPU es más lenta, o los programas efectúan muchocomputo, los buffers de entrada estarán usualmente llenos ylos de salida vacíos.

Almacenamiento temporal (buffers y spoolers).

Sistemas Operativos (IS11) – Tema 1 18

• El manejo de buffers es generalmente una función del sistema operativo:– El monitor residente o los manejadores de dispositivos incluyen

buffers del sistema para cada dispositivo de E/S.

– Una llamada a la subrrutina del manejador de dispositivo provoca una lectura (transferencia) de o hacia un buffer del sistema.

• Spoolers (Simultaneous Peripheral Operation On-Line):– Surge con la aparición de discos que permiten un rápido acceso

aleatorio (el disco como buffer de gran tamaño).

– La lectora de cintas tenía el problema de que no podrá escribir por un extremo mientras la CPU leía por otro.

Almacenamiento temporal (buffers y spoolers).

Page 10: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

10

Sistemas Operativos (IS11) – Tema 1 19

– El funcionamiento de la técnica de spooling (Spool-Simultaneous Peripherical Operations On-Line).

• Se pasa el contenido de las tarjetas a discos.

• El S.O. mantiene una tabla que indica la posición de las imágenes de las tarjetas en disco.

• Al ejecutar un trabajo, las entradas y salidas se efectúan desde disco.

Almacenamiento temporal (buffers y spoolers).

Sistemas Operativos (IS11) – Tema 1 20

– Surge una estructura de datos muy importante:

• Un depósito de trabajos (job spool). Esto permite al S.O. seleccionar cuál será el siguiente trabajo por ejecutar para así incrementar la utilización de la CPU. Es un primer ejemplo de planificación de trabajos.

– Diferencias entre buffers y spoolers:

• Buffers: permite el solapamiento de la ejecución de un trabajo con su propia E/S.

• Spoolers: permite superponer la E/S y los cálculos de varios trabajos diferentes.

Almacenamiento temporal (buffers y spoolers).

Page 11: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

11

Sistemas Operativos (IS11) – Tema 1 21

Multiprogramación.

• Surge una nueva técnica para obtener un mayor aprovechamiento (rendimiento) de la CPU.– Ejemplo:

• En cualquier trabajo que se ejecuta en un determinado momento habrá que esperar a que se introduzca un mandato por el teclado o se realice una operación de E/S.

– En un sistema monoprogramado: Durante este tiempo la CPU espera y queda ociosa.

– En un sistema multiprogramado: El sistema operativo cambia a otro proceso y lo ejecuta, y así sucesivamente.

Sistemas Operativos (IS11) – Tema 1 22

• En un sistema operativo multiprogramado necesitaremos:– El sistema conserva varios trabajos en memoria al mismo

tiempo para permitir la conmutación.

– Para ello se necesita alguna forma de administración de memoria. (gestor de memoria)

– Se necesita una planificación de la CPU. Para elegir que trabajo ha de ejecutarse. (gestor de procesos:planificación, cambio de contexto)

– Necesita limitar la posibilidad de que un trabajo interfiera a otro. (protección entre procesos)

Multiprogramación.

Page 12: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

12

Sistemas Operativos (IS11) – Tema 1 23

Tiempo compartido.

Posteriormente aparecen:• Sistemas interactivos:

– Proporciona comunicación directa entre el usuario y el sistema .– El usuario da instrucciones al S.O. o al programa directamente.– La entrada usualmente se efectúa por un teclado y la salida por

una pantalla.• Sistemas de tiempo compartido:

– Son una combinación de sistemas interactivos y multiprogramados (se vuelve a la concepción de las primeras máquinas programador-operador pero con mayor productividad del S.I.).

– La CPU ejecuta diversas tareas alternando entre ellas con cambios muy frecuentes.

– El usuario tiene la sensación de “poseer su propio computador”y puede trabajar interactivamente.

Sistemas Operativos (IS11) – Tema 1 24

Sistemas Distribuidos.

• Sistemas distribuidos:– Tienen varias CPUs y distribuyen los cálculos entre ellos.

– Existen dos esquemas básicos para su construcción.

• Sistemas fuertemente acoplados: los procesadores comparten la memoria y un reloj, y la comunicación se lleva a cabo a través de la memoria compartida.

• Sistemas débilmente acoplados: los procesadores no comparten ni memoria ni reloj, se comunican a través de líneas de comunicación (canales de alta velocidad o redes de computadoras).

Page 13: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

13

Sistemas Operativos (IS11) – Tema 1 25

• Varias razones para construir sistemas distribuidos:– Compartición de recursos:

• Impresoras, dispositivos de almacenamiento, etc.

– Incremento de la velocidad de los cálculos:• Si un trabajo determinado puede dividirse en varios

subtrabajos que se ejecutan concurrentemente. Un sistema distribuido permite distribuir instalaciones y ejecutarlos concurrentemente.

– Incremento de la fiabilidad: Confiabilidad:• Si falla una instalación en un sistema distribuido, las

restantes pueden, en principio, continuar operando.

Sistemas Distribuidos.

Sistemas Operativos (IS11) – Tema 1 26

• El S.O. de un sistema distribuido debe resolver problemas como los siguientes:– Sincronización y comunicación entre procesadores.– Tolerancia a fallos.– Distribución de trabajo y aprovechamiento del S.I.

(distribución de cargas entre diferentes procesadores).

Sistemas Distribuidos.

Page 14: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

14

Sistemas Operativos (IS11) – Tema 1 27

Tiempo real.

• Sistemas operativos en tiempo real:– Suelen usarse en el control de actividades. Ejemplos:

• Sistemas que controlan experimentos científicos.• Sistemas médicos de visualización.• Sistemas de control industrial.• Algunos sistemas gráficos.

– Un sistema operativo en tiempo real tiene restricciones temporales definidas, el procesamiento debe llevarse a cabo dentro de los límites definidos o el sistema fallará.

– Las restricciones temporales influyen en los recursos hardware de que normalmente se dispone (no suele haber almacenamiento secundario etc.).

– Las características más avanzadas de los sistemas operativos suelen estar ausentes si suponen incertidumbre sobre el tiempo que requerirá una operación.

Sistemas Operativos (IS11) – Tema 1 28

Estructura de los sistemas operativos.

• Un sistema operativo es un programa complejo:– Para diseñarlo se divide en pequeños módulos (componentes):

Cada uno de ellos es una porción bien definida del sistema y tiene una función determinada.

– Se crea una interfaz bien definida entre estos módulos.• No todos los sistemas operativos tienen los mismos

componentes. Suelen ser comunes los siguientes:– Administrador de procesos.– Administrador de la memoria principal.– Administración de almacenamiento secundario.– Administrador del sistema de E/S.– Administrador de archivos o ficheros.– Sistema de protección.– Redes (gestor de red).– Sistema interprete de comandos.

Page 15: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

15

Sistemas Operativos (IS11) – Tema 1 29

• Administración de procesos:– La idea básica de un proceso es la de un programa en

ejecución:• Un programa de usuario de tiempo compartido.• Una tarea del sistema operativo.

– En general, se suele pretender que puedan haber varios procesos ejecutandose en el sistema .

– Un proceso necesitará determinados recursos para poder ejecutarse:

• Tiempo de CPU.• Memoria.• Archivos.• Dispositivos de E/S.

Estructura de los sistemas operativos.

Sistemas Operativos (IS11) – Tema 1 30

– El sistema operativo realiza las siguientes tareas de administración de procesos:

• Crear y eliminar los procesos de usuario y sistema.• Asignar recursos a los procesos.• Suspender y reanudar la ejecución de los procesos.• Proporcionar mecanismos de sincronización de procesos.• Proporcionar mecanismos de comunicación entre procesos.• Proporcionar mecanismos para la prevención de bloqueos

(manejo de bloqueos mutuos).

Estructura de los sistemas operativos.

Page 16: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

16

Sistemas Operativos (IS11) – Tema 1 31

• Administración de la memoria principal:– La memoria: “deposito” de datos de acceso rápido, compartido

por la CPU y dispositivos de E/S.• La CPU: lee instrucciones de la memoria y escribe y lee

datos de la memoria.• Los dispositivos de E/S: leen y escriben datos en memoria

mediante DMA• Memoria como sucesión de celdas (bytes, palabras) cada

una con su dirección.– Para ejecutar un programa:

• Convertir direcciones relativas en absolutas y• Cargarlo en memoria.

– Cuando la ejecución del programa termina:• Se debe liberar el espacio en memoria que ocupaba.

Estructura de los sistemas operativos.

Sistemas Operativos (IS11) – Tema 1 32

– El sistema operativo es responsable de las siguientes tareas de administración de memoria:

• Controlar que zonas de memoria (celdas libres y ocupadas) se están usando y quién las usa (habrá varios programas ejecutandose en memoria).

• Decidir que procesos se cargaran en memoria cuando haya espacio.

• Asignar y recuperar el espacio de memoria.

– Existen varias formas de administración de memoria y su eficacia del diseño del hardware del sistema.

Estructura de los sistemas operativos.

Page 17: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

17

Sistemas Operativos (IS11) – Tema 1 33

• Administración del almacenamiento secundario (respaldo a la memoria principal):– Las unidades de almacenamiento secundario (discos):

• Almacenan programas que se ejecutarán cargandolos en memoria principal (memoria limitada).

• Almacenan datos (puede ser fuente y destino de un proceso).

– El sistema operativo realizará tareas de administración de procesos como:

• Administración del espacio libre.• Asignación del almacenamiento (asignación y liberación).• Planificación de operaciones sobre discos.

Estructura de los sistemas operativos.

Sistemas Operativos (IS11) – Tema 1 34

• Administración del sistema de E/S:– Para optimizar la productividad del usuario:

• Se ocultan las particularidades del dispositivo hardware de E/S.

– Por ejemplo, en UNIX se utiliza un sistema de E/S:• Un sistema de memoria cache (buffer).• Una interfaz general con manejadores de dispositivos.• Manejadores para dispositivos de hardware específicos

(utiliza particularidades del dispositivo al cual estáasignado).

Estructura de los sistemas operativos.

Page 18: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

18

Sistemas Operativos (IS11) – Tema 1 35

• Administración de archivos:– Pueden haber distintos tipos de dispositivos de

almacenamiento: sus características y organización física varían.

– El S.O. proporciona una forma lógica y uniforme de almacenamiento de la información. La unidad de almacenamiento es el fichero.

– Los archivos o ficheros se organizan en directorios para facilitar su uso.

– El S.O. hace las siguientes tareas de administr. de archivos:• La creación y eliminación de archivos.• La creación y eliminación de directorios.• El manejo de operaciones primitivas para manipular

archivos y directorios.• La correspondencia entre archivos y almacenamiento

secundario (mapeado de archivos entre memoria y al.sec).

Estructura de los sistemas operativos.

Sistemas Operativos (IS11) – Tema 1 36

• Sistema de protección:– Protección consiste en:

• Mecanismos para controlar el acceso de programas, procesos o usuarios a los recursos de un S.I.

• Un recurso desprotegido no puede “defenderse “ del uso (o abuso) de un usuario (autorizado o no).

• Ejemplo: Permisos de archivos y directorios en UNIX. – Función del SO

• Determinar si el acceso está o no permitido• Determinar los controles a realizar

Estructura de los sistemas operativos.

Page 19: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

19

Sistemas Operativos (IS11) – Tema 1 37

• Gestión de Redes:– Concepto de Sistema distribuido:

• Puede ser un conjunto de procesadores que no comparten ni reloj. ni memoria. Se comunican a través de una red de comunicaciones.

• Permiten el acceso a los recursos entre nodos interconectados que tiene el sistema de forma compartida.

– El S.O.:• Suele generalizar el acceso a red como una forma del

acceso a archivos.• Los detalles de la red se incluyen en el manejador del

interfaz de red.

Estructura de los sistemas operativos.

Sistemas Operativos (IS11) – Tema 1 38

• Interprete de comandos:– Se suele proporcionar mandatos u ordenes al S.O. por medio de

enunciados de control.• Ejemplo: Las tarjetas de control de un monitor residente.

– El interprete de mandatos tiene como misión:• Leer u obtener el siguiente mandato.• Ejecutarlo.

– Es uno de los programas más importantes del S.O.:• Un interprete fácil de usar hace más agradable al S.I.. al

usuario.– Los hay:

• Gráficos: Mac, Windows.• Los mandatos se introducen mediante teclado: Los Shells

de UNIX.

Estructura de los sistemas operativos.

Page 20: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

20

Sistemas Operativos (IS11) – Tema 1 39

– Los mandatos pueden realizar tareas de:• Administración de procesos.• Manejo de E/S.• Administración de almacenamiento secundario.• Administración de memoria principal.• Acceso al sistema de archivos.• Protección y Redes.

Hasta aquí hemos analizado los componentes de un SO. Pasemos a ver la clasificación de los SO en función de su estructura (Taxonomía de los SO)

Estructura de los sistemas operativos.

Sistemas Operativos (IS11) – Tema 1 40

• Estructura del S.O.:– Los componentes descritos se interconectan entre sí para

formar el S.O.– A los componentes que existen y su forma de interconexión se

le denomina estructura del S.O.– Tipos de estructuras (monolítica y por capas o jerárquica):

• Estructura simple o monolítica:– No hay estructura.– El S.O. se escribe como un conjunto de procedimientos que

pueden llamarse todos entre sí cuando lo necesitan.– Cada procedimiento tiene una interfaz bien definida en

cuanto a parámetros y resultados.– Dentro del S.O. no hay ocultación de información, todos los

procedimientos son visibles para los demás.– Ejemplo: MS-DOS.

Estructura de los sistemas operativos.

Page 21: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

21

Sistemas Operativos (IS11) – Tema 1 41

– Estructura multinivel por capas o jerárquica:• Es una organización modular o por niveles jerárquicos del

S.O.:– El nivel inferior o capa 0 sería el hardware.– Una capa o nivel M:

• Será un conjunto de programas con sus estructuras de datos o rutinas.

• Estos programas pueden usar las rutinas de capas inferiores (M-1, M-2, etc.).

• Las rutinas o programas que posee la capa M pueden ser usadas por los programas de las capas superiores (M+1, M+2, etc.)

• Los niveles superiores no necesitan conocer cómo se implementan las operaciones de niveles inferiores, sólo lo que hacen).

Estructura de los sistemas operativos.

Sistemas Operativos (IS11) – Tema 1 42

• Ventajas:– Se facilita la construcción, verificación del S.O.

• Fácil mantenimiento y detección de errores, si falla un módulo no se bloquea todo el SO, extensión del SO sencilla

• Desventajas:– Se necesita una cuidadosa definición de niveles a priori.

¿Qué se coloca en cada nivel o capa?.

Estructura de los sistemas operativos.

Page 22: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

22

Sistemas Operativos (IS11) – Tema 1 43

– Ejemplos de estructuras por capas:

Estructura de los sistemas operativos.

Sistemas Operativos (IS11) – Tema 1 44

Servicios de los sistemas operativos.

• Un sistema operativo proporciona un entorno cómodo para la ejecución de programas:– Ofrece ciertos servicios para los programas y sus usuarios.– Varían de un sistema operativo a otro.

• Agrupando los servicios en clases comunes:Recursos de ayuda al usuario

– Ejecución de programas:• Cargar un programa en memoria y ejecutarlo.• Un programa debe poder terminar su ejecución (normal o

anormalmente).– Operaciones de E/S:

• El S.O. debe ofrecer la posibilidad de ejecutar operaciones de E/S, ya que, en general, un programa no puede llevarlas a cabo directamente.

Page 23: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

23

Sistemas Operativos (IS11) – Tema 1 45

– Manipulaciones del sistema de archivos:• Los programas necesitan leer y escribir archivos, crearlos y

eliminarlos.

– Comunicaciones (entre procesos):• Un proceso puede necesitar compartir información con otro:

– Entre procesos que se ejecutan en el mismo computador.– Entre procesos que se ejecutan entre distintos computadores

unidos por una red.• Puede hacerse a través de memoria compartida o paso de

mensajes. (el S.O. mueve paquetes de información entre procesos).

Servicios de los sistemas operativos.

Sistemas Operativos (IS11) – Tema 1 46

– Detección de errores:• El sistema operativo debe estar pendiente de posibles

errores: En el hardware, en la memoria y la CPU o en un programa de usuario.

• Emprender una acción adecuada en función del tipo de error.Servicios para asegurar la eficiencia del sistema

– Asignación de recursos:• Debe asignar recursos (memoria, CPU, almacenamiento

etc.) a cada uno de los usuarios o trabajos que se ejecutan al mismo tiempo (procesos concurrentes).

– Contabilidad:• Llevar un control de qué usuarios utilizan el computador,

cuantos recursos y de qué tipo.• Las anotaciones tienen fines contables o para recopilar

estadísticas de uso.

Servicios de los sistemas operativos.

Page 24: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

24

Sistemas Operativos (IS11) – Tema 1 47

– Protección:

• En un sistema multiusuario los dueños de la información puede que deseen controlar su uso.

• No debe ser posible que un trabajo interfiera con los demás en su ejecución, ni con el sistema operativo.

Servicios de los sistemas operativos.

Sistemas Operativos (IS11) – Tema 1 48

Petición de servicio. Llamadas al sistema.

• Las llamadas al sistema proporcionan la interfaz entre sistema operativo y un programa en ejecución.

• Son puertas de acceso a los servicios ofrecidos por el SO, invocadas por procesos en modo usuario y ejecutadas en modo supervisor.

• Hay lenguajes como (C), que permiten usar estas funciones en un programa.

Page 25: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

25

Sistemas Operativos (IS11) – Tema 1 49

• Veamos un ejemplo: llamadas al sistema que utilizaría un programa que copia datos de un fichero a otro.– El programa necesita conocer el nombre de los ficheros y le

pregunta al usuario. Necesitamos:• Llamada al sistema para escribir en la pantalla un mensaje.• Llamada al sistema para leer del teclado los caracteres de

los nombres de los ficheros.

– Necesita abrir el fichero de entrada y crear el de salida.• Abrir un fichero es una llamada al sistema.• Crear un fichero es una llamada al sistema.• Pueden haber errores:

Petición de servicio. Llamadas al sistema.

Sistemas Operativos (IS11) – Tema 1 50

• El fichero de entrada existe y está permitido el acceso?.– No:– Mensaje de error (llamada al sistema).– El programa se aborta (termina anormalmente (llamada al

sistema)).

• El fichero de salida ya existe?.– Sí, podemos:

• Terminar el programa anormalmente: Mensaje de error (llamada al sistema) y abortando el sistema (llamada al sistema).

• Borrar y crear uno nuevo: Borrar el archivo (llamada al sistema) y crear uno nuevo (llamada al sistema).

• Preguntar al usuario: Mensaje en pantalla (llamada al sistema), leeríamos la respuesta teclado (llamada al sistema), etc.

Petición de servicio. Llamadas al sistema.

Page 26: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

26

Sistemas Operativos (IS11) – Tema 1 51

– Realizaríamos un bucle de lectura y escritura.• Escribir en un fichero (llamada al sistema).• Leer de un fichero (llamada al sistema).• Condiciones de error:

– Lectura: EOF inesperado etc.– Escritura: No hay espacio, impresora sin papel etc..

– Terminación:• Se cierran los archivos (llamada al sistema).• Mensaje en pantalla (llamada al sistema).• Termina normalmente el programa (llamada al sistema).

Petición de servicio. Llamadas al sistema.

Sistemas Operativos (IS11) – Tema 1 52

• Los programas pueden hacer uso intensivo del S.O.– Las interacciones del programa y su entorno suponen

solicitudes del programa al S.O.• El compilador y el soporte en ejecución ocultan detalles

del interfaz con el S.O.• En un llamada, en general, se necesita su nombre (la

operación) y parámetros (datos).• Las llamadas al sistema se pueden agrupar en cinco

grandes grupos:– Control de procesos y trabajos.– Manipulación de ficheros.– Gestión de dispositivos.– Mantenimiento de información.– Comunicaciones.

Petición de servicio. Llamadas al sistema.

Page 27: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

27

Sistemas Operativos (IS11) – Tema 1 53

• Control de procesos y trabajos:– Un programa debe ser capaz de terminar su ejecución:

• Normalmente (ll. al sist.: end). El S.O. transfiere el control al interprete de ordenes o a otro programa.

• Anormalmente (LL. Al sist.: abort). El S.O. puede enviar un mensaje de error, hacer un volcado de memoria y después continuaría.

– Un programa o proceso puede:• Cargar o ejecutar otro programa.• Crear un nuevo proceso y ejecutarlo (concurrentemente).

– Para un nuevo proceso que hemos creado podemos querer:• Obtener atributos de proceso, establecer atributos de

proceso: prioridades, tiempo máximo de ejecución, etc.• Terminarlo.

Petición de servicio. Llamadas al sistema.

Sistemas Operativos (IS11) – Tema 1 54

– Podemos querer que un proceso espere a otro:• Durante un cierto tiempo.• A que se produzca un suceso. (Los trabajos o procesos

deberán poder indicar que un suceso ha ocurrido).

• Administración de archivos:– Crear o eliminar archivos.– Abrir el archivo para poder utilizarlo.– Leer, escribir o reposicionarlo (puntero a la posición leída).– Obtener atributos de archivo o establecer atributos (nombre, tipo

de archivo, códigos de protección, información contable, etc.)– Con los directorios también se realizan algunos de estas

operaciones.

Petición de servicio. Llamadas al sistema.

Page 28: Introducción. - Universitat Jaume Iredondo/so/capitulo1_IS11.pdf · 3 Sistemas Operativos (IS11) – Tema 1 5 Conceptos básicos. • El S.O. puede considerarse como un interfaz

28

Sistemas Operativos (IS11) – Tema 1 55

• Administración de dispositivos:– Su utilización en algunos sistemas operativos suele ser similar a

la de archivos.– Deberemos de solicitar el dispositivo (si hay varios usuarios),

liberarlo al terminar de usarlo.– Leer, escribir y posicionar (depende del tipo de dispositivo) el

dispositivo.

• Mantenimiento de información:– Tienen como finalidad transferir información entre un

programa y S.O.• Ejemplos: Consultar fecha y hora, número de usuarios,

espacio libre en disco, información sobre procesos, etc.

Petición de servicio. Llamadas al sistema.

Sistemas Operativos (IS11) – Tema 1 56

• Comunicaciones:– Paso de mensajes:

• El sistema operativo proporciona un medio de comunicación entre procesos.

• Antes de intercambiar información se deberá abrir un conexión, existirán llamadas como leer mensaje y escribir mensaje y una vez terminada cerrar comunicación.

– Memoria compartida:• Los procesos utilizan llamadas al sistema con el propósito

de obtener acceso a regiones de memoria que pertenecen a otros procesos.

• Si esos procesos “están de acuerdo”, esas zonas de memoria pueden usarse para leer y escribir datos intercambiando información.

• La forma de la información y su situación la determinan los procesos, no el sistema operativo.

Petición de servicio. Llamadas al sistema.