Introducción a los Sistemas Operativos

Slides:



Advertisements
Presentaciones similares
Sistema operativo Componentes de un sistema operativo
Advertisements

Estructura del sistema operativo
Introducción a los Sistemas Operativos
Introducción a los SOs.
Tema 8: Introducción a los SOs. Tema 8: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.), Introducción.
CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO
1/58 Introducción a los Sistemas Operativos SISTEMAS OPERATIVOS.
Elementos y tipos de sistemas operativos
ELEMENTO DE COMPETENCIA 3
Estructura del sistema operativo
Contenido Arranque del computador.
Generalidades. Introducción a los procesos
SISTEMAS OPERATIVOS Sistema de Archivos.
“Los Sistemas Operativos”

U.T. 11: Introducción A Las Bases De Datos
Computadora La computadora es una máquina capaz de realizar y controlar a gran velocidad cálculos y procesos complicados que requieren una toma rápida.
Sistemas Operativos.
EQUIPO No 3.
PRUEBA DIAGNÓSTICA GRADO SEXTO TECNOLOGÍA E INFORMÁTICA 1
Sistemas Operativos Unidad I Introducción.
Software Es intangible, existe como información, ideas, conceptos, símbolos, pero no ocupa un espacio físico, se podría decir que no tiene sustancia. Se.
Sistemas Operativos Ing. Jhonnathan Quintero V.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies,
DISPOSITIVOS DE E/S IU Colegio Mayor del Cauca Sistemas operativos Popayán, mayo de 2015.
Diseño Lógico de Sistemas Operativos MGS. CHRISTIAN ROSADO UNIDAD I INTRODUCCIÓN.
Diseño de Sistemas Operativos
ESTRUCTURA DE S.OPERATIVO
ESTRUCTURA DEL SISTEMA OPERATIVO INTEGRANTES: *CARBAJAL GONZALES, ESMERALDA *GONZALES CABRERA, MIRIAM *OTRIZ SARAVIA, KAREN.
ESTRUCTURA DE SISTEMAS OPERATIVOS  ESTRUCTURA MONOLÍTICA  ESTRUCTURA JERÁRQUICA  ESTRUCTURA MAQUINA VIRTUAL  ESTRUCTURA CLIENTE-SERVIDOR  ESTRUCTURA.
ESTRUCTURAS DE LOS SISTEMAS OPERATIVOS INTEGRANTES: -SIAS ALVAREZ -GUTIÉRREZ ROBLES -GELDRES HUAYCOCHEA.
Por su complejidad un sistema operativo debe ser, en su diseño, modularizado en varios componentes: a)Administración de procesos. b)Administración de.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS.
Tema: Componentes lógicos de un ordenador. Mediante el sistema de numeración binario, es decir, usando los dígitos 0 y 1. Lo único que transmite,
Estructura de Sistemas Operativos CAMPOS CHACALTANA, ANTHONY.
Estructura de los sistemas Operativos 1. Componentes de un sistema operativo  Administración de procesos  Administración de memoria  Subsistema de Entrada/Salida.
ESTRUCTURA DE SISTEMAS OPERATIVOS Carbajal Rojas karla.
SOA UMG Estructura del Sistema Operativo. Componentes de un Sistema Operativo Administración de procesos Administración de memoria Subsistema de Entrada/Salida.
Características de los Sistemas Operativos
1 TEMA 10. SISTEMAS OPERATIVOS DISTRIBUIDOS Introducción Hardware Software Aspectos de diseño.
Núcleo Lic. Gonzalo Pastor.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS CHACALIAZA BOZA MARGARET AMARLLY.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS POR: NAPA MAGALLANES KEIDY ELIANA. UNIVERSIDAD PRIVADA SAN JUAN BAUSTISTA FILIAL CHINCHA FACULTAD DE INGENIERÍAS.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS
Estructura de los SISTEMAS OPERATIVOS.
UNIVERSIDAD PRIVADA SAN JUAN BAUTISTA FILIAL CHINCHA ESCUELA PROFESIONAL DE INGENIERÍA DE COMPUTACIÓN Y SISTEMAS Por: Nestares Torres Luis Jesús Enrique.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS
Axcel Sting Anchante Mosayhuate.. Qué aspecto tienen los sistemas operativos por fuera (es decir, la interfaz con el programador), ha llegado el momento.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS CHACALIAZA BOZA MARGARET AMARLLY.
Estructura de Sistemas Operativos
SISTEMAS OPERATIVOS En el mundo de la informática se denomina sistema operativo al programa, o conjunto de ellos, que gestiona los recursos físicos de.
Estructura de los Sistemas Operativos
Ha llegado el momento de dar una mirada al interior de los Sistemas Operativos. En las siguientes secciones examinaremos cuatro estructuras distintas.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS - MENDOZA MOLINA ARIANA
SISTEMA OPERATIVO Un sistema operativo es un programa o conjunto de programas de un sistema informático que gestiona los recursos de Hardware y provee.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS. Estos sistemas no tienen una estructura definida, sino que son escritos como una colección de procedimientos donde.
Conjunto de programas contenidos en un núcleo o kernel que efectúan la gestión de los procesos básicos de un Sistema informático, y permite la normal.
Estructura de los Sistemas Operativos
Estructura de los Sistemas Operativos por: Omar Saravia Tasayco
ESTRUCTURA DE SISTEMAS OPERATIVOS MOSQUERA HERRERA CLAUDIA ANGELICA ANDROID WINDOWS APPLE LINUX.
Hilos de Procesamiento. Hilos Concepto Beneficios Hilos a nivel kérnel y a nivel usuario Modelos multihilos Hilos de Solaris 2 Hilos de Java.
Los sistemas operativos en el sistema informático
Transcripción de la presentación:

Introducción a los Sistemas Operativos

Los Sistemas Operativos son programas para la administración eficiente de los recursos del computador.

Tabla de Contenido i. Objetivos. 4 Problemas que Resuelve un SO 5 Introducción 9 Estructura del SO 25 Componentes 27 Llamadas al Sistema 39 Estructura de un SO 42 Máquinas Virtuales 49 Diseño e Implementación 52 Bibliografía 57

Objetivos de la Sesión Definir las funciones y objetivos de un SO

Problemas que Resuelve un SO

Problemas que resuelve un S.O. Un programa en ejecución es un conjunto de procesos en ejecución. Cómo sabe el proceso 2 que el proceso 1 ya terminó. Dado que 2 y 3 se pueden ejecutar en paralelo, ¿quién se ejecuta primero? Si 2 y 3 ya terminaron, ¿cómo se entera 4 de este suceso? 2 4 5 6 1 3

Problemas que resuelve un S.O. Los procesos requieren de recursos escasos para ser ejecutados, cada uno de los siguiente procesos se requiere la cantidad indicada de recursos. Ambos programas se ejecutan en paralelo. ¿en qué orden se debe de asignar los recursos a los proceso?. Considere que mientras un programa no termina, los procesos asociados no pueden soltar los recursos. Considere que una propiedad deseable de un SO es la multiprogramación. memoria P1 P2 P3 P4 Prog1 init 1 3 Prog2 init 2 4 5

Problemas que resuelve un S.O. El siguiente problema se denomina “el abrazo mortal” y se presenta cuando el μP no puede asignar un recurso compartido a un conjunto de procesos pendientes de terminar. Los recursos que podría liberar uno de los procesos cuando termine seria suficiente como para continuar los otros procesos y por lo tanto terminar. 4 2 2 4

INTRODUCCIÓN

Sistema Operativo Un Sistema Operativo es un programa que actúa como un intermediario entre el computador y el usuario. Consta de un conjunto de rutinas (algoritmos) para gestionar los recursos del computador, como son: el Procesador, la memoria, los Dispositivos de E/S y los archivos El Sistema Operativo: Es un administrador de los recursos del computador. Controla la ejecución de los programas de los usuarios. Controla por ejemplo el acceso concurrente a los recursos.

Sistema de Computo

Sistema de Computo El usuario. Puede ser una persona, una maquina u otro computador que quiere resolver un problema. Los Programas de Aplicación. Define la via por la cual los recursos de hardware pueden ser usados para resolver problemas. Bases de Datos, compiladores, editores, etc. El Sistema Operativo. Controla y coordina el uso de hardware entre varios programas de aplicación. El Hardware. Provee los recursos de computación básicos. CPU, Memoria, E/S.

Visión abstracta del sistema compilador ensamblador editor de texto ... base de datos Aplicaciones del sistema Sistema Operativo Hardware del computador usuario 1 2 3 n ...

Definiciones de Sistema Operativo Administrador de recursos: Gestión y asignación de recursos del computador Programa de control: Controla la ejecución de los programas de usuario y las operaciones de los dispositivos de E/S Núcleo: El único programa que ejecuta siempre (por debajo y anterior a cualquier otro programa) Máquina virtual: Extiende y enmascara la funcionalidad del hardware

Objetivos del Sistema Operativo Facilitar el uso al usuario (interfaz) Facilitar la programación al programador (máquina virtual extendida) Ejecutar programas eficientemente (gestor de recursos) Conveniencia. Proveer un medio ambiente al usuario para ejecutar sus programas. por ejemplo en computadoras personales. Eficiencia. Incrementar la productividad de los recursos de producción, como son: el HD del SC y el usuario del SC. por ejemplo en grandes sistema de computo

Servicios del SO como interfaz U/PC Creación de programas (editores, depuradores) Ejecución de programas (Carga las Instruciones en MP, inicializa los dispositivos) Acceso a dispositivos de E/S (cada uno requiere un conjunto peculiar de Instrucciones) Acceso controlado a los archivos (formato de los archivos y del medio de almacenamiento) Acceso al sistema (En sistemas compartidos) Detección y respuesta de errores (Internos y externos al hardware) Contabilidad, estadísticas (de uso y rendimiento)

Máquina Extendida/Controlador Los SO llevan a cabo dos funciones que en esencia no tienen relación. Máquina Extendida: La función del SO es presentar al usuario el equivalente de una máquina extendida o virtual que sea más fácil de programar que el hardware que hay por debajo. Controlador de recursos: La función del SO es controlar todas las piezas de un complejo sistema. Proporcionar una asignación ordenada y controlada de los procesadores, memoria, dispositivos de E/S para los varios programas que compiten por ellos.

Ejercicio 1 Cierto computador, dispone de un procesador, cada cierto tiempo llega un proceso y se pueden ejecutar según los tiempos presentados en la siguiente tabla. Calcule el tiempo el tiempo de término de los procesos, asumiendo que se ejecutan en secuencia. Calcule el tiempo de término, asumiendo que dos procesos se pueden ejecutar en paralelo. Proceso Tiempo Llegada Tiempo Servicio 1 3 2 6 5 4 9

Ejercicio 1

Modo dual de operación Compartir recursos Solución: El SO asegura que un programa no afectará a otro Solución: Mecanismo de protección hardware (bit) que permite, al menos, 2 modos de ejecución: usuario (1) y sistema (0). Instrucciones privilegiadas sólo posibles en modo sistema Cuando hay interrupción, trap o excepción, el hardware cambia a modo sistema

Modo dual de operación monitor usuario interrupción/fallo pasar a modo usuario

Protección por hardware E/S: siempre instrucciones privilegiadas, modo sistema Memoria: registros base y límite por programa accesos fuera originan un fallo de protección UCP: temporizador que interrumpe periódicamente para dar control al SO y que decida

Protección por hardware monitor tarea 1 tarea 2 256000 300040 registro base registro límite 420940

Arquitectura general del sistema Si las instrucciones de E/S son privilegiadas, ¿cómo ejecuta el usuario la E/S? Llamada al sistema: Método estándar de acceso a los servicios del SO El programa genera un trap (interrupción sw) Se salta a ejecutar la RTI (servicio del SO) y a la vez se cambia a modo sistema El SO verifica los parámetros, ejecuta la petición y devuelve control en la instrucción siguiente El SO oculta las llamadas al sistema en bibliotecas que se instalan con el SO

ESTRUCTURA.

Estructura del Sistema Operativo Componentes del sistema Llamadas al sistema Estructura de un sistema operativo Máquinas virtuales

1. COMPONENTES DEL SO

Componentes del SO Básicos: Gestor de procesos Gestor de memoria Gestor de E/S Gestor del almacenamiento secundario Servidores: Servidor de ficheros Servidor de protección y seguridad Servidor de comunicaciones por red Utilidades: Intérprete de mandatos Programas de sistema

1. Gestor de procesos Un proceso es un programa en ejecución Es la unidad que consume recursos: UCP, memoria, ficheros, etc. El SO gestionar lo siguiente de los procesos: Creación y destrucción Suspensión y reanudación Mecanismos de comunicación y sincronización Asignación de los recursos al proceso

2. Gestor de memoria Memoria: Vector enorme de palabras o bytes (direcciones) Compartida por UCP y dispositivos E/S Volátil: pierde su contenido sin alimentación El SO gestiona lo siguiente de la memoria: Qué partes están en uso y quién las está usando Qué procesos se deben cargar, y dónde Asigna y libera espacio cuando se requiere

3. Gestor de entrada/salida El gestor de E/S está formado por: Almacenamiento intermedio en memoria (caché) Manejadores genéricos, uno por cada clase de dispositivo Gestión individualizada por dispositivo existente El SO gestiona lo siguiente de la E/S: Traduce peticiones a formato de manejador Copia memoria de/hacia el controlador Controla transferencias por DMA

4. Gestión del almacenamiento secundario Dispositivos rápidos de E/S (discos) Vector enorme de “bloques” Almacenamiento no volátil Usado como respaldo de memoria principal El SO gestiona lo siguiente del almacenamiento secundario: Asignación y liberación de espacio Planificación de accesos a los discos

5. Servidor de ficheros y directorios Conjunto de información lógicamente relacionada Directorio: Fichero que contiene asociaciones entre nombres de fichero e identificadores internos del SO El SO gestiona lo siguiente de los ficheros: Creación y borrado de ficheros y directorios Primitivas para manipularlos Proyectar los ficheros en memoria Respaldar los ficheros en dispositivos no volátiles

6. Servidor de protección y seguridad I Controlar el acceso a los recursos por parte de los procesos (de los usuarios) El servidor de protección debe: Distinguir entre uso autorizado y no autorizado Especificar los controles de acceso a llevar a cabo Proporcionar métodos de control de acceso

6. Servidor de protección y seguridad II Proteger al sistema de un uso indebido (fraudulento) El servidor de seguridad debe: Autenticar a los usuarios Evitar amenazas al sistema (gusanos, virus, piratas, fuego, etc.) Evitar intercepción de comunicaciones (cifrado, canales seguros, etc.)

7. Servidor de comunicaciones Sistema en red o distribuido: Conjunto de procesadores que no comparten memoria Conectados mediante una red de comunicación El servidor de comunicaciones debe: Proporcionar mecanismos para comunicación local y remota entre procesos Para distintos tipos de redes (Ethernet, ATM, telefónica, etc.) Responsabilidad del SO: Resolución de nombres, enrutamiento, conexiones y control de flujo

8. Intérprete de mandatos Programa cuya función es obtener los mandatos del usuario y lanzar su ejecución Hay dos tipos básicos: Intérprete de mandatos en línea en modo texto, como el shell de UNIX y LINUX Interfaz gráfico de usuario, como el de Windows y X-Windows Puede haber múltiples intérpretes de mandatos sobre el mismo SO La visión del mismo SO cambia según el usuario (POSIX sobre Windows NT o Win32 sobre LINUX)

9. Programas de sistema Proporcionan un entorno adecuado para el desarrollo y ejecución de programas Son la visión del SO que tienen muchos usuarios, y no la de las llamadas al sistema Categorías: Manipulación de ficheros: copia, mover, ... Información de estado: monitores, ... Programación: compiladores, depuradores, … Carga y ejecución: cargador, … Comunicaciones: telnet, ftp, … Aplicaciones: servidores BD, navegadores, ...

2. LLAMADAS AL SISTEMA

Llamadas al sistema Interfaz entre aplicaciones y SO Con un trap o interrupción sw Acceso como función en los lenguajes (C, …) Paso de parámetros: En registros En memoria, se pasa la dirección en un registro En la pila y dejar que el SO los extraiga El SO se define por sus llamadas al sistema: Estándar POSIX en UNIX y LINUX Win32 en Windows NT

Paso de llamadas al sistema Programa de usuario 1 llamada al sistema usuario n Se ejecuta en modo NO privilegiado PRIVILEGIADO ... Tabla de RTI trap Control vuelve al programa de usuario 1 rutina de servicio Procesamiento de la interrupción

3. ESTRUCTURA DE UN SO

Sistemas monolíticos I Núcleo: Todo entre las llamadas al sistema y el hardware No dividido en módulos Interfaces y niveles de funcionalidad no separados Ej: Monitor o ejecutivo (MS-DOS) Escritos para funcionalidad específica y gestionar hardware reducido Monoproceso

Sistemas monolíticos II Intérprete de mandatos Programas de sistema Llamadas al sistema POSIX Win32 Núcleo Servidores Ficheros Memoria Protección Comunicaciones Manejadores Teclado Ratón Disco Programas de usuario

Sistemas modulares I Núcleo: Dividido en módulos con funcionalidad e interfaces claramente definidos Modular y estructurado Se pueden sustituir componentes por otros con el mismo interfaz (manejadores, sistemas de ficheros, ...) Un único trap, el proceso existe en dos modos Ej: UNIX, LINUX Muchas funcionalidades Multiproceso y multiusuario

Ficheros Memoria Protección Comunicaciones Sistemas modulares II Núcleo Intérprete de mandatos Programas de sistema Llamadas al sistema POSIX Win32 Programas de usuario Manejadores Teclado Ratón Disco Servidores Ficheros Memoria Protección Comunicaciones

Sistemas por capas Núcleo: Dividido en múltiples niveles, capas de una cebolla El más alto la interfaz de llamadas Cada nivel usa únicamente servicios del inferior y da servicio al superior Comunicación entre capas vía traps Ej: THE, Multics Problema: Una llamada puede necesitar varios niveles de traps

Sistemas con micronúcleo Reducido a las funcionalidades mínimas imprescindibles Se sacan fuera del núcleo los demás servicios Comunicación vía paso de mensajes Servidores: Hilos de ejecución independiente Los más altos ofrecen la interfaz de llamadas Los más bajos gestionan el hardware Problema: Una llamada puede necesitar muchos mensajes Ventaja: Piezas separables, paso a SO Distribuido Ej: MINIX, Mach (Windows-NT)

4. MAQUINAS VIRTUALES

Máquinas virtuales I Una MV crea una copia idéntica del hardware Procesador con su propia memoria y E/S Sobre una MV se puede ejecutar cualquier SO Sobre el mismo computador varios SSOO a la vez El Monitor de MVs ejecuta sobre el HW real ¿Cómo se hace? Planificación UCP para MV  multiproceso Spooling y sistema ficheros  multiplexación E/S MV del operador  control del sistema Ventajas: Protección sencilla, muy modular, bueno para investigación y desarrollo (SO distribuido) Inconvenientes: Difícil compartir recursos Difícil implementar duplicados exactos del HW Usado para emular SSOO sobre otros Ej. VM-370, MS-DOS en Windows, VMware

Monitor de máquinas virtuales Máquinas virtuales II Hardware desnudo Monitor de máquinas virtuales CMS MS-DOS OS/2 Llamadas al sistema Instrucciones de E/S trap 370 virtual

DISEÑO E IMPLEMENTACION.

Aspectos de Diseño e Implem. Objetivos de diseño Implementación Arranque del sistema

Objetivos de diseño de un SO Para el usuario: Fácil de usar, fiable, seguro, potente y sencillo Internamente: Fácil de implementar y mantener Flexible, fiable, eficiente y estar libre de errores Diferenciar claramente entre: Mecanismos: qué cosas se pueden hacer Políticas: criterio para decidir qué hacer Separarlos es importante para poder afinar bien los sistemas

Implementación del sistema Tradicionalmente: ensamblador Actualmente: C y ensamblador Uso lenguaje alto nivel: Desarrollo más rápido Más fácil de comprender y depurar Más fácil de transportar de un hardware a otro (Ej. UNIX, Linux, Windows-NT) Base: HAL (Hardware Abstraction Layer) Oculta los detalles específicos de la arquitectura Proporciona una interfaz de alto nivel

Arranque del sistema Cargador ROM Carga y ejecuta el MRB Master Record Boot (sector de arranque) Carga y ejecuta el ejecutable del SO Ejecutable del SO Inicializa el núcleo Arranca e inicializa los manejadores de los dispositivos existentes Crea el primer proceso (PID==1) init. Proceso init Ejecuta scripts del nivel (rc.#) Se lanzan los servidores Sigue el guión inittab Crea un proceso login por terminal Proceso login Autentifica el acceso de usuarios al sistema Crea un shell (intérprete de mandatos)

BIBLIOGRAFIA Sistemas Operativos, 2da Edición (1997) William Stallings, Prentice Hall España Sistemas Operativos, conceptos fundamentales , 3ra. Edición (1994) A. Silberschatz, J. Peterson, P. Galvin, Addison-Wesley Publishing Company USA Sistemas Operativos, 2da Edición (1993), H. M. Deitel, Addison-Wesley Publishing Company USA