Clase 4 -

50
QUÉ ES UN SISTEMA OPERATIVO Maritzol Tenemaza

Transcript of Clase 4 -

Page 1: Clase 4 -

QUÉ ES UN SISTEMA

OPERATIVO

Maritzol Tenemaza

Page 2: Clase 4 -

Ubicación del sistema Operativo

Programa de Interfaz de Usuario

Sistema Operativo

Navegador

Web

Lector de

Correo

Electrónico

Reproductor

de música

Modo usuario

Modo Kernel

Software

Hardware

2

Ing Maritzol Tenemaza MSc.

Page 3: Clase 4 -

Ubicación del Sistema Operativo

El sistema operativo es una capa de software , cuyo

trabajo es proporcionar a los programas de

usuario, un modelo de computadora mejor, simple y

pulcra.

El programa con el que los usuarios interactúan se

llama shell (no forma parte del SO pero lo usa

para llevar a cabo su trabajo).

3

Ing Maritzol Tenemaza MSc.

Page 4: Clase 4 -

Ubicación del Sistema Operativo

Modos de Operación:

Modo Kernel

Modo Usuario

El SO es la pieza fundamental del software y se ejecuta en modo kernel o modo supervisor.

Desde aquí el SO tiene control de todo el software y puede ejecutar toda instrucción que toda máquina pueda ejecutar.

El resto del software se ejecuta en modo usuario.

Desde aquí solo un conjunto de instrucciones es permitido.

Las instrucciones de E/S están prohibidas para estos usuarios.

4

Ing Maritzol Tenemaza MSc.

Page 5: Clase 4 -

Ubicación del Sistema Operativo

El programa de interfaz de usuario, shell o GUI,

es el nivel más bajo del software en modo usuario,

permite la ejecución de otros programas :

como un navegador web.

lector de correo electrónico

o reproductor de música.

Usa en forma intensiva el SO.

5

Ing Maritzol Tenemaza MSc.

Page 6: Clase 4 -

Ubicación del Sistema Operativo

El SO se ejecuta directamente sobre el Hardware y

proporciona la base para las demás aplicaciones

de software.

Una distinción importante entre el SO y el programa

que se ejecuta en modo usuario es que si por ejemplo

su a un usuario no le gusta el manejador de correo

puede cambiarlo, pero o podrá cambiar el manejador

de interrupciones de reloj, (está protegido por el

hardware y el SO).

6

Ing Maritzol Tenemaza MSc.

Page 7: Clase 4 -

Qué es un Sistema Operativo

Software que se ejecuta en modo Kernel.

Sus funciones son:

Proporcionar a los programadores de aplicaciones (y

a los programas) un conjunto abstracto de recursos

simples (en lugar de los conjuntos complejos de

hardware).

Administrar los recursos de hardware.

7

Ing Maritzol Tenemaza MSc.

Page 8: Clase 4 -

Qué es un Sistema Operativo

Sistema Operativo como Máquina extendida:

Él trabajo del sistema operativo es crear buenas abstracciones para después implementar y administrar los objetos abstractos creados.

Una de las principales tareas del SO es ocultar el hardware y presentar a los programadores abstracciones agradables, elegantes simples y consistentes.

Recordar que los verdaderos clientes del SO son los programas de aplicación – en contraste – los usuarios finales tienen que lidiar con las abstracciones que proporcionan la interfaz de usuario., ya sea un shell de líneas de comando o interfaz gráfica.

8

Ing Maritzol Tenemaza MSc.

Page 9: Clase 4 -

Qué es un Sistema Operativo

Sistema Operativo como Administrador de recursos.

Si pensamos en el SO cuya función principal es

proporcionar abstracciones a los programas de aplicación,

responde a una perspectiva de arriba hacia abajo.

La perspectiva alterna de abajo hacia arriba, sostiene que

el SO está presente para administrar todas las piezas de

un sistema complejo. Así, proporcionar una asignación

ordenada y controlada de:

Procesadores, memorias y dispositivos de E/S, entre los

programas que compiten por estos recursos.

9

Ing Maritzol Tenemaza MSc.

Page 10: Clase 4 -

Qué es un Sistema Operativo

Sistema Operativo como Administrador de recursos.

Por ejemplo si 3 programas quieren escribir en la impresora, para que no se mezclen los contenidos, el SO guarda en buffers los contenidos luego envía a la impresora, mientras otros siguen guardando los contenidos.

El SO debe llevar un registro de que programas están usando qué recursos (especialmente en red), de otorgar peticiones de recursos, de contabilizar su uso, y mediar las peticiones en conflicto.

10

Ing Maritzol Tenemaza MSc.

Page 11: Clase 4 -

Qué es un Sistema Operativo

Sistema Operativo como Administrador de recursos.

La administración de recursos incluye el multiplexaje,

(compartir) recursos de dos formas distintas:

Por tiempo, en este caso los programas toman turnos. (ejemplo

solo 1 CPU, un solo programa se ejecuta a la vez)

Por espacio, en vez de que los clientes tomen turnos, cada uno usa

una parte del recurso, por ejemplo normalmente la memoria se

divide entre varios programas en ejecución, para que cada uno

pueda estar residente al mismo tiempo. En este caso el SO debe

resolver problemas de equidad y protección. Otro recurso

multiplexado es el disco duro, debe ser administrado por el SO.

11

Ing Maritzol Tenemaza MSc.

Page 12: Clase 4 -

Historia de los Sistemas Operativos

Estrecha relación entre SO y Arquitectura de Computadores.

Primera Generación (1945-1955): tubos de vacío.

Luego de infructuosos esfuerzos de Babagge en la segunda guerra mundial aparecen:

La primera computadora digital en Iowa State University, 300 tubos de vacío bulbos, construida por John Atanasoff y su estudiante CliffordBerry.

Konrad Zuse en Berlin construyó la Z3.

La Colossus construida por un equipo de trabajo en Bletchley Inglaterra.

La Mark1 por Howard Aiken en Harvard.

La ENIAC por Willian Mauchley

Los sistemas Operativos eran desconocidos, también se desconocían los lenguajes de programación, manejo personal y manual.

12

Ing Maritzol Tenemaza MSc.

Page 13: Clase 4 -

Historia de los Sistemas Operativos

Segunda Generación (1955-1965): Transistores y sistemas de procesamiento por Lotes:

Los transistores , le dieron confiabilidad a la computadora. A estas máquinas se las conocía como mainframes, requerían operadores para manejarlas.

Los programas eran fortran o assembler y se usaban tarjetas, se ejecutaba un programa a la vez.

Luego se pasó al procesamiento por lotes para reducir costos. Se enviaban muchos programas a la vez, en tarjetas, se pasaban a cinta, y los resultados se escribían en cinta, luego esta cinta se sacaba y se imprimía fuera de línea.

Los sistemas operativos típicos eran FMS(Fortran monitor system) e IBSYS de la IBM.

13

Ing Maritzol Tenemaza MSc.

Page 14: Clase 4 -

Historia de los Sistemas Operativos

Tercera Generación (1965 a 1980): circuitos integrados y multiprogramación:

Existían dos líneas de computadoras: la científica y las comerciales, esto era muy costoso y se resolvió cuando la IBM creó la serie 360.

La familia 360 era de circuitos integrados, su sistema operativo fue el OS-360, un sistema operativo gigante y lleno de errores.

El sistema Operativo OS/360 introdujo la multiprogramación, la solución fue subir a memoria más de un programa con protección desde hardware.

El OS/360 introdujo el spooling, es decir leer el grupo de tarjetas y llevarlas a disco duro.

Luego se preparó el camino para los tiempos compartidos (time sharing)

14

Ing Maritzol Tenemaza MSc.

Page 15: Clase 4 -

Historia de los Sistemas Operativos

La cuarta Generación : (1980 a la fecha)

Con el desarrollo de los circuitos LSI (integración a gran escala), miles de transistores en un centímetro cuadrado, nacen las computadoras personales.

Primero aparecieron las microcomputadoras, 8088, con el SO CP/M (Control Programa for microcomputers).

Posteriormente apareció el DOS( sistema operativo en Disco), que luego selo unió con un interprete de Bill Gates llamado Basic y apareció el DOS/BASIC, mismo que luego Tim Patterson (quien fue cotratado por Bill Gates)lo rediseñó y cambió su nombre a MS/DOS. 90286, 386,486.

Posteriormente se incluye la GUI, en 1988 apareció la macintoshLisa, pero muy cara, luego la Apple Macintosh con mucho éxito.

15

Ing Maritzol Tenemaza MSc.

Page 16: Clase 4 -

Historia de los Sistemas Operativos

La cuarta Generación : (1980 a la fecha)

Posteriormente Microsoft inluenciada por la macintosh, creó

un sistema basado en GUI llamado windows, el cual se

ejecutaba sobre MS-DOS, es decir era más un shell que un

sistema operativo.

A partir de 1995 se liberó la versión windows -95.

En 1998 se liberó windows 1998, aún contenia mucho

código en lenguaje ensamblador para máquinas de 16 bits.

Luego apareció Window –NT (nueva tecnología). Sistema

de 32 bits, este SO también fracazó, no aniquiló a todos los

windows ni al MS-DOS.

16

Ing Maritzol Tenemaza MSc.

Page 17: Clase 4 -

Historia de los Sistemas Operativos

La cuarta Generación : (1980 a la fecha)

Windows NT-4 finalmente, empezó a tener éxito, especialmente en redes corporativas.

Windows NT5 cambió de nombre a windows -2000

Luego Windows ME (millennium edition).

En el 2001 aparece Windows –XP.

En el 2007 Windows .Vista.

Luego apareció windows -7

Otro competidor importante es UNIX, enla China y en la India están presentes. Prefiernuna interfaz basada en comandos y otra basada en GUI, llamada Gnome o KDE.

Linux es una alternativa popular para estudiantes y empresas.

(actualmente hablamos de procesadores Intel core 5, core 7…)

Los SO en red necesitan un dispositivo controlador de interfaz de red y software de bajo nivel para controlarlo.

Un SO distribuido, está compuesto por varios procesadores, permiten que las aplicaciones se ejecuten en varios procesadores al mismo tiempo, lo que requiere software de planificación para optimizar el paralelismo.

17

Ing Maritzol Tenemaza MSc.

Page 18: Clase 4 -

Tipos de Sistemas Operativos.

Sistemas operativos de Main Frame.

Son computadoras muy grandes que aún se encuentran

en centros de datos muy grandes. Por ejemplo un main

frame de 1000 discos y millones de gigabytes de

datos.

Son servidores web de alto rendimiento, son servidores

para sitios de comercio electrónico a gran escala, y

servidores para transacciones de negocio a negocio.

Los SO de main frames están orientados hacia el

prcesamiento de muchos trabajos a la vez.

18

Ing Maritzol Tenemaza MSc.

Page 19: Clase 4 -

Tipos de Sistemas Operativos.

Sistemas operativos de Main Frame.

La mayor parte requieren muchas operaciones de E/S.

Ofrecen tres tipos de servicios:

Procesamiento por lotes: procesa trabajos de rutina, sin que hayan usuarios interactivos de por medio. Por ejemplo reporte de ventas de una cadena de tiendas.

Procesamiento por transacciones: manejan grandes cantidades de pequeñas peticiones. Por ejemplo reservaciones en una aerolínea, transacciones de un banco.

Tiempo compartido: permiten que miles de usuarios remotos ejecuten trabajos en la computadora al mismo tiempo. Por ejemplo consultar una gran base de datos.

Ejemplo de sistemas operativos de Main frame: OS/390.

Actualmente están siendo reeplazados por sistemas operativos Linux.

19

Ing Maritzol Tenemaza MSc.

Page 20: Clase 4 -

Tipos de Sistemas Operativos.

Sistemas operativos de Servidores.

Se ejecutan en servidores qe sn computadoras personales muy grandes, estaciones de trabajo e incluso main frames.

Dan servicio a varios usuarios a la vez a través de la red, y les permiten compartir los recursos de hardware y software.

Los servidores pueden proporcionar servicios de impresión, archivos o web.

Los proveedores de Internet operan muchos equipos servidores para dar soporte a sus clientes y los sitios web.

Utilizan servidores para almacenar paginas web y hacerse cargo de peticiones entrantes.

Solaris, Linux, Windows server 200x.

20

Ing Maritzol Tenemaza MSc.

Page 21: Clase 4 -

Tipos de Sistemas Operativos.

Sistemas operativos de Multiprocesadores.

Una manera de dar poder a un sistema de computo es conectar varias CPU a un solo sistema.

Se las conoce como computadores en paralelo multicomputadoreso multiprocesadores.

Los SO, son a menudo variaciones de los sistemas operativos de servidores con características especiales para comunicación, conectividad y consistencia.

Con la llegada de los chips multinúcleo para las computadoras personales, hasta los sistemas operativos de equipos de escritorio y portátiles convencionales ya tienen multiprocesadores de pequeña escala y cada vez aumenta el número de núcleos.

Windows y Linux se ejecutan en multiprocesadores.

Lo difícil es que los programas usen todo ese poder de cómputo.

21

Ing Maritzol Tenemaza MSc.

Page 22: Clase 4 -

Tipos de Sistemas Operativos.

Sistemas operativos de computadoras personales.

Todos los SO modernos soportan la multiprogramación.

Con frecuencia se inician docenas de programas al

arrancar el sistema.

Su trabajo es proporcionar buen soporte para un solo

usuario.

Linux, machintosh, windows vista, windows 7.

22

Ing Maritzol Tenemaza MSc.

Page 23: Clase 4 -

Tipos de Sistemas Operativos.

Sistemas operativos de computadoras de bolsillo.

Computadora de bolsillo o PDA (Personal Digital

Assistant)

Actualmente los PDA y celulares se han fusionado. Casi

todos ellos se basan en procesadores de 32 bits y 64

bits, trabajan en modo protegido y ejecutan un

sofisticado SO.

Actualmente es posible manejar mucha funciones de

una computadora normal.

Symbian OS, Palm OS ….iphone (machintosh), adriode

23

Ing Maritzol Tenemaza MSc.

Page 24: Clase 4 -

Tipos de Sistemas Operativos.

Sistemas operativos Integrados.

Sistemas opertivos integrados o (embedded), se

conocen también como incrustados o embebidos.

Operan en equipos que o no aceptan software

instalado por el usuario. Por ejemplo microondas,

televisores, MP4, etc…. Ejemplo: QNX, VxWorks

24

Ing Maritzol Tenemaza MSc.

Page 25: Clase 4 -

Tipos de Sistemas Operativos.

Sistemas operativos de nodos sensores.

Son pequeñas computadoras que se comunican entre si, con una estación base en forma inalámbrica. Se usan en edificios en protección de perímetros de edificios, proteger fronteras. Detectar incendios de bosques, medir temperatura, precipitaciones, pronostico del tiempo.

Cada sensor son verdaderas computadoras con memorias, procesadores, alimentadas con baterías y enlazadas a una red que debe ser robusta para tolerar fallos en los nodos individuales.

Realizan actividades en forma periódica activados por un reloj interno.

TinyOS

25

Ing Maritzol Tenemaza MSc.

Page 26: Clase 4 -

Tipos de Sistemas Operativos.

Sistemas operativos en tiempo real.

Se caracterizan por tener el tiempo como un parámetro

clave. Ejemplo Sistemas do control de procesos

Industriales llamados Sistemas en tiempo real duro, su

ejecución depende de tiempos exactos.

Existen los sistemas en tiempo real suave, en los cuales

se aceptan que puedan fallar el tiempo determinado,

ejemplo teléfonos digitales.

Estos Sistemas no aceptan que el usuario inserte ´su

propio software, lo cual facilita la protección.

26

Ing Maritzol Tenemaza MSc.

Page 27: Clase 4 -

Tipos de Sistemas Operativos.

Sistemas operativos de tarjetas inteligentes

Son los sistemas operativos más pequeños. Son tarjetas

del tamaño de una tarjeta de crédito con un chip de

CPU. Algunas se energizan por contactos con el lector

del equipo. A menudo estos son sistemas propietarios.

Algunas tarjetas funcionan en java. Algunas tarjetas

ejecutan varios applets de java, lo cual con lleva a la

multiprogramación. El SO los maneja.

27

Ing Maritzol Tenemaza MSc.

Page 28: Clase 4 -

Conceptos de Sistemas Operativos

Ing Maritzol Tenemaza MSc.

28

La base para comprender el funcionamiento de un

SO, son ciertos conceptos básicos y abstracciones:

Procesos,

Espacio de direcciones,

Archivos,

E/S

Protección

El Shell

Page 29: Clase 4 -

Conceptos de Sistemas Operativos

Ing Maritzol Tenemaza MSc.

29

Procesos:

Un proceso es en esencia un programa en ejecución.

Cada proceso tiene asignado un espacio de

direcciones.

El espacio de direcciones contiene el programa

ejecutable, los datos y su pila.

También tiene asociados registros (CP, apuntador de

pila entre otros), un conjunto de archivos abiertos,

alarmas pendientes, listas de procesos relacionados y

la información necesaria para ejecutar un programa.

Page 30: Clase 4 -

Conceptos de Sistemas Operativos

Ing Maritzol Tenemaza MSc.

30

Procesos (2):

Se debe pensar en un sistema de multiprogramación: Asuma que usted baja una película, mientras tanto usted navega en la web, además revisa su correo. El SO puede cortar el proceso que baja la película porque ya ha usado suficiente tiempo, para ejecutar otro.

Cuando detiene un proceso debe guardar el estado del proceso, por ejemplo si el proceso tuvo varios archivos abiertos al mismo tiempo debe guardar todos los apuntadores asociados a la posición actual, algunos SO guardan toda la información del proceso más su propio espacio de direcciones los guarda en Tablas de procesos, las cuales son arreglos o listas enlazadas.

Page 31: Clase 4 -

Conceptos de Sistemas Operativos

Ing Maritzol Tenemaza MSc.

31

Procesos (3):

El sistema de administración de procesos son los que se encargan de crear y terminar procesos. Por ejemplo un proceso llamado intérprete de comandos, o shell, lee comandos, si el usuario pide compilar un programa, el shellcrea el proceso para ejecutar el compilador, este se ejecuta y cuando termina llama al administrador de procesos para terminarse a si mismo.

En ocasiones el proceso llama a subprocesos, llamados procesos hijos y se forma un árbol de procesos. A menudo se necesita sincronizar actividades entre procesos.

A los procesos y subprocesos el SO les asigna identificadores individuales y de grupo.

Page 32: Clase 4 -

Conceptos de Sistemas Operativos

Ing Maritzol Tenemaza MSc.

32

Espacios de Direcciones:

la memoria principal contiene a todos los programas que se están ejecutando.

Un SO simple, solo hay un programa a la vez en memoria, para ejecutar un segundo se tiene que quitar el primero y colocar el segundo en memoria.

Un SO sofisticado, permite colocar varios programas en memoria. Para evitar que se interfieran entre ellos necesitan mecanismos de protección. Aunque este mecanismo tiene que estar en hardware tiene que estar controlado por el SO.

Page 33: Clase 4 -

Conceptos de Sistemas Operativos

Ing Maritzol Tenemaza MSc.

33

Espacios de Direcciones(2):

En el espacio de direcciones , las direcciones pueden

ser de 32 o 64 bits, si un proceso requiere un espacio

de direcciones mayor a la capacidad de la memoria

principal de la memoria, en este caso se usa una

técnica llamada Memoria virtual, en este caso el SO

crea la abstracción de memoria suficiente.

Este trabajo de administrar la memoria es parte

importante de lo que hace el SO.

Page 34: Clase 4 -

Conceptos de Sistemas Operativos

Ing Maritzol Tenemaza MSc.

34

Archivos:

Otro concepto clave es el sistema de archivos.

Una de las actividades del usuario es crear, borrar, leer y escribir sobre archivos, para lo cual hay que acceder al dispositivo y hacer las actividades.

El SO maneja el concepto de directorio, como una manera de agrupar archivos. La entradas del directorio pueden ser archivos u otros directorios.

las jerarquías de procesos y de archivos están organizadas en forma de árboles.

Se maneja también otro concepto, archivo especial, es ver a los dispositivos como archivos. De esta manera se puede leer o escribir sobre ellos con las mismas funciones del SO que se utilizan para los archivos.

Page 35: Clase 4 -

Conceptos de Sistemas Operativos

Ing Maritzol Tenemaza MSc.

35

Archivos(2):

Existen dos tipos de archivos especiales:

Archivos especiales de bloque: por ejemplo los discos duros, que

permiten acceder de manera directa a un determinado bloque.

Archivos especiales de caracter: por ejemplo los modems o

impresoras.

Otro concepto asociado a los procesos y archivos son los

canales:

Un canal es un tipo de pseudoarchivo que sirve para conectar dos

procesos. Por ejemplo si dos procesos necesitan comunicarse se

debe establecer un canal por anticipado.

Page 36: Clase 4 -

Conceptos de Sistemas Operativos

Ing Maritzol Tenemaza MSc.

36

Entrada /Salida

Existen muchos dispositivos de E/S, incluyendo teclados,

monitores, impresoras, etc. Es Responsabilidad del SO

administrar estos dispositivos.

En otra palabras, el SO tiene un subsistema para

administrar los dispositivos de E/S, algunos dispositivos

tienen su propio driver, para administrar el SO.

Page 37: Clase 4 -

Conceptos de Sistemas Operativos

Ing Maritzol Tenemaza MSc.

37

Protección

Mucha información del usuario debe ser protegida por

ser confidencial, (mensajes de correo electrónico,

planes de negocio, etc..) es responsabilidad del SO

administrar la seguridad de los archivos.

Page 38: Clase 4 -

Conceptos de Sistemas Operativos

Ing Maritzol Tenemaza MSc.

38

EL Shell

EL SO es el código que lleva a cabo el sistema.

Los editores, compiladores, ensambladores,

enlazadores e intérpretes de comandos no son parte

del SO.

Es la interfaz gráfica del usuario.

Cuando cualquier usuario inicia sesión, se inicia el shell,

con interfaz gráfica en el caso de windows (windows

explorer), Linux tiene su shell con GUI, Gnome o KDE, y

el shell de comandos.

Page 39: Clase 4 -

Estructura de un Sistema Operativo

Ing Maritzol Tenemaza MSc.

39

Significa dar un vistazo al interior del S.O.

Los diseños son :

Sistemas Monolíticos.

Sistemas de Capas.

Microkernels

Sistemas Cliente – servidor

Máquinas Virtuales.

ExoKernels

Page 40: Clase 4 -

Estructura de un Sistema Operativo

Ing Maritzol Tenemaza MSc.

40

Sistemas Monolíticos.

Un sistema operativo con núcleo monolítico concentra todas las funcionalidades posibles (planificación, sistema de archivos, redes, controladores de dispositivos, gestión de memoria, etc) dentro de un gran programa. El mismo puede tener un tamaño considerable, y deberá ser recompilado por completo al añadir una nueva funcionalidad.

Todos los componentes funcionales del núcleo tienen acceso a todas sus estructuras de datos internas y a sus rutinas. Un error en una rutina puede propagarse a todo el núcleo.

Todos sus componentes se encuentran integrados en un único programa que ejecuta en un único espacio de direcciones. En este tipo de sistemas, todas las funciones que ofrece el sistema operativo se ejecutan en modo supervisor, o kernel.

Page 41: Clase 4 -

Estructura de un Sistema Operativo

Ing Maritzol Tenemaza MSc.

41

Sistemas Monolíticos (2).

Estos sistemas operativos han surgido, normalmente, de

sistemas operativos sencillos y pequeños a los que se

les ha ido añadiendo un número mayor de

funcionalidades. Ejemplo MS-DOS y UNIX.

El problema que plantean este tipo de sistemas radica

en lo complicado que es modificar el sistema operativo

para añadir nuevas funcionalidades y servicios.

Por cada llamada al sistema hay un procedimiento de

servicio que se encarga de la llamada y la ejecuta.

Page 42: Clase 4 -

Estructura de un Sistema Operativo

Ing Maritzol Tenemaza MSc.

42

Sistemas de Capas.

Una mejor opción es organizar el SO como una

jerarquía de capas. Por ejemplo (SO The)

Capa Función

5 El operador (proceso operador del sistema)

4 Programas de Usuario

3 Administración de la E/S

2 Comunicación Operador -Proceso

1 Administración de memoria

0 Asignación del procesador y multiprogramación.

Page 43: Clase 4 -

Estructura de un Sistema Operativo

Ing Maritzol Tenemaza MSc.

43

Sistemas de Capas (2).

Una mayor generalización del concepto de capas

estuvo presente en el sistema MULTICs, en ves de capas

se describió como una serie de anillos concéntricos,

donde los interiores tenían más privilegios que los

exteriores.

Page 44: Clase 4 -

Estructura de un Sistema Operativo

Ing Maritzol Tenemaza MSc.

44

Microkernels:

En el diseño de capas, tradicionalmente todas las

capas iban al Kernel, pero eso no es necesario.

Se debe colocar lo menos posible en el Kernel, debido

a que los errores en el Kernel paralizan

inmediatamente al sistema. En contraste los procesos

del usuario se pueden configurar para que tengan

menos jerarquía, por lo que un error de ellos no serçia

fatal.

Page 45: Clase 4 -

Estructura de un Sistema Operativo

Ing Maritzol Tenemaza MSc.

45

Microkernels(2):

La idea del microkernel es lograr una alta

confiabilidad al dividir el SO en módulos pequeños y

bien definidos.

Solo el microkernel se ejecuta en modo Kernel, el resto

se ejecuta en modo Usuario.

De esta forma el error de un proceso puede hacer que

falle ese componente, pero no puede hacer que falle

todo el sistema.

Page 46: Clase 4 -

Estructura de un Sistema Operativo

Ing Maritzol Tenemaza MSc.

46

Modo Cliente Servidor

Aquí se diferencian dos procesos:

Los servidores cada uno de los cuales proporciona ciertos servicios.

Los clientes utilizan estos servicios.

Se conocen como modelo cliente servidor.

La comunicación entre cliente y servidor se lleva a cabo mediante mensajes.

Para obtener un servicio, un proceso cliente construye un mensaje, indicando lo que desea y le envía al servicio apropiado, después el servicio hace el trabajo y envía de vuelta la respuesta.

Los mensajes pueden ejecutarse en el mismo equipo o en equipos remotos.

Page 47: Clase 4 -

Estructura de un Sistema Operativo

Ing Maritzol Tenemaza MSc.

47

Máquinas Virtuales.

Durante 4 décadas IBM ha contado con máquinas virtuales.

Muchos usuarios requieren manejar muchos sistemas

operativos para servidores independientes com de correo,

FTP, servidores web, una solución es la virtualización.

Otro uso es el hospedaje web. (con una sola máquina se

evita el hospedaje compartido)se asigna una MV por

usuario.

Otra aplicación es para los usuario finales, que desean

ejecutar 2 o más SO al mismo tiempo.

Page 48: Clase 4 -

Estructura de un Sistema Operativo

Ing Maritzol Tenemaza MSc.

48

Máquinas Virtuales (2).

Respecto al software, para poder ejecutar software de

máquina virtual su CPU debe ser virtualizable.

Problema: cuando ejecuta una máquina virtual, sus

instrucciones se ejecutan en modo usuario privilegiado,

es decir pueden modificar el PSW, ejecutar

operaciones de E/S, el SO debe hacer que la

instrucción se pueda emular en el software.

Page 49: Clase 4 -

Estructura de un Sistema Operativo

Ing Maritzol Tenemaza MSc.

49

Exokernels

En vez de clonar una máquina virtual se hace con máquinas virtuales, lo que se hace a la máquina real es particionarla.

En la capa inferior que se ejecuta en modo Kernel, hay un programa llamado exokernel, su trabajo es asignar recursos a las máquinas virtuales y luego comprobar los intentos de usarlos, así cada máquina virtual piensa que tiene su propio disco, por lo que el monitor de la máquina virtual debe mantener tablas para reasignar las direcciones del disco.

El Exokernel solo necesita llevar el registro para saber a cual máquina virtual se le ha asignado cierto recurso.

El exokernel mantiene las máquinas separadas una de otras.

Page 50: Clase 4 -

Bibliografía

Ing Maritzol Tenemaza MSc.

50

Sistemas Operativos modernos – 3 Edición

Andrew Tanenbaum

Pearson Educación

2009