Sistemas Operativos SENA – CEET, Distrito Capital ADSI Instructor: Ing. Espec. Javier V.aquiro
¿Que hace un Sistema Operativo? El SO “viste” a la “máquina desnuda” * * La “máquina desnuda” es el ordenador sin S.O 4º INFORMÁTICA
Definición de Sistema Operativo Un SO es un programa que se instala en el ordenador, Se inicia al encenderlo y se encarga de gestionar los recursos del sistema (tanto hardware como software) y de facilitar la comunicación del usuario con la máquina. 4º INFORMÁTICA
Funciones de un sistema Operativo Gestiona los recursos Presenta la interfaz de usuario Administra los archivos Administra las tareas
Funciones de los Sistemas Operativos Asignación de tiempo de CPU Control de recursos Control de entrada/salida Control de los errores y protección Interfaz con el usuario
Tipos de Sistemas Operativos Monotarea Multitarea Según la cantidad de tareas que realiza simultáneamente Según la cantidad de usuarios que lo pueden utilizar Monousuario Multiusuario Monopuesto Multipuesto Según la cantidad de equipos que son capaces de controlar 4º INFORMÁTICA
TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO Definición y objetivos del sistema operativo Estructura, componentes y servicios de un S.O Llamadas al sistema Procesos Ficheros Intérprete de comandos Distintas estructuras de S.O
Definición y objetivos de un S.O Un S.O es un Conjunto de programas que se encargan de: Ocultar toda la complejidad del hardware al programador Presenta un conjunto de funciones más fácil de programar que el hardware. ej: LEER BLOQUE DE FICHERO Presenta al usuario una máquina virtual Administrar los recursos de la máquina Asigna los recursos (procesadores, memorias, dispositivos de entrada/salida) de forma ordenada Lleva la cuenta de quién emplea los recursos, contabiliza su utilización y decide la concesión a diferentes programas o usuarios en caso de conflicto HD SO Aplicación
Estructura, componentes y servicios de un sistema operativo Dividido en módulos, cada uno con una función y una interfaz concreta Los programas de usuario se comunican con el S.O y requieren sus servicios mediante llamadas al sistema
Llamadas al sistema A cada llamada al sistema le corresponde un procedimiento que el programa de usuario puede llamar El procedimiento se encarga de iniciar la llamada al sistema (mediante un TRAP) Son distintas en cada sistema ej: count = read (file, buffer, nbytes);
Procesos Un Proceso es un Programa en Ejecución, el cual comprende las siguientes operaciones: Código ejecutable del programa Datos Pila del programa Contador de programa Puntero a la pila y otros registros Toda la información necesaria para ejecutar el programa Tabla de procesos Estructura en árbol de los procesos Señales uid A B C D E F
Archivos / usr soft Pepe Martín editor comp vi cc Para almacenar información Se agrupan en directorios Sistema de ficheros: Estructura jerarquizada Ruta absoluta y ruta relativa Mecanismo de protección / usr soft Pepe Martín editor comp vi cc
Archivos Ficheros especiales Descriptores de ficheros Tubos (pipes) A De bloques: para representar dispositivos de bloques De caracteres: para representar dispositivos de caracteres Descriptores de ficheros 0: entrada estándar 1: salida estándar 2: salida estándar de errores Tubos (pipes) tubo A B
Intérprete de comandos No es parte del S.O Constituye la interfaz entre el S.O y el usuario Un shell se arranca por cada usuario que entra en el sistema Por cada orden, el shell crea un proceso hijo Redirección de E/S y pipes: date > fichero sort < f1 > f2 cat f1 f2 f3 | sort > f4 Procesos en backgroung : &
Componentes del Sistema Operativo Administrador de procesos Crear y eliminar procesos Suspender y reanudar la ejecución de los procesos Proporcionar mecanismos: de sincronización para la comunicación para el manejo de bloqueos Administrador de la memoria principal Controlar las zonas de memoria utilizadas y quién las utiliza Decidir qué procesos se cargarán en memoria si queda espacio disponible Asignar y recuperar espacio
Componentes del Sistema Operativo Administrador del sistema de E/S Manejadores para dispositivos hardware específico Presentar una interfaz general con los manejadores Administrador de archivos Gestión del espacio en disco Gestión de ficheros (crear y borrar) Gestión de directorios Correspondencia entre archivos y almacenamiento secundario Gestión de copias de seguridad
Componentes del Sistema Operativo Sistema de protección Controlar el acceso a los recursos Sistema de comunicación Gestionar los accesos a la red Conexión a través de la red de los distintos procesadores Acceso a los recursos compartidos
Servicios del Sistema Operativo Los servicios son los suministrados por los componentes anteriores
Distintas Estructuras de Sistemas Operativos Sistemas monolíticos Sistemas en niveles Máquinas virtuales Modelo cliente-servidor
Sistemas Monolíticos No hay una estructura bien definida (1) Se dejan los parámetros de la llamada en lugares previamente definidos (ej:registros,pila) Se ejecuta la inst. TRAP (llamada al núcleo o llamada al supervisor) Cambia la máquina de modo usuario a modo privilegiado Transfiere el control al S.O (2) El S.O. determina el nº del servicio requerido, examinando los parámetros (3) El S.O. lee de la posición k un puntero al procedimiento que implementa la llamada y lo llama (4) Devuelve el control al programa de usuario No hay una estructura bien definida Conjunto de procedimientos Modo de funcionamiento Programa usuario Llamada al núcleo 4 1 2 3 Procedimiento de servicio Tabla de distribución
Sistemas monolíticos Arquitectura básica Ej: MS-DOS Procedimiento principal Procedimientos de servicio Procedimientos auxiliares
Sistemas en Niveles Jerarquía de niveles S.O. The (Dijkstra 1968) 5 4 asignación del procesador y multiprogramación Gestión de la memoria principal y secundaria Comunicación operador-procesos Gestión de Entrada/Salida Programas de usuario El operador 5 4 3 2 1
Máquinas virtuales Se separan: VM (Virtual Machine) hardware del 370 VM/370 CMS Llamadas al sistema Instrucciones de E/S Se separan: Multiprogramación Máquina virtual VM (Virtual Machine) Se ejecuta directamente sobre el hardware Ofrece varias máquinas virtuales CMS (conversational Monitor System) Cada máquina virtual puede tener cualquier S.O Tiene instrucciones normales para operaciones de E/S No es sencillo de simular
Modelo Cliente-Servidor Núcleo mínimo: Gestión de las comunicaciones entre clientes y servidores Acceso directo al hardware Servidor: Proceso que espera peticiones de los clientes Es sencilla la adaptación a sistemas distribuidos Cliente Cliente Servidor Servidor . . . . Servidor Núcleo Núcleo Cliente Núcleo Servidor Núcleo Servidor Núcleo Cliente Red de Comunicaciones
Funcionamiento del modelo C/S El proceso servidor comienza Se va a dormir en espera de una petición El proceso cliente comienza El cliente envía una petición El servidor procesa la petición El servidor se va de nuevo a dormir Ej de servicios que proporcionan los servidores: Hora del día Imprimir un fichero Leer o escribir en su sistema de ficheros Ejecutar una orden para el cliente en el sistema del servidor Dibujar algo en la pantalla servida por el servidor
Tipos de servidores Iterativos Concurrentes El servidor maneja la petición La petición del cliente puede ser atendida por el servidor en un tiempo conocido y corto Ej: Servidor de la hora Concurrentes El servidor invoca a otro proceso que da el servicio mientras el servidor duerme esperando otro cliente Arranca un nuevo proceso por cada cliente que llega No se sabe el tiempo que llevará servir la petición, ya que la cantidad de tiempo requerido, depende de la petición.
Tipos de Sistemas Operativos Sistema operativos por servicios
Principales Sistemas Operativos para PC´s Windows 3.1 Windows 95 Windows 98 Windows XP Windows vista Ubuntu 11 Mac OS 7 Mac OS 8 Mac OS 9 Mac OS X Windows Guadalinux Macintosh Linux Molinex Windows 7 Ordenadores Compañía Apple Distribución libre Licencia GNU Compañía Microsoft http://www.tecno12-18.com 4º INFORMÁTICA IES Diego Tortosa
Estructura de un Sistema Operativo
Control de la entrada/salida
Interfaz de usuario Interfaz de comandos Interfaz gráfica
MS DOS Procesador de comandos Interfaz de usuario Gestionar el sistema de interrupciones Tratar los errores Ejecutar los comandos internos del MS DOS
Windows Windows 3.1 Windows 3.11 Windows 95 y 98 Windows Millenium Windows 2000 y XP Windows Server Windows Vista Windows 7
UNIX Laboratorios Bell de A&T S. O. de propósito general Multiusuario e Interactivo Soporta multiprogramación y multiacceso
LINUX Desarrollado por Linus Torvald Funciona sobre plataformas Intel o Motorola Se estructura en: Núcleo o Kernel: Interactúa directamente con el hardware y reside permanentemente en memoria. Shell: Intérprete de comandos. Interfaz entre núcleo y usuario. Utilidades o programas de usuario.
Diferencias entre Windows y Linux Linux es gratuito No le afecta los Virus El operador de Linux es firefox. El de Windows es Explorer Los programas office en Linux tiene otro nombre (Open Office) Linux es mas rápido que Windows El PC se paga de distinta forma Interfax gráfica
LINUX Interfaz gráfica
S.O. en Dispositivos Móviles Kernel Middleware Entorno de ejecución de aplicación Interfaz de usuario
S.O. en Dispositivos Móviles Symbian Windows Mobile Android IPhone OS BlackBerry OS Palm OS