Introduccin a los Sistemas Industriales IS Mdulo 3

  • Slides: 47
Download presentation
Introducción a los Sistemas Industriales (IS) Módulo 3: Sistemas Operativos Tarea 3. 1: Componentes,

Introducción a los Sistemas Industriales (IS) Módulo 3: Sistemas Operativos Tarea 3. 1: Componentes, funciones básicas y estructura de los OS. A. Petrov, PU, Dep. ECIT Operating Systems – Task 3_1 1

Objetivos • • • Definición, clasificación y componentes principales Gestión de recursos Cooperación y

Objetivos • • • Definición, clasificación y componentes principales Gestión de recursos Cooperación y procesos concurrentes Manipulación bloqueo mutuo Redes Seguridad y confiabilidad Operating Systems – Task 3_1 2

Definición y funciones básicas q Un sistema operativo (OS) es un programa informático que

Definición y funciones básicas q Un sistema operativo (OS) es un programa informático que gestiona los recursos de hardware y de software de un ordenador [4]. q Un OS realiza tareas básicas tales como el control y la asignación de memoria, dando prioridad a las solicitudes del sistema, el control de los dispositivos de entrada y de salida, facilitando la creación de redes, y la gestión de archivos. q También puede proporcionar una interfaz gráfica de usuario para funciones de nivel superior q Se forma una plataforma para otro software del sistema y para el software de aplicación. Operating Systems – Task 3_1 3

Sistemas Operativos – gestión de recursos Aplicaciones Lector de disco Administrador I/O Drivers dispositivos

Sistemas Operativos – gestión de recursos Aplicaciones Lector de disco Administrador I/O Drivers dispositivos Sistema operativo Administrador de memoria Ratón Monitor Administrador de CPU Hardware Teclado Impresora Operating Systems – Task 3_1 4

Clasificación de OS q Multiusuario OS: Permite que dos o más usuarios puedan ejecutar

Clasificación de OS q Multiusuario OS: Permite que dos o más usuarios puedan ejecutar programas al mismo tiempo. Algunos sistemas operativos permiten cientos o incluso miles de usuarios simultáneos. q Multiproceso OS: Soporta la ejecución un programa en más de una CPU. q Multitarea OS: Permite que más de un programa se ejecute simultáneamente. q Multilectura OS: Permite que diferentes partes de un solo programa se ejecute al mismo tiempo. q Tiempo real OS: Responde a una entrada al instante. Los sistemas operativos de uso general, como DOS y UNIX, no son en tiempo real. q Red OS (NOS) y Distribuida OS (DOS) (ver trea de formación 3_2) Operating Systems – Task 3_1 5

Estructuras OS q q q q Componentes del sistema Servicios del sistema operativo Llamadas

Estructuras OS q q q q Componentes del sistema Servicios del sistema operativo Llamadas del Sistema Programas del Sistema Estructure del Sistema Máquinas Virtuales Diseño e Implementación del Sistema Operating Systems – Task 3_1 6

Componentes Comunes de los OS q Proceso Administrador q Memoria Principal Administrador q Almacenamiento

Componentes Comunes de los OS q Proceso Administrador q Memoria Principal Administrador q Almacenamiento Secundario Administrador q I/O Sistema Administrador q Archivo Administrador q Protección Sistema q Red generaliza el acceso a la red q Interpretación de comandos Sistema – interfaz entre el usuario y el OS Operating Systems – Task 3_1 7

La gestión de procesos • El proceso no es un programa, sólo es un

La gestión de procesos • El proceso no es un programa, sólo es un instante de un programa: un proceso es la unidad de trabajo en un sistema. • Las cinco actividas principales de un OS en la gestión de procesos son: – – – Creación y eliminación de los procesos de usuario y del sistema. Suspensión y reanudación de procesos. Un mecanismo para la sincronización del proceso. Un mecanismo para la comunicación del proceso. Un mecanismo para el manejo del bloqueo. • En la arquitectura de von Neumann sólo se podía ejecutar un proceso en la CPU. En los nuevos OS se permite la ejecución simultánea de varios procesos a la vez a través de la multitarea, incluso con una sola CPU • Como la mayoría de las computadoras tienen un procesador de un núcleo, la multitarea se realiza mediante cambios rápidos en los procesos. Operating Systems – Task 3_1 8

Estado de proceso • El estado del proceso consiste al menos en lo siguiente:

Estado de proceso • El estado del proceso consiste al menos en lo siguiente: – Código para el programa. – Datos estáticos del Programa. – Datos dinámicos del Programa. – Pila de llamadas de procedimiento del Programa. – Contenido de registros de uso general. – Contenido del contador de programa (PC) – Contenido del texto de estado del programa (PSW). – El contenido del texto del estado del programa. • Un subproceso es una actividad dentro de un proceso [4]. Operating Systems – Task 3_1 9

Multitarea de los OS (1) • Un proceso ocupa una cierta cantidad de memoria

Multitarea de los OS (1) • Un proceso ocupa una cierta cantidad de memoria RAM. También hace uso de registros, pilas y listas dentro de la CPU y espacio de memoria del sistema operativo. • Ejemplo: – Cuando dos procesos están en multi-tarea, el sistema operativo asigna un cierto número de ciclos de ejecución de la CPU para cada programa. – Después de un número de ciclos, el sistema operativo hace copias de todos los registros, pilas y listas utilizadas por los procesos, y señala el punto en el que el proceso se detuvo en su ejecución. – A continuación, carga todos los registros, pilas y listas utilizados por el segundo proceso y permite un cierto número de ciclos de la CPU. – Cuando estos están completos, hace copias de todos los registros, pilas y listas utilizadas por el segundo programa, y carga el primer programa. Operating Systems – Task 3_1 10

Multitarea de los OS (2) • La multitarea es el proceso de dejar que

Multitarea de los OS (2) • La multitarea es el proceso de dejar que el sistema operativo realice varias tareas simultaneamente. • En SMP (sistemas de multiprocesamiento con Procesador simétrico) este es el caso, ya que hay varios programas en ejecución en la CPU. En sistemas con una sola CPU se hace cambiando la ejecución muy rápidamente entre cada programa, por lo que da la impresión de ejecución simultánea. Este proceso también se conoce como tarea de conmutación o tiempo compartido. Prácticamente todos los sistemas operativos modernos tiene esta capacidad. • La multitarea se da en las máquinas con un solo procesador, implementada para dejar que el proceso que se ejecuta en la CPU por un tiempo (una porción de tiempo) y cuando sea necesario se reemplaza con otro proceso, que a su vez es propietaria de la CPU. • Los dos métodos más comunes para compartir el tiempo de CPU es multitarea cooperativa o multitarea preventiva[12]. Operating Systems – Task 3_1 11

Trabajo tarea única • La CPU tiene que esperar para la ejecución de la

Trabajo tarea única • La CPU tiene que esperar para la ejecución de la instrucción de Entrada / Salida para completar la instrucción anterior. Operating Systems – Task 3_1 12

Trabajo de multitarea • Cuando una tarea está a la espera para la operación

Trabajo de multitarea • Cuando una tarea está a la espera para la operación de Entrada / Salida, la CPU puede cambiar a otra tarea. 2 Trabajo tarea 3 Trabajo tarea Operating Systems – Task 3_1 13

Multitarea en OS (3) Multitarea Proceso Operating Systems – Task 3_1 14

Multitarea en OS (3) Multitarea Proceso Operating Systems – Task 3_1 14

Multiproceso OS • En un sistema con dos o más CPU, el OS tiene

Multiproceso OS • En un sistema con dos o más CPU, el OS tiene que dividir la carga de trabajo entre las CPUs, tratando de equilibrar las demandas de los procesos necesarias con los ciclos disponibles sobre las diferentes CPUs. • OS asimétrico utiliza una CPU para sus propias necesidades y divide los procesos de aplicación entre las CPUs restante. • OS simétrico se dividen entre las diversas CPUs, equilibrando la demanda disponible de la CPU incluso cuando el sistema operativo es lo único que se está ejecutando. Operating Systems – Task 3_1 15

Multiproceso OS (disponible) • Multiproceso simétrico (SMP) – Cada procesador ejecuta y copia idénticamente

Multiproceso OS (disponible) • Multiproceso simétrico (SMP) – Cada procesador ejecuta y copia idénticamente el sistema operativo. – Muchos procesos se pueden ejecutar a la vez sin que disminuya el rendimiento. – La mayoría de los sistemas operativos modernos soportan SMP • Multiproceso simétrico – A cada procesador se le asigna una tarea específica, el control de horarios de procesador y asigna trabajo a otros procesadores. – Más común en los sistemas muy grandes Operating Systems – Task 3_1 16

Multiproceso OS (continuación) Asimétrico Simétrico Operating Systems – Task 3_1 17

Multiproceso OS (continuación) Asimétrico Simétrico Operating Systems – Task 3_1 17

¿Qué es un bloqueo mutuo? • Un bloqueo mutuo es una situación en la

¿Qué es un bloqueo mutuo? • Un bloqueo mutuo es una situación en la que dos o más acciones en competencia están a la espera una hasta el final de la otra, por lo que ninguno de los dos lo hace [4]. Se ve a menudo en una paradoja como 'el huevo o la gallina '. • El bloqueo mutuo en el mundo de la informática se refiere a una condición específica cuando dos o más procesos están cada uno a la espera del otro para liberar un recurso, o cuando más de dos procesos están esperando por los recursos en una cadena circular. • Bloqueo mutuo es un problema común en multiprocesamiento donde muchos procesos comparten un tipo específico de recurso mutuamente excluyentes conocido como un software o bloqueo suave. Operating Systems – Task 3_1 18

Condiciones necesarias para que se produzca un bloqueo mutuo • Mutua condición de exclusión:

Condiciones necesarias para que se produzca un bloqueo mutuo • Mutua condición de exclusión: un recurso está ya asignado a un proceso que está disponible • Mantener y esperar condiciones: los procesos de mantenimiento de recursos podrán solicitar nuevos recursos • Ninguna condición de preferencia: sólo un proceso que mantiene un recurso puede liberarlo. • Condición circular de espera: dos o más procesos forman una cadena circular, cuando cada proceso espera un recurso que el siguiente proceso en la cadena tiene • bloqueo mutuo sólo se produce en los sistemas donde se producen las 4 condiciones. Operating Systems – Task 3_1 19

Tratar con bloqueo mútuo 3 métodos para tratar con bloqueos mútuos: – – 1.

Tratar con bloqueo mútuo 3 métodos para tratar con bloqueos mútuos: – – 1. Prevención - asignar recursos en el inicio. Los bloqueos mutuos pueden prevenirse asegurando que se dan al menos una de las siguientes cuatro condiciones (ver más abajo) * 2. Evitar - Sólo hace las asignaciones "seguras" – a. Algoritmo de Banker limita el uso de los recursos que se conocen de antemano. Sin embargo, para muchos sistemas es imposible. Esto significa que la prevención de bloqueo mutuo es a menudo imposible. – b. Otros dos algoritmos son Wait/Die y Wound/Wait, utilizan una técnica de ruptura de simetría. En estos dos algoritmos existe un proceso más antiguo (O) y un proceso más joven (Y). La edad del proceso se puede determinar mediante una marca de tiempo en el momento de la creación del proceso. Las marcas de tiempo menores son procesos más antiguos, mientras que las marcas de tiempo mayores representan procesos más jóvenes. – 3. Detección/Recuperación –realiza la búsqueda de ciclos de espera para los gráficos, y luego deshacer, rehacer, adelanto, etc. Operating Systems – Task 3_1 20

Gestión de la memoria principal Hay dos tareas generales que deberán realizarse[6]: 1. Cada

Gestión de la memoria principal Hay dos tareas generales que deberán realizarse[6]: 1. Cada proceso debe tener suficiente memoria en el que se ejecuta, no puede funcionar en el espacio de memoria de otro proceso ni se ejecutará por otro proceso. 2. Los diferentes tipos de memoria en el sistema se deben utilizar adecuadamente de modo que cada proceso pueda ejecutarse más eficazmente. La primera tarea que requiere el sistema operativo para configurar los límites de memoria en los tipos de software y para aplicaciones individuales. Algunas de las actividades en conexión con la administración de memoria que son manejados por el sistema operativo : – – – Mantiene un registro de qué partes de la memoria se están utilizando actualmente y por quién Decidir qué procesos cargar cuando el espacio de memoria está disponible. Asignar y desasignar espacio de memoria necesario. Operating Systems – Task 3_1 21

Gestión de Almacenamiento Secundario • La mayoría de los equipos modernos usan discos como

Gestión de Almacenamiento Secundario • La mayoría de los equipos modernos usan discos como el principal medio de almacenamiento en línea, tanto para los programas como para los datos. • Debido a que el almacenamiento secundario se utiliza frecuentemente, debe ser utilizado eficientemente, sino se produce un cuello de botella de procesamiento • El sistema operativo es responsable de las siguientes actividades relacionadas con la administración de discos: – La gestión del espacio libre – La asignación de almacenamiento – La programación disco Operating Systems – Task 3_1 22

Gestión de archivos • Un archivo es una colección de información relacionada definida por

Gestión de archivos • Un archivo es una colección de información relacionada definida por su creador. Comunmente, los archivos representan programas (tanto formas fuente y objeto) y datos. • El sistema operativo es responsable de las siguientes actividades en conexión con la administración de archivos: – Creación y eliminación del archivo. – Creación y eliminación de directorios. – Apoyo de primitivas para manipular archivos y directorios. – Cartografía de archivos en el almacenamiento secundario. – Copia de seguridad del archivo de medios de almacenamiento estables. • Nuevos OS como Windows XP / Vista / 7 support nueva tabla de asignación de archivos tipo – NTFS, que es más eficiente para discos grandes que los mayores FAT 32 Operating Systems – Task 3_1 23

Gestor de archivos de entrada / salida • Ocultar las peculiaridades de los dispositivos

Gestor de archivos de entrada / salida • Ocultar las peculiaridades de los dispositivos de hardware específicos del usuario • El sistema de Entrada / Salida se compone de: – Un componente de gestión de memoria que incluye buffering, el almacenamiento en caché y la cola de impresión. – Una interfaz general del controlador del dispositivo. – Controladores para los dispositivos hardware específicos. Operating Systems – Task 3_1 24

Interfaz de Usuario • Una interfaz de Usuario (UI) da la estructura de la

Interfaz de Usuario • Una interfaz de Usuario (UI) da la estructura de la interacción entre un usuario y el ordenador. En la última década, la más popular es la interfaz gráfica de usuario(GUI), dos modelos, Apple's Macintosh y Microsoft's Windows [1, 3]. • El popular, sistema operativo de ódigo abierto, Linux, también es compatible con una interfaz gráfica de usuario. • Unix, por ejemplo, tiene interfaces de usuario llamados conchas que presentan una interfaz de usuario más flexible y potente que el sistema operativo estándar de interfaz basada en texto. • También existen interfaces gráficas de usuario, como por ejemplo X-Windows y Gnome, que hacen que Unix y Linux más parecidos a ordenadores con Windows y Macintosh desde el punto de vista del usuario. Operating Systems – Task 3_1 25

Sistema de Comando-Intérprete • Sirve como la interfaz entre el usuario y el sistema

Sistema de Comando-Intérprete • Sirve como la interfaz entre el usuario y el sistema operativo Fácil de usar, el medio ambiente en Macintosh y Microsoft Windows – En MS-DOS y UNIX, los comandos se escriben en el teclado y se muestran por pantalla o impresora • Muchas órdenes se dan en el sistema operativo por sentencias de control que se ocupan de: – – – – Creación y gestión de procesos Manipulación de Entrada/Salida Gestión de almacenamiento secundario Gestión de la memoria principal Acceso al sistema de archivos Protección Red Operating Systems – Task 3_1 26

Llamadas al sistema • Las llamadas al sistema proporcionan la interfaz entre un programa

Llamadas al sistema • Las llamadas al sistema proporcionan la interfaz entre un programa en ejecución y el sistema operativo. Por ejemplo: – Archivo de entrada abierto, crean el archivo de salida. – Generalmente disponible como rutinas escritas en C y C++ – Ciertas tareas de bajo nivel (acceso directo al hardware) pueden ser escritas en languaje ensamblador • Sobre todo es muy usada por los programas a través de un alto nivel Application Program Interface (API) en lugar de utilizar directamente la llamada al sistema: – Proporciona la portabilidad (hardware subyacente manejado por el sistema operativo) – Oculta los detalles del programador Las tres APIs más usadas con: Win 32 API para Windows, POSIX API para sistemas basados en POSIX- (incluyendo prácticamente todas las versiones de UNIX, Linux, y Mac OS X), y Java API para la máquina virtual Java (JVM) 27 Operating Systems – Task 3_1

Ejemplo de llamadas al sistema • Secuencia de llamadas del sistema para copiar el

Ejemplo de llamadas al sistema • Secuencia de llamadas del sistema para copiar el contenido de un archivo a otro Operating Systems – Task 3_1 28

Ejemplo de una norma API • Considere la función en el Archivode. Lectura() •

Ejemplo de una norma API • Considere la función en el Archivode. Lectura() • Win 32 una función para la lectura de un archivo Una descripción de los parámetros pasados a Archivode. Lectura() – – – HANDLE file—archivo para ser leido LPVOID buffer—un buffer, donde los datos se leen y se escriben DWORD bytes. To. Read—el número de bytes que se lee en el buffer LPDWORD bytes. Read—el número de bytes leídos durante la última lectura LPOVERLAPPED ovl—indica si se está utilizando E / S Operating Systems – Task 3_1 29

Implementación del sistema de llamada • Normalmente un número asociado a cada llamada de

Implementación del sistema de llamada • Normalmente un número asociado a cada llamada de sistema – Interfaz del sistema llamada mantiene una tabla indexada de acuerdo a estos números • La interfaz del sistema de llamada invoca una llamada al sistema previsto en OS kernel y devuelve el estado de la llamada al sistema y los valores de retorno • El emisor no necesita saber nada sobre cómo se implementa la llamada al sistema – Sólo tiene que obedecer a API y entender lo que va a hacer el OS como resultado de una llamada – La mayoría de los detalles de la interfaz del programador OS ocultos por API Gestionado por la biblioteca de compatibilidad de tiempo de ejecución (conjunto de 30 funciones incorporadas en las bibliotecas que se incluye con compilador) Operating Systems – Task 3_1

API – Sistema de Llamada – OS Relación Operating Systems – Task 3_1 31

API – Sistema de Llamada – OS Relación Operating Systems – Task 3_1 31

Ejemplo de Librería stándart en C • Programa C invocando printf () llamada de

Ejemplo de Librería stándart en C • Programa C invocando printf () llamada de la biblioteca, que llama a write () llamada al sistema Operating Systems – Task 3_1 32

Tipos de Llamadas del Sistema • Control del proceso – final, abortar, cargar, ejecutar,

Tipos de Llamadas del Sistema • Control del proceso – final, abortar, cargar, ejecutar, asignar memoria libre • Gestión de archivos – Crear, eliminar, abrir, cerrar, leer, escribir el archivo • Gestión de dispositivos – Solicitar/desbloquear, leer, escribir • Mantenimiento de Información – obtener / establecer los datos del sistema • Comunicaciones – Enviar / recibir mensajes, crear / eliminar comunicador Operating Systems – Task 3_1 33

Programas del Sistema • Los programas del sistema proporcionan un entorno adecuado para el

Programas del Sistema • Los programas del sistema proporcionan un entorno adecuado para el desarrollo y ejecución del programa. Se pueden dividir en : – – – La manipulación de archivos Información de estado (fecha, hora, número de usuarios, memoria libre etc. ) Modificación del archivo (editor de texto) Apoyo al lenguaje de programación (compiladores, ensambladores, etc) Carga y ejecución del programa (cargadores, vinculación editores) Comunicaciones (crea conexiones virtuales entre procesos, usuarios y diferentes sistemas informáticos) – Utilidades del sistema o programas de aplicación (navegadores web, procesamiento de textos, hojas de cálculo, etc) • La mayoria de los usuarios ven el OS definido por el sistema de programas, no por el actual sistema de llamadas. Operating Systems – Task 3_1 34

Implementación del Sistema • Tradicionalmente escrito en lenguaje ensamblador, OS ahora se puede escribir

Implementación del Sistema • Tradicionalmente escrito en lenguaje ensamblador, OS ahora se puede escribir en lenguajes de alto nivel *. • El código escrito en un lenguaje de alto nivel : – se puede escribir más rápido. – es más compacto. – es más fácil de entender y depurar. • Los oponentes a los OSs en lenguaje de alto nivel se quejan por un bajo rendiemiento y un incremento de consumo en almacenaje de datos. • Sus defensores sostienen: –Los compiladores modernos pueden producir códigos altamente optimizados. –Hoy en día sistemas operativos se ejecutan en hardware muy complejo que puede saturar el programador con detalles. –Mejora las estructuras de datos y algoritmos, mejora el rendimiento de sistemas operativos –Sólo una pequeña cantidad de código es crítica para alto rendimiento – los cuellos de botella pueden ser reemplazados con código de ensamblador más adelante • Un sistema operativo es mucho más fácil de transportar(mover a algún otro hardware) si está escrito en un lenguaje de alto nivel. 35 Operating Systems – Task 3_1

Estructura del Sistema Operativo • MS-DOS – escrito para proporcionar la mayor funcionalidad en

Estructura del Sistema Operativo • MS-DOS – escrito para proporcionar la mayor funcionalidad en el menor espacio – No muy bien dividido en módulos – Diseñado sin esperar tanta popularidad – Aunque MS-DOS tiene una estructura, sus interfaces y niveles de funcionalidad no están bien separados – Vulnerable a fallos del sistema cuando un usuario del programa falla – Escrito para Intel 8088, que no tenía doble núcleo ni protección de hardware MS-DOS layer structure Operating Systems – Task 3_1 36

Estructura del sistema UNIX kernel Operating Systems – Task 3_1 37

Estructura del sistema UNIX kernel Operating Systems – Task 3_1 37

Máquinas virtuales • Una máquina virtual tiene el enfoque por capas conclusión lógica. Se

Máquinas virtuales • Una máquina virtual tiene el enfoque por capas conclusión lógica. Se trata de hardware y sistema operativo kernel como si fueran todo el hardware • Una máquina virtual proporciona una interfaz idéntica a la del hardware simple • El sistema operativo crea la ilusión de múltiples procesos, cada uno en la ejecución de su propio procesador con su propia memoria (virtual) Operating Systems – Task 3_1 38

Máquinas Virtuales (Cont. ) • Los recursos de la computadora física son compartidos para

Máquinas Virtuales (Cont. ) • Los recursos de la computadora física son compartidos para crear las máquinas virtuales – La programación de la CPU puede crear la apariencia de que los usuarios tienen su propio procesador – Una cola de impresión y un sistema de archivos se pueden ofrecer a los lectores de tarjetas virtuales e impresoras de líneas virtuales – Un terminal de tiempo compartido sirve al usuario como consola del operador de la máquina virtual Operating Systems – Task 3_1 39

Máquina Virtual (Cont. ) Non-virtual Machine Virtual Machine (a) máquina no virtual (b) máquina

Máquina Virtual (Cont. ) Non-virtual Machine Virtual Machine (a) máquina no virtual (b) máquina virtual Operating Systems – Task 3_1 40

Máquina Virtual Java Operating Systems – Task 3_1 41

Máquina Virtual Java Operating Systems – Task 3_1 41

Memoria Virtual (VM) A. Definición – Es una técnica de optimización, ejecutada por el

Memoria Virtual (VM) A. Definición – Es una técnica de optimización, ejecutada por el sistema operativo con el fin de dar a un programa en uso la impresión de que tiene más memoria de la que realmente tiene. OS utilizan un programa llamado Administrador de memoria virtual (VMM) para administrar la VM. n B. Como trabaja VM – VMM crea un archivo de paginación (archivo de intercambio) en el disco duro que contiene la memoria adicional que necesita el sistema operativo. Cada vez que el sistema operativo necesita un "bloque" de la memoria que no está en la memoria real (RAM), la VMM toma un bloque de la RAM de acuerdo con un determinado algoritmo, escribe en el archivo de paginación, y luego lee el bloque de memoria que el sistema operativo necesita del archivo de paginación. El VMM toma entonces el bloque de memoria del archivo de paginación, y lo mueve en la memoria real - en lugar del anterior bloque. Este proceso se llama intercambio o paginación. n C. Algoritmos de sustitución de páginas n n n 1. FIFO, 2. Optimal, 3. LRU, 4. LFU, 5. By randomly D. Ventajas de VM 1. Permite la ejecución de los procesos de grandes. 2. Mejora la eficiencia de la multiprogramación. 3. Libera a los programadores de un cuidado de la memoria. n La memoria virtual se implementa mediante varios sistemas operativos como Windows, Mac OS X, y Linux. Operating Systems – Task 3_1 42

Protección y Seguridad • Protección - Un mecanismo para controlar el acceso de los

Protección y Seguridad • Protección - Un mecanismo para controlar el acceso de los procesos o usuarios a los recursos definidos por el sistema operativo • Seguridad – defiende el sistema contra ataques internos y externos – Gran variedad, incluyendo ataques de denegación de servicio, gusanos, virus, robo de identidad, robo de servicio • Los sistemas generalmente primero distinguen entre los usuarios, para determinar quién puede hacer qué – Identidades de usuario (ID de usuario, ID de seguridad) incluyen el nombre y número de asociado, uno por usuario – ID de usuario a continuación, se asocia con todos los archivos y procesos de este usuario para determinar el control de acceso – Identificador de grupo (ID de grupo) permite que un conjunto de usuarios que está definido y controla la gestión, entonces también se asocia con cada proceso y archivo – Una escala de privilegios permite al usuario cambiar de ID efectivo con 43 más derechos Operating Systems – Task 3_1

Seguridad (continuación) • La seguridad se basa en las dos ideas que: – El

Seguridad (continuación) • La seguridad se basa en las dos ideas que: – El sistema operativo proporciona acceso a una serie de recursos, – El sistema operativo es capaz de distinguir entre algunos solicitantes • Seguridad interna – puede considerarse como la protección de los recursos del ordenador de los programas, al mismo tiempo que se ejecutan en el sistema. • Seguridad externa – Típicamente una oferta de sistemas operativos (hosts) varios servicios a los otros equipos conectados en red y a los usuarios, tales como el intercambio de archivos, servicios de impresión, correo electrónico, sitios web, y los protocolos de transferencia de archivos. – La primera línea de la seguridad son dispositivos de hardware conocidos como cortafuegos. Operating Systems – Task 3_1 44

Fiabilidad* Operating Systems – Task 3_1 45

Fiabilidad* Operating Systems – Task 3_1 45

Sistemas Operativos Preguntas: 1. Describe la clasificación general de los sistemas operativos. 2. Describe

Sistemas Operativos Preguntas: 1. Describe la clasificación general de los sistemas operativos. 2. Describe las estructuras de los OS 3. Describe los componentes comunes de los OS 4. ¿Cuáles son las actividades principales de un sistema operativo en la gestión de procesos? 5. Explica: por que se pueden producir condiciones de situación de bloqueo mutuo y cuales son los principales métodos para tratar con los bloqueos mutuos 6. Describe las operaciones que pueden hacer los OS en multitarea 7. Describe la interfaz entre un programa en ejecución y el sistema operativo - el método de las llamadas al sistema y el método a través de una interfaz de programación de aplicaciones de alto nivel (API). Compararlos. 8. Explica el principio de trabajo de las máquinas virtuales. Operating Systems – Task 3_1 46

Sistemas Operativos Recursos adicionales: 1. http: //en. wikipedia. org/wiki/Operating_system 2. http: //www. webopedia. com/TERM/o/operating_system.

Sistemas Operativos Recursos adicionales: 1. http: //en. wikipedia. org/wiki/Operating_system 2. http: //www. webopedia. com/TERM/o/operating_system. html 3. http: //computer. howstuffworks. com/operating-system 5. htm 4. http: //en. wikipedia. org/wiki/Deadlock 5. http: //www. personal. kent. edu/~rmuhamma/Op. Systems/os. html 6. Andrew S. Tanenbaum, Maarten van Steen, Distributed Systems: Principles and Paradigms (http: //www. cs. vu. nl/~ast/books/ds 1/) 7. http: //www. howstuffworks. com/operating-system 6. htm 8. http: //en. wikipedia. org/wiki/Comparison_of_operating_systems 9. http: //www. bellevuelinux. org/operating_systems_list. html 10. http: //www. linuxinsider. com/story/31855. html 11. http: //www. cse. ucsc. edu/~sbrandt/111/slides. html 12. http: //hjem. get 2 net. dk/rune_moeller_barnkob/multitasking. html 13. http: //en. wikibooks. org/wiki/The_Computer_Revolution/Software/OS 14. http: //en. wikipedia. org/wiki/System_call 15. http: //en. wikipedia. org/wiki/Application_programming_interface Operating Systems – Task 3_1 47