2010 2011 smr som c2 sistemas operativos2 [Modo de ...€¦ · • Distribuidos. 4. ... 5.1....

22
Capítulo 2. Sistemas Operativos. Elementos, estructura y funciones generales. 1. Concepto de Sistema Operativo. 2. Evolución histórica. 3. Tipos de Sistemas Operativos. © 2010 Juan Carlos Cano Todos los derechos reservados 1 3. Tipos de Sistemas Operativos. 4. Estructura de un Sistema Operativo. 5. Funciones de un Sistema Operativo. 6. Secuencia de arranque del ordenador.

Transcript of 2010 2011 smr som c2 sistemas operativos2 [Modo de ...€¦ · • Distribuidos. 4. ... 5.1....

Capítulo 2. Sistemas Operativos.Elementos, estructura y funciones generales.

1. Concepto de Sistema Operativo.2. Evolución histórica.3. Tipos de Sistemas Operativos.

© 2010 Juan Carlos Cano Todos los derechos reservados

1

3. Tipos de Sistemas Operativos.4. Estructura de un Sistema Operativo.5. Funciones de un Sistema Operativo.6. Secuencia de arranque del ordenador.

1. Concepto de Sistema Operativo.

� Un sistema operativo es una capa de software que se interpone entre el usuario y el hardware, o bien entre lasaplicaciones y el hardware, al objeto de ocultar la complejidadde la parte física de la computadora; facilitándose, así, la labor de los usuarios y de los programadores de aplicaciones.

� Principales funciones:— Gestión eficiente de los recursos hardware y software del

© 2010 Juan Carlos Cano Todos los derechos reservados

2

� Principales funciones:— Gestión eficiente de los recursos hardware y software del

sistema informático.— Suministro de una interfaz de usuario adecuada con la que

trabajar (GUI / TUI).— Control y administración de la ejecución de programas.— Control y administración del sistema de archivos.— Detección y, a ser posible, resolución de los errores que se

puedan producir.

3. Tipos de Sistemas Operativos ( I )http://www.ciclos-informatica.com/tipos-sistemas-operativos/

1. Según el tiempo de respuesta:• Procesamiento por lotes• Interactivos• Tiempo real

2. Según el número de usuarios:

© 2010 Juan Carlos Cano Todos los derechos reservados

3

2. Según el número de usuarios:• Monousuario o Monopuesto• Multiusuario o Multipuesto

3. Según el número de procesos:• Monotarea o Monoprogramados• Multitarea o Multiprogramados

3. Tipos de Sistemas Operativos ( II )

4. Según el número de procesadores:• Monoprocesador o Monoproceso• Multiprocesador o Multiproceso

5. Según el uso de los recursos de la red:

© 2010 Juan Carlos Cano Todos los derechos reservados

4

5. Según el uso de los recursos de la red:• Centralizados• En red• Distribuidos

4. Estructura de un Sistema Operativo.

» Monolíticos.» En niveles o capas:

© 2010 Juan Carlos Cano Todos los derechos reservados

5

5. Funciones de un Sistema Operativo.5.1. Gestión de procesos ( I )

- Un proceso es un programa en ejecución.

- En términos generales: Proceso = Flujo = Tarea = Trabajo

- Tipos de procesos:

© 2010 Juan Carlos Cano Todos los derechos reservados

6

- Tipos de procesos:- Procesos del sistema (servicios).- Procesos de los usuarios.

- Cada proceso tiene asociada una estructura de datos llamada PCB (Process Control Block) que contiene la siguiente información: PID, estado, prioridad, recursos asignados, valores de los registros del procesador, propietario, permisos, etc.

5. Funciones de un Sistema Operativo.5.1. Gestión de procesos ( II )

Ciclo de vida de un proceso:

© 2010 Juan Carlos Cano Todos los derechos reservados

7

Nota:

La autoría del diagrama corresponde al profesor José Miguel Buenaposada.

5. Funciones de un Sistema Operativo.5.1. Gestión de procesos ( III )

- La mayoría de las computadoras disponen de un único procesador y sin embargo se explotan en multitarea.

- Esto obliga al sistema operativo a distribuir el tiempo de CPU entre todos los procesos competidores. A tal fin se destina el componente conocido como planificador .

- El planificador decide:a) Qué proceso entra en la CPU cuando ésta queda libre.b) En qué momento el proceso que está en ejecución debe

© 2010 Juan Carlos Cano Todos los derechos reservados

8

b) En qué momento el proceso que está en ejecución debeabandonar la CPU.

- Existen diversas políticas (algoritmos) de planificación (FIFO, SJF, SRTF, Prioridades, RR) cuya adecuación a un sistema operativo concreto depende de los objetivos que se persigan. Por ejemplo:- Maximizar la utilización de la CPU, evitando que esté libre enalgún momento.

- Minimizar el tiempo medio de retorno o de espera.

5. Funciones de un Sistema Operativo.5.1. Gestión de procesos ( IV )

Algoritmo de planificación FIFO / FCFS:Los procesos se ejecutan en el orden de llegada.

Algoritmo de planificación SJF:De los procesos que están esperando para usar la CPU, SJF lleva a ejecución el proceso más corto.

© 2010 Juan Carlos Cano Todos los derechos reservados

9

SJF lleva a ejecución el proceso más corto.Los empates se dirimen mediante FIFO / FCFS.

Algoritmo de planificación SRTF:De los procesos que están esperando para usar la CPU, SRTF lleva a ejecución el proceso al que le reste menos tiempo para terminar.Los empates se dirimen mediante FIFO / FCFS.

5. Funciones de un Sistema Operativo.5.1. Gestión de procesos ( V )

Algoritmo de planificación por Prioridades:Consiste en asociar a cada proceso una prioridad (un valor entero).Cuanto más bajo sea el número, más preferencia tendrá

© 2010 Juan Carlos Cano Todos los derechos reservados

10

Cuanto más bajo sea el número, más preferencia tendrá el proceso a la hora de abordar la CPU.En caso de empate habrá de aplicarse FIFO / FCFS.Existen dos variantes de este algoritmo:

- Prioridades no expulsivo .- Prioridades expulsivo .

5. Funciones de un Sistema Operativo.5.1. Gestión de procesos ( VI )

Algoritmo de planificación RR:

A todos los procesos en el estado preparado se les asigna un tiempo máximo de ejecución denominado quantum. El planificador va concediéndole la CPU a cada proceso de forma secuencial por el quantum de tiempo definido. Si un proceso necesita un tiempo de

© 2010 Juan Carlos Cano Todos los derechos reservados

11

tiempo definido. Si un proceso necesita un tiempo de ejecución mayor que su quantum asociado, una vez transcurrido éste y si existen más procesos en espera de ejecución, se coloca al final de la cola del estado preparado y la CPU da entrada al proceso que encabeza la cola.

Este método de planificación resulta muy adecuado en sistemas operativos de tiempo compartido .

5. Funciones de un Sistema Operativo.5.2. Gestión de Memoria ( I )

- Un Sistema Operativo debe ser capaz de administrar la memoria del sistema eficazmente.

- El gestor de memoria se encarga de:

a) Asignar una zona de memoria libre a cada proceso.

© 2010 Juan Carlos Cano Todos los derechos reservados

12

b) Proteger de accesos indebidos las zonas de memoria asignadas.

c) Compartir entre varios procesos ciertas zonas de memoria.

d) Liberar las zonas de memoria asignadas, una vez vanterminando su ejecución los distintos procesos.

5. Funciones de un Sistema Operativo.5.2. Gestión de Memoria ( II )

Gestión de la Memoria en un Sistema Monotarea

Kernel

© 2010 Juan Carlos Cano Todos los derechos reservados

13

Kernel

Proceso

5. Funciones de un Sistema Operativo.5.2. Gestión de Memoria ( III )

Técnicas de Gestión de la Memoria en Sistemas Multitarea:

• Paginación:La memoria se divide en bloques de tamaño fijo denominados marcos.Cada proceso que pretende alojarse en memoria se divide en páginas.Mediante esta técnica el gestor de memoria se ocupará de asignar marcos libres a las páginas de los procesos.

© 2010 Juan Carlos Cano Todos los derechos reservados

14

a las páginas de los procesos.

• Segmentación:La memoria se divide en bloques de tamaño variable denominados segmentos.Cada proceso se descompone en piezas de tres tipos distintos:- Código (instrucciones máquina)- Datos estáticos (no cambian de tamaño durante la ejecución del proceso)- Datos dinámicos ( cambian de tamaño durante la ejecución del proceso)

5. Funciones de un Sistema Operativo.5.2. Gestión de Memoria ( IV )

Técnicas de Gestión de la Memoria en Sistemas Multitarea:

• Memoria Virtual:La idea de permitir la ejecución de procesos que puedan no estar cargados completamente en memoria, e incluso que sus tamaños superen a la memoria física disponible, da lugar al concepto de memoria virtual.El sistema operativo mantiene en la memoria principal aquella parte del proceso que se utiliza en cada momento, el resto permanece en el disco.

© 2010 Juan Carlos Cano Todos los derechos reservados

15

que se utiliza en cada momento, el resto permanece en el disco.

La realización de la memoria virtual no es fácil y si se usa sin cuidado puede hacer decrecer apreciablemente el rendimiento global del sistema.Es normal desarrollarla como una extensión de la gestión de memoria mediante paginación.

• Protección, Intercambio (swapping), Compartición y Reubicación:Complementan las tres técnicas básicas.

� Fragmentación:Desaprovechamiento o desperdicio de memoria derivado del sistema de gestión empleado.

5. Funciones de un Sistema Operativo.5.2. Gestión de Memoria ( V )

Jerarquía de almacenamiento:

© 2010 Juan Carlos Cano Todos los derechos reservados

16

5. Funciones de un Sistema Operativo.5.3. Gestión de E/S.

• Caching:Consiste en almacenar en una caché temporal, de rápido acceso, los datos más frecuentes solicitados o enviados a un dispositivo de E/S.

• Buffering:Se utiliza un área de memoria como búfer, simulando un dispositivo o un periférico lógico, que hará de dispositivo intermedio entre el periférico real y el

© 2010 Juan Carlos Cano Todos los derechos reservados

17

periférico lógico, que hará de dispositivo intermedio entre el periférico real y el procesador. Esto evita que un periférico lento afecte al redimiento del ordenador.

• Spooling:Es el proceso mediante el cual el ordenador almacena durante un tiempo (muy breve) los datos que han de ser enviados a una impresora, antes de que se produzca la salida efectiva. Se genera una cola administrada mediante la técnica FIFO.

5. Funciones de un Sistema Operativo.5.4. Gestión de archivos ( I )

• Archivo:- A nivel de usuario:Objeto que representa la unidad lógica de almacenamiento de la información. Es referenciado por su nombre.- A nivel de sistema operativo:Colección de clusters (bloques, grupos o unidades de asignación).

© 2010 Juan Carlos Cano Todos los derechos reservados

18

• Atributos: nombre, tipo, tamaño, fecha de creación, fecha de modificación, propietario, permisos (lectura, escritura, ejecución), direcciones de la memoria secundaria donde está almacenado, etc.

• Operaciones: crear, abrir, leer, escribir, cerrar, borrar, consultar y modificar atributos, renombrar y copiar.

5. Funciones de un Sistema Operativo.5.4. Gestión de archivos ( II )

• Directorio:Es un tipo de archivo especial que contiene otros archivos y subdirectorios.

© 2010 Juan Carlos Cano Todos los derechos reservados

19

• Operaciones: crear, acceder, leer, salir, borrar, renombrar, añadir archivos/subdirectorios y eliminar archivos/subdirectorios.

5. Funciones de un Sistema Operativo.5.4. Gestión de archivos ( III )

• Sistema de Archivos:

- Estructuran la información guardada en una unidad de almacenamiento.Por ejemplo, en una partición de un disco duro.

- Cada sistema operativo utiliza su propio sistema de archivos.

- El tipo de sistema de archivos se determina en el proceso de formateo del disco.

© 2010 Juan Carlos Cano Todos los derechos reservados

20

- El tipo de sistema de archivos se determina en el proceso de formateo del disco.

- El sistema de archivos es responsable de la organización de los clusters, de modo que en ellos se puedan almacenar archivos y directorios. Mantiene un registro de:

- Clusters ocupados.- Clusters libres.- Clusters defectuosos.

5. Funciones de un Sistema Operativo.5.4. Gestión de archivos ( IV )

• Sistemas de Archivos habituales:

- Mundo Windows: FAT16, FAT32, NTFS

- Mundo Linux: ext2fs, ext3fs, ext4fs, ReiserFS, Reiser4

- Otros sistemas de archivos: CDFS, UDF, HFS, HFS+

© 2010 Juan Carlos Cano Todos los derechos reservados

21

• Actividad de ampliación:Para los dos primeros grupos investiga los siguientes aspectos:- Sistemas Operativos compatibles.- Tamaño máximo de las particiones.- Tamaño máximo de los archivos.- Longitud máxima a la hora de nombrar archivos.

5. Funciones de un Sistema Operativo.5.4. Gestión de archivos ( V )

• Jerarquía del Sistema de Archivos:

- La información que se almacena en el sistema de archivos suele tener estructura jerárquica (en forma de árbol).

- En Windows a cada medio de almacenamiento, incluyendo las particiones de los discos duros, le corresponde un árbol independiente, con una letra asociada del rango A: B: … X: Y: Z:

© 2010 Juan Carlos Cano Todos los derechos reservados

22

rango A: B: … X: Y: Z:El directorio raíz o principal se nota con A:\ , B:\ , … , Z:\

- En Unix / Linux todos los medios de almacenamiento se alojan en un árbol común, sin letra alguna asociada.El directorio raíz o principal se nota con /