Overview de Sistemas Operativos

Slides:



Advertisements
Presentaciones similares
Capítulo I Gestión de E/S 1.- Gestión de E/S 2.- Hardware de E/S 3.- Software de E/S.
Advertisements

Sistemas operativos Prof. Alberto Rivas.
Arquitectura de Sistema de E/S
Definición Objetivos Funciones de un S.O.
CARACTERISTICAS, CLASES, EJEMPLOS
Dr. Joseabel Cegarra Núcleo LUZ-COL
UNIX COMP 240.
Sistema operativo Componentes de un sistema operativo
Estructura de un Sistema Operativo
Tema: INTRODUCCIÓN CONCEPTOS BÁSICOS.
Profesor: Jennyfer Briceño SISTEMAS OPERATIVOS I.
Sistemas en estratos. Descripción: se organiza en una jerarquía de estratos, estando construido cada uno de ellos sobre el otro que tiene menor jerarquía.
Introducción al software
Modelo de procesos de dos estados
Estructuras en Sistemas Operativos
Johanna Lizeth Rodríguez Lorena Fda. Chávarro Ramos
Mejoras a las Máquinas Von Neumann
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS
ConceptoDefiniciónCaracterísticas (palabra clave) Ejemplo/Aplicación Sistema operativo Un sistema operativo es un software, es decir, forma parte de la.
Introducción a los SSOO Sebastián Sánchez Prieto.
Elemento Lógico (Software)
HILOS Y COMUNICACIÓN ENTRE PROCESOS
Unidad 7 Entrada/Salida
Software Sistemas Operativos
Tecnología de la información Unidad: 3 El software Profesor: Fernando J. Martini.
Administración de Memoria Memoria Virtual
Overview Sistemas Computacionales
SISTEMA OPERATIVO Un sistema operativo es un programa que actúa como intermediario entre el usuario y el hardware de un computador y su propósito es proporcionar.
SISTEMAS OPERATIVOS.
Programación I MC José Andrés Vázquez Flores
Características de un sistema operativo
Introducción a los Sistemas Operativos
SISTEMAS OPERATIVOS.
FUNDAMENTOS TECNOLÓGICOS DE INFORMACIÓN
Gestión de procesos Sistemas Operativos Edwin Morales
TEMA 10. SISTEMAS OPERATIVOS DISTRIBUIDOS
Estructuras en Sistemas Operativos DAISY KATERINE RODRÍGUEZ.
1 Descripción y control de procesos Capítulo 3. 2 Requerimientos de un SO relacionados con procesos Ejecutar concurrentemente múltiples procesos para.
Introducción a los Sistemas Operativos
UNIVERSIDAD LATINA. I. TEORIA DE 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.
Integrante: Yohandry Cueto Carnet: # Contenido Kernel Linux Limitaciones del Kernel Linux Kernel Mach Que es Hurd Arquitectura Ventajas Distribuciones.
CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO
W w w. i n a c a p. c l FUNDAMENTOS DE SISTEMAS OPERATIVOS LUIS ALEJANDRO PACHECO TORO.
Sistemas Operativos Oscar Bedoya
Estructura de los Sistemas Operativos
Clasificación y estructura. Alejandra Rivero Esteban
INTRODUCCION A SISTEMAS OPERATIVOS
Sistemas de Archivos Sistemas Operativos.  Se debe proporcionar un almacenamiento secundario que respalda a la memoria principal  El Sistema de archivos.
Sistemas Operativos.
Estructura del Sistemas Operativos por su Estructura
HISTORIA DE LOS SISTEMAS OPERATIVOS
Cinvestav-IPN, Sección de Computación, Mexico
Licenciatura Tecnologías de la Información y Comunicación
FUNDAMENTOS TECNOLÓGICOS DE INFORMACIÓN
Elementos y tipos de sistemas operativos
DOCENTE: DAISY KATERINE RODRÍGUEZ DURÁN. CONTENIDO TEMÁTICO SISTEMAS OPERATIVOS PAQUETES INTEGRADOS DE OFICINA PROCESOS Y PROCEDIMIIENTOS DE UNIDAD ADMINISTRATIVA.
SISTEMAS OPERATIVOS Son un conjunto de programas destinados a permitir la comunicación entre el usuario y en computador y gestionar sus recursos.
Funciones principales!
UNIDAD I INTRODUCCION A LOS S.O.
Estructuras en Sistemas Operativos DAISY KATERINE RODRÍGUEZ.
ELEMENTO DE COMPETENCIA 3
Historia de los sistemas operativos. Los Sistemas Operativos han sufrido una serie de cambios revolucionarios llamados generaciones. Hay cuatro generaciones:
Evelin Ramos Cabrera 1° B
El Sistema Operativo es el software básico necesario para el funcionamiento de cualquier ordenador Los Sistemas Operativos están en continua evolución.
CAPITULO III El Sistema Operativo (OS)
Diccionario/Directorio de Datos
Estructura del sistema operativo
1/50 Ing. Gerardo Chávez Malpartida Administración de Memoria SISTEMAS OPERATIVOS.
Transcripción de la presentación:

Overview de Sistemas Operativos Capítulo 2

Un Sistema Operativo Un programa que controla la ejecución de programas de aplicación Una interface entre las aplicaciones y el hardware Objetivos Conveniencia: Un SO hace que el uso de un computador sea más conveniente Eficiencia: Un SO permite que los recursos de un computador sean usados eficientemente Habilidad de evolucionar: Un SO debiera permitir desarrollar, probar e implantar nuevas funcionalidades sin interferir con la prestación de otros servicios

Representación en capas de un sistema computacional

Servicios que presta un SO Desarrollo de programas Editores, depuradores, profilers Ejecución de programas Acceso a dispositivos de I/O Acceso controlado a archivos Acceso al sistema Detección y manejo de errores Hardware Software Permisos Contabilidad Estadísticas de uso de los recursos por los usuarios Monitore del rendimiento del sistema

El SO como un administrador de recursos Responsable de la administracion de recursos Funciona de la misma forma que otros programas del sistema, es decir es un programa que se ejecuta en el procesador El SO libera el control del procesador cuando no está en ejecución Luego, el SO depende del procesador (apoyo de hardware) para volver a tomar el control del procesador

Kernel Porción del SO que siempre está en memoria principal Contiene las funciones del SO más usadas También se le llama Núcleo

Evolución de los SOs Procesamiento serial (1940-1950) Interacción directa con el hardware No existe un SO propiamente tal Lectores de tarjetas, luces de status y error, switches, impresoras, etc Problemas Scheduling de programas (jobs) Tiempo desperdiciado en setup: carga del compilador, carga del programa fuente, almacenamiento del programa compilado, linkeo con librerias, etc

Evolución de SOs Sistemas batch: la idea es minimizar los tiempos de scheduling y setup Monitores Software que controla la sequencia de eventos Procesamiento serial de jobs (uno tras de otro) Cada programa usuario programado de tal forma que al finalizar su ejecucion, retorne el control al monitor JCL (Job Control Language) Tipo especial de lenguaje que instruye al monitor a realizar ciertas tareas Que compilador cargar, que datos usar, etv

Característica de Hardware Los SO batch introdujieron necesidades de hardware Protección de memoria No permitir que el programa en ejecucion altere el contenido del monitor Timer Previene que un job monopolice el sistema Instrucciones privilegiadas Garantiza que ciertas instrucciones de máquina sean ejecutadas sólo por el monitor Interrupciones Los conceptos de protección de memoria e instrucciones privilegiadas dieron origen al concepto de modos de operación Modo usuario Modo kernel o privilegiado

Sistemas batch Uniprogramados SO batch uniprogramados son altamente ineficientes El procesador debe esperar hasta que las operaciones de I/O terminen

Sistemas batch multiprogramados Cuando un job necesita esperar por el término de una operación de I/O, el procesador puede ejecutar algún otro job

Ejemplo

Histogramas de utilización de recursos

Requerimientos de hardware Manejo de interrupciones DMA Administración de memoria Scheduling de jobs

Sistemas de tiempo compartido (time sharing) Así, como en sistemas batch multiprogramados, el procesador es compartido por varios jobs, en sistemas de tiempo compartido, el procesador es compartido entre usuarios. Incluye procesos batch y procesos interactivos Usuarios múltiples accesan el sistema a través de terminales El procesador es asignado a cada proceso usuario por un quantum de tiempo

Compatible Time-Sharing System (CTSS) Primer sistema de tiempo compartido desarrollado en el MIT

Aportes importantes por los SO Procesos Administración de memoria Seguridad y protección de la información Administración de recursos y scheduling Estructura de los SOs Principios y abstracciones

Procesos Un programa en ejecución Una instancia de un programa corriendo en un computador La entidad que puede ser asignada y ejecutada por un procesador Una unidad de actividad caracterizada por un hebra secuencial de ejecución, un estado actual, y un conjunto asociado de recursos del sistema Consiste de cuatro componentes principales Un programa ejecutable Datos Contexto de ejecución o estado del procesos: toda la información requerida por el SO para administrar el proceso Stack (del usuario)

Proceso

Administración de memoria Aislamiento de los procesos Administración y procuramiento automático Apoyar programación modular Protección y control de acceso Almacenamiento de largo plazo

Memoria virtual Permite a los programas direccionar la memoria desde un punto de vista lógico y despreocuparse de la memoria física disponible Permite mantener varios procesos en memoria y asi evitar demoras en carga y descarga de procesos

Paginación Particiona los procesos (y la memoria física) en un número de bloques de tamaño físico fijo llmados páginas Los procesos emiten direcciones virtuales compuestas de un número de página y un offset dentro de dicha página Las páginas pueden ser almacenadas en cualquier parte de la memoria El sistema de paginación también mapea la dirección virtual a una dirección física o real

Memoria virtual

Direccionamiento en memoria virtual

Protección y seguridad de la información Los SO deben proveer mecanismos de seguridad en los siguientes aspectos Disponibilidad Proteger al sistema contra interrupciones al servicio Confidencialidad Asegurar que los usuarios no puedan leer datos no autorizados Integridad de datos Asegurar que los usuarios no modifiquen datos sin autorización debida Autenticidad Relacionado con la verificación de la identidad de los usuarios y la validez de los mensajes o datos

Scheduling y administracion de recursos Factores a considerar Equitatividad Dar acceso similar a todos los recursos Respuesta diferencial Discriminar entre distintas clases de jobs Eficiencia Maximizar throughput, minimizar tiempo de respuesta y servir el mayor número posible de usuarios

Estructura del SO Una forma de organizar un SO es como una serie de niveles o capas Cada capa es responsable de prestar ciertos servicios relacionados (mismo nivel de abstracción, misma escala de tiempo) Idelamente, los cambios en un nivel no implican cambios en los otros niveles

Ejemplo de niveles: niveles cercanos al Hwd Nivel 1: circuitos electrónicos Registros, celdas de memoria, puertas lógicas, etc. Operaciones tales como borrar un registro, leer una dirección de memoria Nivel 2: Instrucciones de máquina Operaciones individuales permitidas por el lenguaje de máquina Nivel 3: Procedimientos Implementa el concepto de procedimiento o subrutina Uso de stack Nivel 4: Interrupciones Guardar contexto del proceso y llamar rutinas encargadas de manejar las interrupciones

Ejemplo de niveles: conceptos de Multiprogramación Nivel 5: Proceso básico o primitivo El proceso como un programa en ejecución Suspensión y reanudación de procesos Mecanismos básicos de sincronización, como semáforos Nivel 6: Operaciones básicas de almacenamiento secundario Transferencia de bloques de datos Nivel 7: Memoria virtual Implementa un espacio de direccionamiento lógico para los procesos Páginas, segmentos e híbridos

Ejemplo de niveles: objetos externos Nivel 8: Comunicación entre procesos Pipes, colas de mensajes Nivel 9: Sistema de archivos Implementa almacenamiento de largo plazo de archivos con nombre Nivel 10: Dispositivos externos Provee acceso a dispositivos externos usando una interfaz estándar Nivel 11: Directorios Responsible por mantener la asociación entre identificadores externos e internos Nivel 12: Proceso usuario Implementa soporte completo para procesos Nivel 13: Shell Provee una interface entre el usuario y el SO

Conceptos de SO modernos Arquitectura microkernel Asigna sólo funciones esenciales al kernel Espacio de direcciones Comunicación entre procesos Scheduling básico Otros servicios son prestados por procesos servidores que corren en modo usuario o no privilegiado Estos procesos son vistos por el microkernel como un proceso más en el sistema Nota: Un kernel monolítico implementaría todos los servicios típicos de un SO y generalmente correria como un solo proceso Programación multihebras El proceso se ejecuta en varias hebras que corren concurrentemente Hebra Unidad de trabajo que se despacha en el procesador Se ejecuta secuencialmente y es interrumpible Un procesos es una collección de una o más hebras y sus recursos asociados

Conceptos de SO modernos Multiprocesamiento simétrico (SMP) Varios procesadores comparten memoria principal y facilidades de I/O Todos los procesadores pueden realizar todas las tareas En particular, el SO puede correr en cualquiera de los procesadores y asignar procesos usuarios a cualquiera de los procesadores Beneficios de SMP Rendimiento: paralelismo (versus concurrencia) Disponibilidad: la falla de un procesador no detiene al sistema Escalabilidad SO distribuido Permite que un conjunto de computadores se comporten como un sistema unificado No es lo mismo que SO de red