Introducción al sistema operativo básico PDF
Document Details
Uploaded by Zapata
Universidad Interamericana de Puerto Rico
Tags
Summary
Este documento presenta los conceptos básicos de los sistemas operativos. Se describe la función de un sistema operativo como intermediario entre el usuario y el hardware, así como sus objetivos y componentes. Incluye una visión general de diferentes tipos de sistemas operativos, como mainframe, sistemas de escritorio, y sistemas distribuidos.
Full Transcript
Machine Translated by Google Introducción al sistema operativo básico Conceptos Machine Translated by Google Introducción ¿Qué es un sistema operativo? Sistemas...
Machine Translated by Google Introducción al sistema operativo básico Conceptos Machine Translated by Google Introducción ¿Qué es un sistema operativo? Sistemas mainframe Sistemas de escritorio Sistemas multiprocesador Sistemas distribuidos Sistemas en clúster Sistemas en tiempo real Sistemas portátiles Entornos informáticos Machine Translated by Google ¿Qué es un sistema operativo? Un programa que actúa como intermediario entre el usuario de una computadora y el hardware de la computadora. Objetivos del sistema operativo: Ejecutar programas de usuario y facilitar la resolución de problemas. Problemas más fáciles. Hacer que el sistema informático sea cómodo de utilizar. Utilizar el hardware de la computadora de manera eficiente. manera. Machine Translated by Google ¿Qué es SO? Los sistemas informáticos normalmente contienen: Hardware y software Hardware : dispositivos electrónicos, mecánicos y ópticos. Software – programas Sin software de soporte, la computadora es de poca utilidad.. Machine Translated by Google ¿Qué es SO? Una interfaz entre el hardware y el usuario Programas Una abstracción del hardware para todos los procesos (de usuario) Oculte la complejidad del hardware subyacente y brinde una mejor usuario vista de la computadora. => ¡IMPRESCINDIBLE! Machine Translated by Google Sistema informático Componentes 1. Hardware: proporciona recursos informáticos básicos (CPU, memoria, dispositivos de E/S). 2. Sistema operativo: controla y coordina el uso del hardware entre los distintos programas de aplicación para los distintos usuarios. 3. Programas de aplicación: definen las formas en que se utilizan los recursos del sistema para resolver los problemas informáticos de los usuarios (compiladores, sistemas de bases de datos, videojuegos, programas de negocios). 4. Usuarios (personas, máquinas, otras computadoras). Machine Translated by Google Visión abstracta del sistema Componentes Machine Translated by Google El sistema operativo aplicaciones servicios públicos software sistemas software Sistema operativo componentes de hardware dispositivo dispositivo...... dispositivo componentes de hardware UPC memoria Machine Translated by Google Definiciones de sistemas operativos Asignador de recursos: administra y asigna recursos. Programa de control: controla la ejecución de los programas de usuario y las operaciones de los dispositivos de E/S. Kernel: el único programa que se ejecuta en todo momento (todos los demás son programas de aplicación). Machine Translated by Google Los objetivos de un sistema operativo Permitir que los usuarios ejecuten programas: Corrección Límites de memoria, prioridades, estado estable Conveniencia El usuario no debe manipular los pequeños detalles (encapsular/abstraer), proporcionar primitivas de sincronización, llamadas del sistema, sistema de archivos, herramientas Machine Translated by Google Los objetivos de un sistema operativo Permitir a los usuarios ejecutar programas: Eficiencia Utilización de recursos, uso compartido de recursos, Multitarea Equidad (en la asignación de recursos) Entre: usuarios, tareas, recursos El equilibrio entre eficiencia y equ Machine Translated by Google Un sistema operativo es un asignador de recursos Mamá dice: ¡Es bueno compartir! Varios usuarios (?) obtienen todos los recursos informáticos "simultáneamente": Tiempo de CPU Memoria (ram, swap, conjunto de trabajo, virtual,..) Sistema de archivos (espacio de almacenamiento) Dispositivos de E/S (pantalla, impresoras, ratón,...) Reloj El sistema operativo debe dar a cada usuario la ilusión de que está obteniendo todos los recursos para sí mismo (¡sin compartirlos!). Machine Translated by Google ¿Qué hace un sistema operativo para ganarse la vida? bucle para siempre { ejecuta el proceso por un tiempo. detiene el proceso y guarda su estado. carga el estado de otro proceso. } Machine Translated by Google Continuidad virtual Un proceso puede ser "activado" o "conmutado". afuera. El sistema operativo debe dar la ilusión de que el proceso existe en la CPU de forma continua. => Cambio de contexto Machine Translated by Google Cambio de contexto Cuando ocurre un evento, el sistema operativo guarda el estado del proceso y restaura el estado activo del nuevo proceso. Este mecanismo se llama cambio de contexto. ¿Qué es lo que debe salvarse? Todo lo que pueda pasar a continuación dañará el proceso o. Por ejemplo: Contador de programas (PC) Palabra de estado del programa (PSW ) Registros de CPU (propósito general, punto flotante) Puntero(s) de acceso a archivos Memoria ( tal vez ?) Machine Translated by Google Programación y cambio de contexto Un proceso puede ceder la CPU: A. realizando E/S (por ejemplo, getchar()) B. ingresando a un estado de espera (por ejemplo, semáforo) C. ingresando a un estado suspendido (por ejemplo, sleep()) Renunciar a la CPU == cambiar el proceso actual + cambiar a otro proceso Machine Translated by Google Programación preventiva Hay sistemas operativos en los que se fuerza a un proceso a ceder la CPU (por ejemplo, cuando permanece en uso durante demasiado tiempo). Estos sistemas están implementando una política de “ programación preventiva”. Los ejemplos incluyen Windows NT, Unix, ¡PERO NO Windows anteriores a Win95! o Macintosh. ¿Qué? ¿Debería un sistema en tiempo real implementar una programación preventiva? Machine Translated by Google Uso de prioridades La mayoría de los sistemas operativos proporcionan el mecanismo de prioridad Las prioridades están asociadas con los procesos Las prioridades se utilizan para ayudar al sistema operativo a alcanzar la equidad ¿Puedes pensar en procesos (por ejemplo, en Windows) a los que les darías una prioridad especialmente alta/baja? Machine Translated by Google Proceso Un proceso es un programa en ejecución. Los componentes de un proceso son: el programa que se va a ejecutar, los datos en los que se ejecutará el programa, los recursos requeridos por el programa (como memoria y archivo(s)) y el estado de la ejecución. Machine Translated by Google Entrelazado de procesos Procesos subsiguientes Procesos paralelos A do D B eje Tiempo Machine Translated by Google Sistemas mainframe Reducir el tiempo de configuración agrupando trabajos similares Secuenciación automática de trabajos: transfiere automáticamente el control de un trabajo a otro. Primer sistema operativo rudimentario. Monitor residente control inicial en el monitor el control se transfiere al trabajo cuando se completa el trabajo, el control se transfiere al paquete monitor Machine Translated by Google Disposición de la memoria para un lote simple Sistema Machine Translated by Google Lote multiprogramado Sistemas Varios trabajos se mantienen en la memoria principal al mismo tiempo y la CPU se multiplexa entre ellos. Machine Translated by Google Características del sistema operativo necesarias para Multiprogramación Rutina de E/S suministrada por el sistema. Gestión de memoria: el sistema debe asignar la memoria a varios trabajos. Programación de la CPU: el sistema debe elegir entre varios trabajos listos para correr. Asignación de dispositivos. Machine Translated by Google Sistemas de tiempo compartido interactivos Computación La CPU se multiplexa entre varios trabajos que se guardan en la memoria y en el disco (la CPU se asigna a un trabajo solo si el trabajo está en la memoria). Un trabajo se intercambia dentro y fuera de la memoria hacia el disco. Se proporciona comunicación en línea entre el usuario y el sistema; cuando el sistema operativo finaliza la ejecución de un comando, busca la siguiente "declaración de control" del teclado del usuario. El sistema en línea debe estar disponible para que los usuarios puedan acceder a los datos y al código. Machine Translated by Google Sistemas de escritorio Computadoras personales – sistema informático dedicado a un solo usuario. Dispositivos de E/S: teclados, ratones, pantallas de visualización, impresoras pequeñas. Comodidad y capacidad de respuesta para el usuario. Puede adoptar tecnología desarrollada para empresas más grandes. Sistema operativo: a menudo, las personas solo utilizan la computadora y no necesitan una utilización avanzada de la CPU ni funciones de protección. Puede ejecutar varios tipos diferentes de sistemas operativos Windows MacOS UNIX Linux Machine Translated by Google Sistemas paralelos Sistemas multiprocesador con más de una CPU en estrecha comunicación. Sistema estrechamenteacoplado – Los procesadores comparten memoria y un reloj; la comunicación generalmente se realiza a través de la memoria compartida. Ventajas del sistema paralelo: Aumento Rendimiento Económico Mayor confiabilidad degradación elegante sistemas de protección contra fallos Machine Translated by Google Sistemas paralelos (cont.) Multiprocesamiento simétrico (ESCUELA SECUNDARIA) Cada procesador ejecuta una copia idéntica del sistema operativo. sistema. Muchos procesos pueden ejecutarse a la vez sin que se deteriore el rendimiento. La mayoría de los sistemas operativos modernos admiten SMP Multiprocesamiento asimétrico A cada procesador se le asigna una tarea específica; el procesador maestro programa y asigna trabajo a los procesadores esclavos. Más común en sistemas extremadamente grandes Machine Translated by Google Multiprocesamiento simétrico Arquitectura Machine Translated by Google Sistemas distribuidos Distribuir el cálculo entre varios procesadores físicos. Sistema débilmente acoplado – cada procesador tiene su propio local memoria; los procesadores se comunican entre sí a través de varias líneas de comunicación, como buses de alta velocidad o líneas telefónicas. Ventajas de los sistemas distribuidos. Uso compartido de recursos Aumento de la velocidad de cálculo: distribución de carga Confiabilidad Comunicaciones Machine Translated by Google Sistemas distribuidos (cont.) Requiere infraestructura de red. Redes de área local (LAN) o redes de área amplia (WAN) Pueden ser sistemas clienteservidor o punto a punto. Machine Translated by Google Estructura general del Cliente Servidor Machine Translated by Google Sistemas agrupados La agrupación en clústeres permite que dos o más sistemas compartan almacenamiento. Proporciona alta confiabilidad. Agrupamiento asimétrico :un servidor se ejecuta la aplicación mientras otros servidores están en espera. Agrupamiento simétrico :todos los hosts N son ejecutando la aplicación. Machine Translated by Google Sistemas en tiempo real A menudo se utiliza como dispositivo de control en una aplicación dedicada, como el control de experimentos científicos, sistemas de imágenes médicas, sistemas de control industrial y algunos sistemas de visualización. Restricciones de tiempo fijo bien definidas. Los sistemas de tiempo real pueden ser en duro o suave tiempo real. Machine Translated by Google Sistemas en tiempo real (cont.) Tiempo real estricto: Almacenamiento secundario limitado o ausente, datos almacenados en memoria de corto plazo o memoria de solo lectura (ROM) Conflictos con sistemas de tiempo compartido, no soportados por sistemas operativos de propósito general. Tiempo real suave Utilidad limitada en el control industrial de la robótica. Útil en aplicaciones (multimedia, virtuales, realidad) que requieren características avanzadas del sistema operativo. Machine Translated by Google Sistemas portátiles Asistentes digitales personales (PDA) Teléfonos celulares Problemas: Memoria limitada Procesadores lentos Pantallas pequeñas. Machine Translated by Google Migración del sistema operativo Conceptos y características Machine Translated by Google Entornos informáticos Computación tradicional Computación basada en la Web Computación integrada Machine Translated by Google El sistema operativo PCXINU Vamos a rellenar los trozos...