Arqui_compu(clase 19)Sistemas Operativos.pdf

16
1 Arquitectura de Computadoras Clase 19 SOPORTE DEL SISTEMA OPERATIVO Definición Es una programa (o conjunto de programas que administran los recursos del Computador, proporciona servicios a los programadores y planifica la ejecución de los otros programas Es un programa o conjunto de programas) que controla la ejecución de los programas de aplicación y actúa como interfaz entre el usuario y el hardware del computador

Transcript of Arqui_compu(clase 19)Sistemas Operativos.pdf

Page 1: Arqui_compu(clase 19)Sistemas Operativos.pdf

1

Arquitectura de Computadoras

Clase 19

SOPORTE DEL

SISTEMA OPERATIVO

Definición

�Es una programa (o conjunto de programas que administran los recursos del Computador, proporciona servicios a los programadores y planifica la ejecución de los otros programas

�Es un programa o conjunto de programas) que controla la ejecución de los programas de aplicación y actúa como interfaz entre el usuario y el hardware del computador

Page 2: Arqui_compu(clase 19)Sistemas Operativos.pdf

2

Objetivos y Funciones

�Comodidad

�Hace que el computador sea facil de usar

�Eficiencia

�Permite que los recursos del computador se utilicen en forma eficiente

Capas y puntos de vista de un computador

Page 3: Arqui_compu(clase 19)Sistemas Operativos.pdf

3

Servicios de Sistema Operativo

�Creación de programas

�Ejecución de programas

�Acceso a los dispositivos de E/S

�Acceso controlado de archivos

�Acceso al Sistema

�Detección y respuesta de errores

�Contabilidad – estadisticas de uso de recursos

Sistemas operativos

�Funciona de la misma manera que el software normal de un computador.

�Es un programa ejecutado por el procesador.

�El sistema operativo abandona el control del procesador para ejecutar otros programas.

Page 4: Arqui_compu(clase 19)Sistemas Operativos.pdf

4

Sistema Operativo como adminstrador de recursos

�Un computador es un conjunto de recursos para transferir, almacenar y para procesar datos y para controlar estas funciones.

�El S.O. es el encargado de administrar dichos recursos.

�El S.O. toma el control de las funciones básicas del computador

�El S.O. cede el control para que el CPU realice el trabajo util y recupera el control para preparar el siguiente trabajo.

Sistema Operativo como administrador de recursos

Page 5: Arqui_compu(clase 19)Sistemas Operativos.pdf

5

Núcleo

� Parte del sistema operativo que se encuentra en la memoria principal.

� Incluye las funciones utilizadas con más frecuencia.

� También denominado kernel.

Tipos de Sistemas Opertivos

�Primera dimensión

�Interactivo

�Sistema de colas (Batch)

�Segunda dimensión�Uni-programación

�Multi-programación (Multi-tasking)

Page 6: Arqui_compu(clase 19)Sistemas Operativos.pdf

6

Tipos de Sistemas Operativos

Sistema de Colas Interactivo

Una Tarea en Cada Instante

Simple Sistema dedicado

Multi-programado Sofisticado Tiempo compartido

Un solo programa

Antes de continuar, el procesador debe esperar hasta que la instrucción de E/S termine.

Page 7: Arqui_compu(clase 19)Sistemas Operativos.pdf

7

Multi programacón con dos programas

Cuando un trabajo necesite esperar una E/S, el procesador puede cambiar al otro trabajo.

Planificación

�Es la clave de la multiprogramación

� A Alto Nivel – decide si se añade al conjunto de programas a ser ejecutados

�A corto plazo: Decide cual de los procesos disponibles ejecutará el procesador

�E/S: Se decide que solicitud de E/S pendiente se va a atender

Page 8: Arqui_compu(clase 19)Sistemas Operativos.pdf

8

Planificación

�Concepto de Proceso

�Un programa en ejecución

�El espiritu animado de un programa.

� Una instancia de un programafuncionando en un computador.

� Una unidad de actividad caracterizada porun sencillo tratamiento de ejecuciónsecuencial, un estado actual, y asociada a un conjunto de recursos del sistema

Gestión de Memoria

�Sistema Uni-programación� La Memoria principal se divide en dos partes� Una para el Sistema Operativo (monitor)� Una para el programa en ejecución

�Sistema Multiprogramación� La parte para el usuario debe subdividirse para

dar cabida a los distintos usuarios.� La tarea de sub-división la realiza dinámicamente

el S.O. y se conoce como gestión de memoria� La memoria debe de asignarse eficientemente

para situar en memoria tantos procesos como sea posible.

Page 9: Arqui_compu(clase 19)Sistemas Operativos.pdf

9

Swapping (Intercambio)

Swapping (Intercambio)

� Problema: Las operaciones de E/S son lentas comparadas con el CPU, frecuentemente en sistemas con Multiprogramación el CPU puede estar parado la mayor parte del tiempo

� Soluciones:

� Incrementar la Memoria Principal

�Memoria Principal es cara

�La necesidad de memoria de los Programas a subido

� Swapping (Intercambio)

Page 10: Arqui_compu(clase 19)Sistemas Operativos.pdf

10

Que es el Swapping

�Larga cola de procesos en Disco

�Los procesos son intercambiados en los espacios disponibles

�Los procesos son sacados al terminar

�Si el proceso está parado ( en espera de E/S)

�Los procesos son sacados a una cola intermedia

�Se trae otro proceso de la cola o acepta un nuevo proceso

�El intercambio es un proceso de E/S

Particiones

�La memoria se divide en partes para ubicar los procesos (Incluyendo al Sistema Operativo)

� Tamaño de las particiones

�Cada partición tiene un tamaño fijo

�No todas las particiones tienen el mismo tamaño

�Posibilidad de particiones de tamaño variable.

Page 11: Arqui_compu(clase 19)Sistemas Operativos.pdf

11

Particiones

�Dirección Logica: Indica la posición relativa al inicio del Programa.

� Dirección Fisica: Posición actual en la memoria principal.

DefiniendoParticiones

Page 12: Arqui_compu(clase 19)Sistemas Operativos.pdf

12

Paginación

� La memoria se divide en trozos iguales y de tamaño fijo y relativamente pequeños

� Igualmente los programas tambien se dividen en trozos pequeños - páginas

� Se asigna el numero requerido de paginas a los programas

� El S.O mantiene una lista de página libres

� Los procesos no requiere que las paginas sean continuas

� El sistema mantiene una tabla de paginas por cada proceso.

Direcciones físicas y logicas de las paginas

Page 13: Arqui_compu(clase 19)Sistemas Operativos.pdf

13

Direcciones físicas y logicas de las paginas

Memoria virtual

� Permite a los programas direccionar la memoria desde un punto de vista lógico.

� No existirá un espacio muerto entre la ejecución de los procesos sucesivos, mientras un proceso se envía al almacenamiento secundario y el proceso que le sucede es traído de éste.

Page 14: Arqui_compu(clase 19)Sistemas Operativos.pdf

14

Memoria Virtual

� Paginación por demanda

�No requiere que todas las paginas de un proceso esten en memoria

� Pone en memoria las solo las paginas que se necesitan

� Fallo de página

�Una página requerida no está en memoria

� El S.O. debe traer la página requerida

�Se requiere sacar las páginas no requeridas

�Selecciona la pagina a sacar empleando información historica

Estructura de la tabla de pagina

Page 15: Arqui_compu(clase 19)Sistemas Operativos.pdf

15

Segmentación

�La paginación no es (usualmente) visible para el programador

�La segmentación es visible para el programador

�Proporciona una forma de organizar en areas separadas de instrucciones y datos

�Son de tamaño variable.

Elementos principales de un sistema operativo

Sistema operativo

Cola a corto plazo

Cola de E/S

Cola a largo plazo

Planificador a corto plazo

(código)

Gestor de interrupcio

nes (código)

Gestor de peticiones de

servicio (código)

Interrupción de un

procesoInterrupción de E/S

Petición de servicio de un

proceso

Pasar el control al proceso

Elementos clave para la multiprogramación de un sistema operativo.

Page 16: Arqui_compu(clase 19)Sistemas Operativos.pdf

16

UNIX

� El hardware están rodeado por el software del sistema operativo.

� El sistema operativo se llama núcleo (kernel).

� Está equipado con varios servicios e interfaces:� Intérprete de órdenes (shell).

� Compilador de C.

UNIX

Arquitectura general de UNIX.

Bibliotecas y órdenes UNIX

Núcleo

Aplicaciones escritas

Interfaz de llamadas al

sistema

Hardware

por el usuario