Your SlideShare is downloading. ×
  • Like
  • Save
Conceptos Arquitectonicos: Sistemas Operativos
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Conceptos Arquitectonicos: Sistemas Operativos

  • 17,723 views
Published

Presentacion Otorgada por la profesora: Sara Mendezde la unidad uno sobre arquitecura y sus conceptos, Sistemas Operativos IPN UPIICSA

Presentacion Otorgada por la profesora: Sara Mendezde la unidad uno sobre arquitecura y sus conceptos, Sistemas Operativos IPN UPIICSA

Published in Technology , Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • Hola me gustaría tener el documento la presentación es muy interesante y didáctica podrías enviarlo a alcruz_v@yahoo.com.mx

    Gracias de antemano
    Are you sure you want to
    Your message goes here
  • Hola me gustaría tener el documento la presentación es muy interesante y didáctica podrias enviarme lo a
    josenoel_carlos@outlook.es
    Are you sure you want to
    Your message goes here
  • buenaso jajaj
    Are you sure you want to
    Your message goes here
  • hola chico me parece super importante este material de verdad excelente, serias tan amable de enviármelo a mi correo pliss, si no es mucha molestia. te lo agradecería full..
    Are you sure you want to
    Your message goes here
  • buentrabajo podrias enviarlo a mi email porfabor b_boygary@hotmail.com
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
17,723
On SlideShare
0
From Embeds
0
Number of Embeds
14

Actions

Shares
Downloads
0
Comments
23
Likes
45

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1.
    • UNIDAD I
    • “ CONCEPTOS ARQUITECTÓNICOS
    • DE LA COMPUTADORA”
    • ÍNDICE TEMÁTICO
    • 1.1 ESTRUCTURA Y FUNCIONAMIENTO DE LA COMPUTADORA
      • ¿Cuál es la función de una computadora?
      • ¿Cuál es la arquitectura de las computadoras actuales?
      • Diagrama
    • 1.2 MODELO DE PROGRAMACIÓN DE UNA COMPUTADORA
      • ¿Qué es el modelo de programación de una computadora?
      • Esquema del modelo de programación de una computadora en general
      • ¿Cuáles son las características del esquema?
      • ¿Cuáles son los niveles de ejecución que tiene una computadora?
      • ¿Cómo se representan estos dos modelos de ejecución ?
  • 2.
      • Modelo de programación de usuario
      • Modelo de programación de núcleo
      • ¿Cómo se realiza la secuencia de funcionamiento de una computadora?
      • Conclusión del funcionamiento secuencial de la computadora
      • ¿Cuáles son los mecanismos de ruptura de secuencia?
      • ¿Cuáles son los registros de control y estado más importantes?
      • Especificaciones de los registros de estado
    • 1.3 INTERRUPCIONES
      • ¿Qué es una interrupción?
      • ¿En que consiste una interrupción?
      • ¿Cuáles son los programas interruptores del so?
    • 1.4 EL RELOJ
      • ¿Qué es el reloj de una computadora?
      • ¿Cómo se relacionan las funciones del reloj?
  • 3.
    • 1.5 JERARQUÍA DE MEMORIA
      • ¿Cómo se organiza la memoria de una computadora?
      • ¿Qué factores influyen para la asignación de niveles,
      • En la jerarquía de memoria?
      • ¿Qué es la gestión de la jerarquía de memoria?
      • ¿Cómo se explota correctamente la jerarquía de memoria?
      • El mecanismo de migración de información se basa en 4 puntos. ¿En que consiste cada uno de ellos?
      • ¿Cómo se mide la eficiencia de la jerarquía de memoria?
      • ¿Cuáles son los factores más importantes que determinan hrk (tasa de aciertos)?
      • ¿De que factores depende tef ?
      • ¿Qué es la traza de un programa en ejecución ?
  • 4.
    • 1.6 MEMORIA VIRTUAL
      • ¿Qué es memoria virtual?
      • ¿Cuáles son los aspectos principales de la memoria virtual?
      • ¿Qué son las tablas de paginas?
      • ¿Cómo es la traducción de direcciones?
      • ¿Qué se entiende por caso de varios programas activos?
      • ¿Qué es la asignación de memoria?
    • 1.7 ENTRADA – SALIDA
      • ¿Cuál es el objetivo los mecanismos de E/S de la computadora?
      • ¿Cómo esta estructurado un periférico?
      • ¿Cuál es la importancia del disco magnético?
      • ¿Cuáles son los 3 modos de e/s para realizar operaciones?
      • ¿Cuál es la ocupación del procesador en operaciones de e/s?
  • 5.
    • 1.8 PROTECCIÓN.
      • ¿A que se refiere protección?
      • ¿Cuáles son los mecanismos de protección del procesador?
      • ¿Cuáles son los mecanismos de protección de la memoria?
    • 1.9 MULTIPROCESADOR Y MULTICOMPUTADORA
      • ¿Cómo funciona un multiprocesador?
      • ¿Cómo funciona una multicomputadora ?
    • 1.10 EJERCICIOS DE APLICACIÓN
  • 6.
    • UNIDAD II
    • “ INTRODUCCIÓN A
    • LOS SISTEMAS OPERATIVOS”
    • 2.1 DEFINICIÓN Y FUNCIONES DE LOS SISTEMAS OPERATIVOS
      • ¿Cuál es el concepto de sistema operativo?
      • ¿Qué entiendes por máquina desnuda?
      • ¿Conoces las funciones del sistema operativo?
      • ¿Cuáles son las facetas del sistema operativo?
      • ¿Qué es un usuario?
    • 2.2 ARRANQUE DE LA COMPUTADORA Y DEL SISTEMA OPERATIVO
      • ¿Cuáles son las actividades que se realizan en el arranque?
      • Explique como se realiza el arranque de Hardware
      • Explique como se realiza el arranque del Sistema Operativo
      • ¿Cuáles son las operaciones que se realizan en la fase de iniciación?
  • 7.
    • 2.3 COMPONENTES Y ESTRUCTURA DEL SISTEMA OPERATIVO
      • ¿Cuáles son los componentes del sistema operativo?
      • ¿Cuál es la estructura de un sistema operativo?
    • 2.4 GESTIÓN DE PROCESOS
      • ¿Qué es un proceso?
      • ¿Qué elementos constituyen un proceso?
      • ¿Cómo pueden ser los sistemas operativos?
      • ¿Por qué fases esta constituida la vida de un proceso?
      • ¿Qué servicios ofrece el sistema operativo para la gestión de procesos?
      • ¿Cómo se da el servicio de crear un proceso?
      • ¿Cómo se da el servicio de ejecutar un proceso?
      • ¿Cómo se da el servicio de terminar la ejecución de un proceso?
      • ¿En qué consiste el servicio de cambiar el programa de un proceso?
  • 8.
    • 2.5 GESTIÓN DE MEMORIA
      • ¿De qué se encarga el gestor de memoria?
      • ¿Qué servicios ofrece a los procesos, el gestor de memoria?
      • ¿En qué consiste el servicio de solicitar memoria?
      • ¿En qué consiste el servicio de liberar memoria?
      • ¿En qué consiste el servicio de compartir memoria?
    • 2.6 GESTIÓN DE ENTRADA/ SALIDA
      • ¿Cuáles son las ventajas de que el S.O gestione a los dispositivos de e/s?
      • ¿Qué tipo de servicios ofrece el S.O de e/s?
      • ¿Qué consigue con ellos?
    • 2.7 GESTIÓN DE ARCHIVOS Y DIRECTORIOS
      • ¿Qué es un servidor de archivo?
      • ¿Qué conforma un servicio de archivos?
      • ¿Qué conforma un servicio de directorios?
  • 9.
      • 2.8 COMUNICACIÓN Y SINCRONIZACIÓN ENTRE PROCESOS
        • ¿En que momento es necesario que dos o más procesos se comuniquen?
        • ¿Qué fases presentan los mecanismos de comunicación y sincronización de procesos?
        • ¿Cuáles son los servicios básicos de comunicación que incluyen todos los mecanismos de comunicación?
        • ¿Cuál es la comunicación sincronía entre procesos?
        • ¿Cuál es la comunicación asíncrona entre procesos?
    • 2.9 SEGURIDAD Y PROTECCIÓN
      • ¿En que consiste la seguridad en los so?
    • 2.10 ACTIVACIÓN DEL S.O Y LLAMADAS AL SISTEMA
      • ¿Cuáles son las fases de activación del sistema operativo?
      • ¿De donde proviene el trabajo que se le asigna al sistema operativo?
      • ¿Cómo se solicita el servicio del S.O cuando se programa en lenguaje de alto nivel como c?
      • ¿Cuál es el código de la función que llama al servicio del S.O ?
  • 10.
      • ¿Cómo trabaja dicha función en el programa?
      • Gráfico ejemplificando llamada al sistema operativo
    • 2.11 INTERFAZ DE USUARIO CON EL S.O. E INTERFAZ DEL PROGRAMADOR
      • ¿Cuál es la interfaz del programador?
      • ¿Cuál es la principal misión de la interfaz de usuario?
      • ¿Cuál es la principal característica de las interfaces alfanuméricas?
      • ¿Cuál es el interprete de mandatos en la interfaz alfanumérica?
      • ¿Cuáles son las características de las interfaces graficas?
      • ¿Cuáles son las características de las interfaces graficas?
    • BIBLIOGRAFÍA
  • 11. 1.1 ESTRUCTURA Y FUNCIONAMIENTO DE LA COMPUTADORA
    • ¿Cuál es la función de una computadora?
    • Es una máquina destinada a procesar datos. El procesamiento involucra dos flujos de información: el de datos y el de instrucciones. Este flujo de datos es tratado mediante un flujo de instrucciones máquina.
    • Procesador
    • Datos Resultados
    • Instrucciones
    • máquina
  • 12. ESTRUCTURA Y FUNCIONAMIENTO DE LA COMPUTADORA
    • ¿Cuál es la arquitectura de las computadoras actuales?
    • Es la arquitectura de Von Neumann la cual esta compuesta por
    • cuatro componentes básicos:
        • La memoria principal.
        • La unidad aritmética lógica.
        • La unidad de control.
        • La unidad de entrada y salida.
  • 13. ESTRUCTURA Y FUNCIONAMIENTO DE LA COMPUTADORA
    • Unidad aritmética Memoria Unidad de entrada y
    • lógica principal salida
    • Registros
    • Unidad de
    • Control Periféricos
    Datos Código ROM Estado Contador de programa Registro de instrucción Puntero de pila
  • 14. ¿QUÉ ES EL MODELO DE PROGRAMACIÓN DE UNA COMPUTADORA?
    • El modelo de programación a bajo nivel de una computadora es un diagrama de bloques simplificado en el que sólo aparecen los elementos que el programador puede manejar mediante el conjunto de instrucciones .
    • El cual dispone de:
    • 16 registros de 32 bits de propósito general (D0-D7, A0-A7) y
    • un puntero contador de programa (PC) de 32 bits.
    • Los primeros 8 registros (D0-D7) se utilizan como registros de datos para bytes (8 bits), words (16 bits) y long words (32 bits).
    • Los registros del segundo bloque de 8 (A0-A7) pueden ser utilizados como punteros de pila o como bases de direcciones.
    • En concreto el registro A7 es adoptado por el microprocesador como puntero de la pila del sistema.
    • Todos los registros pueden utilizarse como registros índice.
    1.2 MODELO DE PROGRAMACIÓN DE UNA COMPUTADORA
  • 15. ESQUEMA DEL MODELO DE PROGRAMACIÓN DE UNA COMPUTADORA EN GENERAL Puntero de pila de usuario Puntero de pila del sistema Contador del programa 0 2 32 -1 0 2 16 -1 Mapa de memoria Mapa de E/S Juego de instrucciones (núcleo y usuario) D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 A2 A3 A4 A5 A6 A7 A7’ PC 31 16 15 8 7 0 REGISTROS DE DATOS REGISTROS DE DIRECCIÓN 15 14131211 10 9 8 OCTETO DE USUARIO 7 6 5 4 3 2 1 0 OCTETO DE SISTEMA T S 1211 10 X N Z V C REGISTRO DE ESTADO Modo traza Sistema/usuario máscara de interrupciones Extensión Negativo Cero Desbordamiento Acarreo
  • 16. CARACTERÍSTICAS DEL ESQUEMA ANTERIOR ELEMENTOS CARACTERÍSTICAS DE ALMACENAMIENTO
    • Elementos de almacenamiento visibles a las instrucciones máquina.
    • Registros generales
    • Contador del programa
    • Puntero de pila
    • Registro de estado
    • Memoria principal
    • Mapa de E/S
    JUEGO DE INSTRUCCIONES con sus correspondientes modos de direccionamiento Define las operaciones que es capaz de hacer la computadora. Los modos de direccionamiento, determinan la forma en que se especifica la identidad de los elementos de almacenamiento que intervienen en las instrucciones máquina. SECUENCIA DE FUNCIONAMIENTO Define el modo en que se van ejecutando las instrucciones máquina ASPECTO CRUCIAL DE LAS COMPUTADORAS Esta presente en todas ellas menos en los modelos más simples, es que disponen de más de un nivel de ejecución
  • 17. ¿CUÁLES SON LOS NIVELES DE EJECUCIÓN QUE TIENE UNA COMPUTADORA? EJECUTA Solo un subconjunto de instrucciones máquina NIVEL 1 DE USUARIO
    • QUEDA PROHIBIDO
    • (por razones de seguridad)
    • Acceso a determinados registros o parte de ellos.
    • A determinadas zonas del Mapa de memoria.
    • Y a zonas de E/S.
    NIVEL 2 DE NÚCLEO
    • EJECUTA
    • Todas las instrucciones sin ninguna restricción.
    • Tiene acceso a todos los registros
    • Tiene acceso a todos los Mapas de Direcciones y a zonas de E/S.
    OTROS La mayoría de las actuales computadoras presentan dos o más niveles de ejecución.
  • 18. ¿CÓMO SE REPRESENTAN ESTOS DOS MODELOS DE EJECUCIÓN ? Mapa de memoria Juego de instrucciones D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 A2 A3 A4 A5 A6 A7 PC REGISTRO DE ESTADO OCTETO DE USUARIO 0 2 31 -1 1) Modelo de programación de usuario X N Z V C A nivel usuario, se permite usar menos instrucciones por seguridad y solo 8 registros de estado 7 6 5 4 3 2 1 0
  • 19. 2) Modelo de programación de núcleo Juego de instrucciones D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 A2 A3 A4 A5 A6 A7 A7’ PC OCTETO DE USUARIO 7 6 5 4 3 2 1 0 OCTETO DE SISTEMA T S 1211 10 X N Z V C REGISTRO DE ESTADO UNO O VARIOS BITS DE REGISTRO DE ESTADO ESTABLECEN EL NIVEL EN EL QUE ESTA EJECUTANDO LA MÁQUINA. MODIFICANDO ESTOS BITS SE CAMBIA EL NIVEL DE EJECUCIÓN 15 14131211 10 9 8 0 2 32 -1 0 2 16 -1 Mapa de memoria Mapa de E/S
  • 20. ¿CÓMO SE REALIZA LA SECUENCIA DE FUNCIONAMIENTO DE LA COMPUTADORA? LA UNIDAD DE CONTROL DE LA COMPUTADORA ES LA QUE ESTABLECE EL FUNCIONAMIENTO DE LA MISMA. EL FUNCIONAMIENTO ESTÁ BASADO EN UNA SECUENCIA SENCILLA, QUE SE REPITE A ALTA VELOCIDAD (CIENTOS DE MILLONES DE VECES POR SEGUNDO):
    • Lectura de instrucción apuntada por PC
    • Incremento del PC
    • Ejecución de la instrucción:
    • Secuencia lineal: ejecuta instrucciones consecutivas
    • Bucle infinito.
    Esto significa que La unidad de control esta continua e ininterrumpidamente realizando esta secuencia.
  • 21. CONCLUSIÓN DEL FUNCIONAMIENTO SECUENCIAL DE LA COMPUTADORA Debe tener adecuadamente cargados en memoria un programa máquina con sus datos es repetir la secuencia anterior Lo único que sabe hacer la PARA QUE REALICE ALGO ÚTIL Hemos de conseguir que el contador de programa apunte a la instrucción máquina inicial del programa.
  • 22. ¿CUÁLES SON LOS MECANISMOS DE RUPTURA DE SECUENCIA? Interesante para la programación Interesantes para el sistema operativo MECANISMOS BÁSICOS DE RUPTURA DE SECUENCIA
    • Las instrucciones máquina de salto o bifurcación. ( permiten que el programa rompa su secuencia lineal de ejecución pasando a otro segmento de si mismo)
    • Las interrupciones externas o internas. (hacen que la unidad de control modifique el valor del contador del programa saltando a otro programa.
    • Las instrucciones máquina TRAP (produce un efecto similar a la interrupción, haciendo que se salte a otro programa)
  • 23. ¿CUÁLES SON LOS REGISTROS DE CONTROL Y ESTADO MÁS IMPORTANTES? REGISTROS DE CONTROL Y ESTADO 4) Contador de programa PC 2) Puntero de pila SP 1)Registro de instrucción RI 5) Registro identificador de espacio de direccionamiento RIED 6) Otros registros de gestión de memoria Contiene la dirección de la siguiente instrucción máquina Contiene la instrucción en curso de ejecución Identifica el espacio del mapa de memoria que puede utilizar el programa en ejecución Pueden ser los registros de protección de memoria Bits de control de interrupciones 3) Registros de estado SEGÚN LA ARQUITECTURA DE LA COMPUTADORA Contiene la dirección de la cabecera de la pila. Bits de nivel de ejecución BIT de estado aritmético Signo, acarreo cero y desbordamiento Los registros de control y estado son 6:
  • 24. REGISTROS DE CONTROL Y ESTADO 3) Registros de estado Bits de control de interrupciones Bits de nivel de ejecución Establecen las interrupciones que se pueden aceptar Identifican el nivel en el que ejecuta el procesador BIT de estado aritmético SIGNO De la última operación aritmética realizada ACARREO De la última suma o resta realizada CERO Se activa si el resultado de la última operación o lógica fue cero DESBORDAMIENTO Lo indica si la última operación aritmética lo produjo Especificaciones de los registros de estado
  • 25. 1.3 INTERRUPCIONES ¿QUÉ ES UNA INTERRUPCIÓN? Detención temporal en un punto determinado de un programa, para permitir el acceso y proceso de una rutina que tomará el control del sistema. Puede ocurrir debido a diferentes causas ya sean hardware o software.
  • 26. ¿EN QUÉ CONSISTE UNA INTERRUPCIÓN?
    • Recibe una señal la Unidad de Control
    • El programa solicita ser atendido ( permitir el acceso y proceso de una rutina )
    • La Unidad de Control realiza Ciclo de Aceptación de Interrupción, siempre y cuando haya terminado la ejecución de la interrupción máquina
    PROGRAMA QUE INTERRUMPE UNIDAD DE CONTROL SO TABLA DE INTERRUPCIONES RUTINA DE TRATAMIENTO DE LA INTERRUPCIÓN SOLICITUD DE INTERRPCIÓN MEMORIA * * PROGRAMAS CAUSANTES DE INTERRUPCIONES
  • 27. ¿CUÁLES SON LOS PROGRAMAS INTERRUPTORES DEL SO? PROGRAMA TRAP Desbordamientos en operaciones, ejecutar instrucción con código incorrecto, direccionar posición de memoria prohibidas …. Permite a un programa generar una interrupción (servicio del SO) RELOJ E/S HARDWARE Realiza en un determinado intervalo de tiempo Controladores de dispositivos para terminar operación Para detección de un error de paridad o corte de corriente
  • 28. 1.4 EL RELOJ ¿Qué es el reloj de una computadora? El reloj es el dispositivo más importante de la computadora, ya que cumple con las siguientes funciones.
  • 29. ¿Cómo se relacionan las funciones del reloj? Reloj de la computadora
  • 30. 1.5 JERARQUÍA DE MEMORIA ¿Cómo se organiza la memoria de una computadora?
    • La memoria de la computadora se organiza en forma de una jerarquía.
  • 31. ¿Cuál es la jerarquía de memoria? Jerarquía de Memoria
  • 32. ¿Qué factores influyen para la asignación de niveles, en la jerarquía de memoria? El tiempo de acceso, es el factor que influye en la jerarquía de memoria.. Valores típicos de la jerarquía de memoria Palabra 5 a 20 ns 8KB a 2MB Caché de memoria principal Sector 10 a 30 ns 50MB a 40GB Disco Palabra 60 a 200 ns 128 MB a 64GB Memoria principal Palabra 1 a 5 ns 64 a 256 bytes Registros Tipo de acceso Tiempo de acceso Capacidad Nivel de memoria
  • 33. ¿Qué es la gestión de la jerarquía de memoria?
  • 34. ¿Cómo se explota correctamente la jerarquía de memoria? Exigiendo tener en cada momento , la información adecuada en el nivel adecuado. Para ello, la información ha de moverse de nivel, esto es, ha de migrar a de un nivel a otro.
  • 35. El mecanismo de migración de información se basa en 4 puntos. ¿En que consiste cada uno de ellos?
  • 36. ¿Cómo se mide la eficiencia de la jerarquía de memoria?
  • 37. ¿Cuáles son los factores más importantes que determinan Hrk (Tasa de aciertos)?
  • 38. ¿De que factores depende Tef ?
  • 39. ¿Qué es la traza de un programa en ejecución ?
  • 40. 1.6 MEMORIA VIRTUAL. ¿QUÉ ES LA MEMORIA VIRTUAL? En un sistema sin memoria virtual El SO. Divide la memoria principal en trozos y asigna uno a cada uno de los programas que están ejecutando en un instante determinado El espacio asignado a un programa consiste en una zona de memoria principal contigua, no se asignan varios trozos disjuntos de memoria a un mismo programa. PROGRAMA A SISTEMA OPERATIVO SISTEMA OPERATIVO PROGRAMA C PROGRAMA B PROGRAMA A MEMORIA PRINCIPAL MEMORIA PRINCIPAL
  • 41. MEMORIA VIRTUAL. Utiliza dos niveles de la jerarquía de memoria. Memoria principal Memoria de respaldo. (disco o memoria expandida. Se establece un mapa uniforme de memoria virtual. Las direcciones generadas por el procesador se refieren a este mapa virtual. Los accesos se reales se realizan sobre la memoria principal. Exige una gestión automática de la parte de la jerarquía de memoria formada, por los niveles De memoria principal De disco. Su gestión es automática y la realiza el SO. Con la ayuda del hardware de la máquina Incluye toda la memoria principal y una parte del disco, que sirve de respaldo a la memoria virtual.
  • 42. MEMORIA VIRTUAL. Aspectos principales.
      • Direcciones generadas por las instrucciones máquina, tanto para referirse a datos como a otras instrucciones, están referidas al espacio virtual, forman parte del mapa de memoria virtual.
    • El mapa virtual asociad a un programa en ejecución está soportado físicamente por una zona del disco, denominada intercambio o swap, y por una zona de la memoria principal.
    • Aunque el programa genera direcciones virtuales, para que éste pueda ejecutar, han de residir en memoria principal las instrucciones y los datos utilizados en cada momento.
    • Los espacios virtual y físico se dividen en páginas. Se denominan:
        • páginas virtuales a las páginas de espacio virtual,
        • páginas de intercambio a las páginas residentes en el disco y
        • marcos de página a los espacios en los que se divide a la memoria principal.
      • Cada marco de página es capaz de albergar una página virtual, sin restricción de almacenamiento.
    • La MMU (Memory Managment Unit), traduce las direcciones virtuales a direcciones de memoria principal. Esta traducción restringe a traducir el número de página virtual en el correspondiente número de marco de página; esta traducción se debe hacer por hardware, dada la alta velocidad a la que debe hacerse.
    • En cada instante determinado solamente reside en memoria principal una fracción de las páginas del programa, la traducción no siempre es posible. Por lo que l a MMU producirá una excepción de fallo de página cuando ésta no esté en memoria principal.
    Los fallos de página son atendidos por el SO que se encarga de realizar la adecuada migración de páginas. Paginación es el proceso de migración necesario para atender los fallos de página necesarios ¿CUÁLES SON LOS ASPECTOS PRINCIPALES DE LA MV?
  • 43. MEMORIA VIRTUAL. El tamaño del espacio virtual suele ser muy grande. La asignación del espacio virtual a los programas para su ejecución es una función del SO El programa no podrá utilizar todo el espacio virtual sino que ha de restringirse a la zona o zonas que le asigne el SO. El espacio virtual reservado al programa A puede estar en una única zona o puede estar dividido en varias zonas, que se denominan segmentos. Una característica de los lenguajes de programación actuales es que permiten la asignación dinámica de memoria. No se conoce a priori la cantidad de memoria que necesitará el programa para su ejecución. El sistema operativo ha de ser capaz de aumentar o reducir el espacio asignado a un programa de acuerdo a las necesidades que vayan surgiendo en su ejecución. PROGRAMA A SISTEMA OPERATIVO MEMORIA VIRTUAL. MEMORIA VIRTUAL. PROGRAMA A SEGMENTO 0 SEGMENTO 1 SEGMENTO 2 SISTEMA OPERATIVO
  • 44. Estructura de información que contiene la información de dónde residen las páginas de un programa en ejecución. Permite saber si una página está en memoria principal y en que marco específico reside. Muestra la solución más sencilla de tablas de páginas de un nivel. Toda la memoria asignada al programa es contigua. El número de la página virtual se utiliza como índice para entrar en la tabla. Cada elemento de la tabla tiene un bit para indicar si la página está en memoria principal y el número de marco en el que se encuentra la mencionada página un valor nulo. Tabla de páginas. ¿QUÉ ES UNA TABLA DE PÁGINAS? LA TABLA DE PÁGINAS Si/no Nº marco PROGRAMA A MEMORIA VIRTUAL Tabla de páginas de un nivel. 5 4 3 2 1 0 6.378 1 0 567 1 0 34 1 2.364 1
  • 45. Tabla de páginas. Se ve la traducción para el caso de tabla de páginas de un nivel. Se dice que las páginas son de 2kb, por lo que los 11 bits inferiores de la dirección virtual sirven para especificar el Byte dentro de la página, mientras que el resto especifican la página virtual, que en la Fig. es la 5. En la posición nº 5 de la tabla se ve observa que la página está en memoria principal y que esta en el marco nº 6.378. Concatenando el número de marco con los 11 bits inferiores de la dirección virtual se obtiene la dirección de memoria principal donde resida la información. El inconveniente de una tabla de un nivel es su falta de flexibilidad. Toda memoria virtual asignada ha de ser contigua y la ampliación de memoria asignada solamente puede hacerse al final de la existente.
  • 46. Tabla de páginas. Un esquema de tabla de un nivel obliga a dejar grandes huecos de memoria virtual sin utilizar, están presentes en la tabla con el consiguiente desperdicio de espacio.. por lo que se usan esquemas de tablas de páginas de más de un nivel.
  • 47. Con este tipo de tabla, la memoria asignada está compuesta por una serie de bloques de memoria virtual, es decir, por segmentos. Tabla de páginas. Cada segmento esta formando por una serie contigua de bytes que puede variar su tamaño, siempre y cuando no choquen con otro segmento. La dirección se divide en tres partes. La primera identifica el segmento de memoria donde esta la información que desea acceder. Con este valor se entra en una sub-tabla de segmentos, que contiene un puntero por segmento, puntero que indica el comienzo de la sub-tabla de páginas del segmento. Con la segunda parte de la de la dirección se entra en la subtabla de páginas seleccionada. Esta subtabla es similar a la tabla mostrada, esto permite obtener el marco en el que está la información deseada. Se ha añadido a cada subtabla su tamaño. De esta forma se detectan las violaciones de memoria, producidas cuando el programa en ejecución intenta acceder una dirección que no pertenezca a los espacios asignados por el sistema operativo
  • 48. Traducción de direcciones La MMU se encarga de la traducción de las direcciones. Esta división de trabajo es necesaria puesto que la traducción de direcciones hay que hacerla de forma muy rápida para que no afecte negativamente al tiempo de acceso a la memoria La tabla de páginas es un estructura que mantiene el SO y reside en Memoria Principal. Para acceder a memoria hay que traducir la dirección virtual, lo que se supone realizar un acceso a memoria por cada nivel que tenga la tabla de páginas ¿CÓMO ES LA TRADUCCIÓN DE DIRECCIONES?
  • 49. CASO DE VARIOS PROGRAMAS ACTIVOS. ¿QUÉ SE ENTIENDE POR CASO DE VARIOS PROGRAMAS ACTIVOS? Cada uno de los programas ha de tener asignado un espacio de memoria, y a de tener su propia tabla de páginas La MMU utiliza la tabla de páginas correspondiente al programa que está en ejecución Varios programas activos.
  • 50. El procesador tiene un registro identificador de espacio de direccionamiento (RIED). Este registro contiene la dirección en la cual está almacenada la tabla de índices o segmentos del programa. Cuando el sistema operativo pone en ejecución un programa ha de actualizar el valor del RIED para que apunte a la tabla de páginas asignadas.
  • 51. ASIGNACIÓN DE MEMORIA PRINCIPAL Y VIRTUAL. ¿CÓMO ES LA ASIGNACIÓN DE MEMORIA? Asignación de memoria. Memoria principal. Memoria virtual En un sistema con memoria virtual, un programa en ejecución tiene asignado un espacio virtual, parte del cual reside en unos marcos de página de la memoria principal. Se denomina conjunto de trabajo de un programa e ejecución en el intervalo [k,q] al conjunto de páginas referenciadas entre el elemento k y el q de su traza. Se denomina conjunto residente R (t) a la parte del proceso que está realmente almacenada en memoria principal en el instante t.
  • 52. 1.7 ENTRADA - SALIDA
    • ¿Cuál es el objetivo los mecanismos de E/S de la computadora?
        • El intercambio de información entre los periféricos y la memoria y los registros del procesador.
    • ¿Cómo esta estructurado un periférico?
        • Esta compuesto por un dispositivo y su controlador; el controlador a su ves contiene registros de control, datos y estado.
  • 53. ENTRADA - SALIDA
    • Controlador
    • Dispositivo
    Registro de control Registro de datos Registro de estado Procesador Memoria
  • 54. ENTRADA - SALIDA
    • ¿Cuál es la importancia del disco magnético?
        • Es el periférico más importante, ya que sirve de espacio de intercambio a la memoria virtual y sirve de almacenamiento permanente para los programas y los datos.
    • ¿Cuáles son los 3 modos de E/S para realizar operaciones?
        • E/S programada.
        • E/S por interrupciones.
        • E/S por acceso directo a memoria (DMA)
  • 55. ENTRADA - SALIDA
    • ¿Cuál es la ocupación del procesador en operaciones de E/S?
    Procesador Controlador Controlador Procesador E/S por (DMA) Procesador Procesador Controlador Procesador E/S por interrupciones Procesador Procesador Procesador Procesador E/S programada Fin de operación Transferencia dato Espera dato Envió orden Operación
  • 56. 1.8 PROTECCIÓN. ¿A QUE SE REFIERE PROTECCIÓN? Protección. Es una de las funciones del SO. Hay que comprobarla en tiempo en tiempo de ejecución. Se basa en mecanismos hardware.
  • 57. MECANISMOS DE PROTECCIÓN DEL PROCESADOR. ¿CUÁLES SON MECANISMOS DE PROTECCIÓN DEL PROCESADOR.? Mecanismos de protección del procesador Se basan en los niveles de ejecución del mismo. En el nivel de ejecución de núcleo se pueden ejecutar todas las instrucciones de máquina y se pueden acceder a los registros y a la totalidad de los mapas de memoria y de E/S. En modo usuario se ejecuta un subconjunto de las instrucciones y se limitan los registros y los mapas accesibles. Los objetivos prioritarios de protección son los periféricos. Prohibiendo el acceso directo de los usuarios a los periféricos se impide que puedan acceder a la información almacenada por otros usuarios en esos periféricos.
  • 58. Mecanismos de protección de memoria. ¿CUÁLES SON MECANISMOS DE PROTECCIÓN DE MEMORIA? MECANISMOS DE PROTECCIÓN DE MEMORIA Deben evitar que un programa en ejecución direcciones posiciones de memoria que no le hayan asignadas por el SO. Una solución en algunas máquinas que no tienen memoria virtual consiste en incluir una pareja de registros valla. Memoria principal Región asignada al proceso A Registro limite Registro base Registros valla En los sistemas de memoria virtual existen dos mecanismos de protección de memoria.
  • 59. Mecanismos de protección de memoria. Mapa virtual de usuario A Mapa virtual Del SO. RIED Una solución es que en nivel de núcleo se pueda direccionar todo el mapa de memoria de virtual, mientras que en nivel de usuario solamente se pueda direccionar una parte del mapa. La MMU generará una excepción de violación de memoria en caso de que en nivel de usuario se genere una dirección no permitida.
  • 60. 1.9 MULTIPROCESADORES Y MULTICOMPUTADORAS ¿CÓMO FUNCIONA UN MULTIPROCESADOR? Máquina conformada por procesadores compartiendo una memoria principal común Procesador 1 Procesador 2 Procesador n Red de Conexión E/S Memoria Principal ………… .
    • El acceso a datos de varios programas es más sencillo
    • Es limitado el número de procesadores ya que satura el ancho de banda
    esquema
  • 61. ¿CÓMO FUNCIONA UNA MULTICOMPUTADORA? Máquina compuesta por varios nodos (cada uno con su procesador y memoria principal) Memoria principal Procesador Memoria principal Procesador Memoria principal Procesador Red de Conexión de Paso de Mensajes ………… .
    • No se puede compartir la memoria principal
    • No hay limitación de máquinas
    esquema
  • 62.
    • ¿Qué contiene una entrada de la tabla de vectores de interrupción?
    • El nombre de la rutina de tratamiento
    • La dirección de la rutina de tratamiento
    • El numero de la interrupción
    • El nombre de la tarea del SO que trata la interrupción
    • 2. ¿Cuál de las siguientes interrupciones máquina no debería ejecutarse en modo protegido? Razone su respuesta:
    • Inhibir interrupciones
    • Instrucción TRAP
    • Modificar el reloj del sistema
    • Cambiar el mapa de memoria.
    1. 10 EJERCICIOS DE APLICACIÓN
  • 63. 3. Considere un sistema con un espacio lógico de memoria de 128K paginas con 8KB cada una, una memoria física de 64MB y direccionamiento a nivel byte. ¿cuántos bits hay en la dirección lógica? 8000 x128 000 = 1024MB =1GB = 2 17 R= Hay 2 17 bits en la dirección lógica. 64 MB RAM 128 000 2 30 0 8KB páginas (p) 0 (m) 2 13 m – p = 30 – 13 = 17 2 2 = 1GB p = 8 KB = 2 13 m = 128 K = 2 30 DISCO
  • 64. 4. Sea un sistema de memoria virtual paginada con direcciones lógicas de 32 bits que proporciona un espacio virtual de 2 20 páginas y con una memoria física de 32MB ¿cuánto ocupara la tabla de marcos de página si cada entrada de la misma ocupa 32 bits? Proporción de espacio virtual = 2 20 = 1048575 Págs.= 1MB Direcciones lógicas 32 bits Memoria física 32 MB R= 2 12 = 4K tamaño ideal para la página. 32 MB RAM 1MB 2 20 0 2 32 = 4 GB (p) 0 (m) DISCO m – p = 32 – 20 = 12 2 2 = 4K 0 TABLA DE MARCOS DE PAGINA Guardan direcciones 0 2 32 1MB 2 20
  • 65. 5. Sea una computadora con memoria virtual y un tiempo de acceso a memoria de 70 ns. El tiempo necesario para tratar un fallo de página es de 9ms. Si la tasa de aciertos a memoria principal es de 98 por 100, ¿cuál será el tiempo medio de acceso a una palabra en esta computadora? DATOS OK = 70 ns X 100 (tiempo de acceso normal por el numero de aciertos) FALLO = 2 X 9 ms (numero de fallos por el tiempo de cada fallo) 70 ns = 1X 10 -9 ( convertir nanosegundos a segundos) 9 ms = 1X 10 -3 (convertir milisegundos a segundos) R= EL TIEMPO MEDIO DE ACCESO A UNA PALABRA ES DE 18.007 ms OPERACIONES 70X 10 -9 X100 + 2X9X 10 -3 100 = 7000 1000 000 000 18 1000 + 100 = 18007 1000 000 100 = 18007 100 000 000 = 1.8007X 10 -4
  • 66. 2.1 ¿QUÉ ES UNS SISTEMA OPERATIVO? ¿CUÁL ES EL CONCEPTO DE SISTEMA OPERATIVO? SISTEMA OPERATIVO Que tiene encomendadas una serie de funciones diferentes. Objetivo. Programa Simplificar el manejo y utilización de la computadora, haciéndolo seguro y eficiente. Las funciones clásicas del sistema operativo se pueden agrupar en las tres categorías siguientes:
      • Gestión de los recursos de la computadora.
      • Ejecución de servicios para los programas.
    • Ejecución de los mandatos de los usuarios.
    Su misión es: Completar a una máquina desnuda, mediante una serie de programas que permitan un cómodo manejo. Conjunto de subsistemas
    • Admón de memoria.
    • Admón de procesador.
    • Admón de dispositivos.
    • Admón de información
  • 67. MÁQUINA DESNUDA ¿QUE ENTIENDES POR MÁQUINA DESNUDA? Carente de sistema operativo. Solamente es capaz de repetir a alta velocidad la secuencia de: lectura de instrucción máquina, incremento del PC y ejecución de la instrucción leída. Una máquina desnuda es aquella Una
    • Para que realice una función determinada ha de tener:
      • una memoria principal,
    • un programa máquina especifico para realizar dicha función,
    • ha de conseguirse que el registro PC contenga la dirección de comienzo del programa.
    MÁQUINA DESNUDA = 100% HW
  • 68. FUNCIONES DEL SISTEMA OPERATIVO. ¿CONOCES LAS FUNCIONES DEL SISTEMA OPERATIVO? SISTEMA OPERATIVO Que tiene encomendadas una serie de funciones diferentes. Objetivo. Programa. Simplificar el manejo y utilización de la computadora, haciéndolo seguro y eficiente. Las funciones clásicas del sistema operativo se pueden agrupar en las tres categorías siguientes:
      • Gestión de los recursos de la computadora.
      • Ejecución de servicios para los programas.
    • Ejecución de los mandatos de los usuarios.
    Esta formado por 3 capas principales.
      • Núcleo (kernel)  gestiona recursos hardware del sistema y suministra la funcionalidad básica del sistema operativo.
    • Servicios o llamadas al sistema  ofrece a los programas unos servicios en forma de una interfaz de programación o API, esta capa extiende la funcionalidad de la computadora, o que el SO ofrece una máquina virtual extendida a los programas.
    • Intérprete de comandos o shell  suministra una interfaz en la cual el usuario puede dialogar de forma interactiva con la computadora, recibe los mandatos u órdenes del usuario, interpreta y, si puede los ejecuta.
  • 69.
    • En la siguiente figura se muestra como está formado el sistema operativo, con sus tres capas principales:
    USUARIOS. PROGRAMAS DE USUARIO. SHELL SERVICIOS NÚCLEO HARDWARE API SISTEMA OPERATIVO.
  • 70.
    • Las facetas del sistema operativo son tres y a continuación se describen:
    ¿CUÁLES SON LAS FACETAS DEL SISTEMA OPERATIVO? FACETAS DEL SISTEMA OPERATIVO
      • Asignación de recursos.
      • Protección.
      • Contabilidad.
    • Ejecución de Programas.
    • Órdenes de E/S.
    • Operaciones sobre Archivos
    • Detección y Tratamiento
    • de errores.
      • El módulo del sistema operativo que permite que los usuarios dialoguen de forma interactiva con el sistema es el intérprete de mandatos o shell.
      • Archivos de mandatos.
    El sistema operativo como gestor de recursos. El sistema operativo como máquina extendida El sistema operativo como interfaz de usuario.
  • 71.
      • Asignación de recursos.
    El sistema operativo como gestor de recursos. Como complemento a la gestión de recursos, el sistema operativo ha de garantizar la protección de unos programas frente a otros y ha de suministrar información sobre el uso que se hace de los recursos. debe mantener unas estructuras que le permitan saber qué recursos están libres y cuáles están asignados a cada programa. El sistema operativo se encarga de asignar los recursos a los programas en ejecución, por lo tanto Los recursos manejados por el sistema operativo son físicos y lógicos. En los físicos se encuentran el procesador, la memoria principal y los periféricos. Físicos Lógicos Entre los lógicos se pueden citar los archivos y puertos de comunicación.
  • 72. El sistema operativo como gestor de recursos.
      • Protección.
    El sistema operativo ha de garantizar la protección entre los usuarios del sistema. Permite que unos programas puedan acceder a los recursos asignados a otros programas. Se asegura la confidencialidad de la información y que unos trabajos no interfieran con otros.
      • Contabilidad
    Permite medir la cantidad de recursos que, a lo largo de su ejecución utiliza cada programa. se puede conocer la carga de utilización que tiene cada recurso y se puede atribuir a cada usuario los recursos que ha utilizado.
  • 73. El sistema operativo como máquina extendida Ofrece a los programas un conjunto de servicios o llamadas al sistema, que pueden solicitar cuando lo necesiten, proporcionando a los programas una visión de máquina extendida.
    • Ejecución de Programas.
    El sistema operativo incluye servicios para lanzar la ejecución de un programa, existen servicios para conocer y modificar las condiciones de ejecución de los programas, para comunicar y sincronizar unos programas con otros. Da lugar al concepto de proceso. El objetivo del proceso es crear, ejecutar y destruir procesos, de acuerdo a las órdenes de los usuarios. Para que un programa pueda convertirse en un proceso … ha de estar traducido ha código máquina y almacenando en un dispositivo de almacenamiento como el disco.
  • 74. El sistema operativo como máquina extendida
    • Órdenes de E/S.
    • Operaciones sobre
    • Archivos.
    • Detección y Tratamiento
    • de errores.
    Ofrecen una gran comodidad y protección al proveer a los programas de operaciones de lectura, escritura y modificación del estado de los periféricos. la programación de las operaciones de E/S es muy compleja y dependiente del hardware específico de cada periférico. Los archivos ofrecen un nivel de abstracción mayor que el de las órdenes de E/S, permitiendo operaciones tales como creación, borrado, renombrado, apertura, escritura y lectura de archivos El sistema operativo se encarga de tratar todas las condiciones de error que detecte el hardware. Entre las condiciones de error que pueden aparecer destacaremos las siguientes:
    • Operaciones de E/S,
    • errores de paridad en los accesos a memoria o en los buses y
    • errores de ejecución en los programas, como desbordamientos, violaciones de memoria, códigos de instrucción prohibidos, etc.
  • 75. El sistema operativo como interfaz de usuario.
    • El módulo del sistema operativo que permite que los usuarios dialoguen de forma interactiva con el sistema es el intérprete de mandatos o shell.
    El shell se comporta como un bucle infinito que esta repitiendo constantemente una secuencia. Analiza la orden y, en caso de ser correcta, la ejecuta, para lo cual emplea los servicios de sistema operativo. Concluida la orden vuelve a la espera. Espera una orden del usuario. Interfaz Textual el shell esta pendiente de lo que escribe el usuario en la línea de mandatos. interfaces gráficas Esta pendiente los eventos del apuntador (ratón) que manipula el usuario, además, de los del teclado.
  • 76.
    • Archivos de mandatos.
    El sistema operativo como interfaz de usuario. Casi todos los intérpretes de mandatos pueden ejecutar archivos de mandatos, shell scripts ; estos archivos incluyen varios mandatos totalmente equivalentes a los mandatos que se introducen en la Terminal para realizar funciones complejas, pueden incluir mandatos especiales del control del flujo de ejecución, como puede ser el go to, el for, o if, así como etiquetas para identificar líneas de mandatos.
  • 77. CONCEPTO DE USUARIO Y GRUPO DE USUARIOS.
    • Un usuario es:
    ¿QUÉ ES UN USUARIO? Persona autorizada para usar un sistema informático Se autentica mediante su nombre de cuenta y su contraseña o password. con el de la persona física, sino con un nombre de cuenta. El sistema operativo no asocia el concepto de USUARIO
  • 78.
    • Pero también una persona puede:
    más de una persona o usuarios. Es muy importante que la persona o personas que estén autorizadas para utilizar una cuenta de super-usuario sean de toda confianza y que las claves utilizadas sean difíciles de adivinar. Internamente, el sistema operativo asigna a cada usuario (cuenta) un identificador <<uid>> (user identifier) y un perfil. Puede tener más de una cuenta Puede ser usada por Pero esta Un Existe un usuario privilegiado denominado Super-usuario o administrador, que no tiene ninguna restricción, es decir, que puede hacer todas las operaciones, sin ninguna traba. Además como una buena norma de administración de sistemas, siempre se deberá utilizar la cuenta con los menos derechos posibles que permiten realizar la función deseada. Así se minimiza la posibilidad de cometer errores irreparables.
  • 79. LOS SISTEMAS OPERATIVOS Se pueden perfilar o caracterizar por número y tipo de usuarios. SISTEMAS OPERATIVOS MONOUSUARIO. MULTIUSUARIO. PC-DOS MS-DOS OS MAC/OS LINUX UNIX GUARDIAN
  • 80. 2. 2 ARRANQUE DE LA COMPUTADORA Y DEL SO
    • ¿Cuáles son las actividades que se realizan en el arranque?
    • Bajo el control Test del hardware
    • Del iniciador ROM Carga en memoria del cargador del SO
    • Bajo el control del cargador Carga en memoria componentes del SO (boot) del SO
    • Inicialización bajo el Test del sistema de archivos
    • Control de la parte Creación de estructuras de datos
    • Residente del SO Completa la carga del SO residente
    • Creación de procesos Login
  • 81. ARRANQUE DE LA COMPUTADORA
    • Explique como se realiza el arranque de Hardware
        • Cuando se arranca la computadora, se genera una señal eléctrica que carga unos valores predefinidos en los registros. En especial, esta señal carga en el contador del programa la dirección de comienzo del iniciador de ROM. De esta forma se cumplen todas las condiciones para que la computadora ejecute un programa y realice funciones útiles.
  • 82. ARRANQUE DE LA COMPUTADORA
    • Explique como se realiza el arranque del Sistema Operativo
        • El programa cargador del SO tiene por misión traer a memoria principal algunos de los componentes del SO. Una vez cargados estos componentes, se pasa a la fase de iniciación.
    • Programa cargador Disco
    • Sistema Operativo
  • 83. ARRANQUE DE LA COMPUTADORA
    • ¿Cuáles son las operaciones que se realizan en la fase de iniciación?
        • Comprobación del sistema
        • Se establecen las estructuras del SO.
        • La carga del Sistema operativo Residente.
        • Se crea un proceso de inicio para cada Terminal en el sistema.
  • 84. 2.3 COMPONENTES Y ESTRUCTURA DEL SISTEMA OPERATIVO.
    • Esta formado por una serie de componentes especializados en determinadas funciones.
    COMPONENTES DEL SISTEMA OPERATIVO. ¿CUÁLES SON LOS COMPONENTES DEL SO?
  • 85. COMPONENTES DEL SISTEMA OPERATIVO Un sistema operativo esta formado por tres capas.
      • el núcleo.
    Parte del sistema operativo que interacciona directamente con el hardware de la máquina. Las funciones del núcleo se centran en la gestión de recursos, como el procesador, tratamiento de interrupciones y las funciones básicas de la manipulación de memoria. Se suelen agrupar según su funcionalidad en varios componentes, cada uno de los cuales se ocupa de las siguientes funciones:
      • Gestión de Procesos.
      • Gestión de Memoria.
      • Gestión de la E/S.
    • Gestión de Archivos y directorios.
    • Comunicación y sincronización entre procesos.
      • Seguridad y Protección.
    El sistema operativo pude incluir varios intérpretes de mandatos, unos textuales y otros gráficos; el usuario elige el que más le interese.
      • el intérprete de mandatos o shell.
          • Servicios.
  • 86. COMPONENTES DEL SISTEMA OPERATIVO
      • Gestión de Procesos.
          • Servicios.
    • Comunicación y sincronización entre procesos.
      • Gestión de la E/S.
      • Gestión de Memoria.
    • Gestión de Archivos y directorios.
      • Seguridad y Protección.
    En cargado de la creación, planificación y destrucción de procesos. Componente encargada de saber que partes de memoria están libres y cuales ocupadas, así como las de asignación y liberación de memoria según la necesiten los procesos. se ocupa de facilitar el manejo de los dispositivos periféricos. Se encarga del manejo de archivos y directorios y de la administración del almacenamiento secundario. Encargada de ofrecer mecanismos para que los procesos puedan comunicarse y sincronizarse. Este componente debe encargarse de garantizar la identidad de los usuarios y de definir lo que pueden hacer cada uno de ellos con los recursos del sistema.
  • 87. ESTRUCTURA DEL SISTEMA OPERATIVO.
    • Cada sistema operativo estructura estos componentes de distinta forma. En función de esta estructura se pueden agrupar los sistemas operativos en dos grandes grupos:
    • Sistemas operativos monolíticos y
    • Sistemas operativos estructurados.
    SISTEMAS OPERATIVOS MONOLÍTICOS. ¿CUÁL ES LA ESTRUCTURA DE UN SISTEMA OPERATIVO?
  • 88. SISTEMAS OPERATIVOS MONOLÍTICOS. El sistema operativo puede incluir varios intérpretes de mandatos, unos textuales y unos gráficos, No tienen una estructura clara y bien definida, Esto les ha hecho evolucionar y crecer hasta convertirlos en programas grandes y complejos formados por muchas funciones situadas todas ellas en un mismo nivel. El problema que plantea este tipo de sistemas radica en lo complicado que es modificar el sistema operativo para añadir nuevas funcionalidades y servicios. Añadir una nueva característica a un so implica una gran modificación al programa, compuesto por miles de líneas de código fuente y funciones. En este tipo de sistemas no se sigue el principio de ocultación de información. Para solucionar este problema es necesario dotar de cierta estructura al so. 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.
  • 89. SISTEMAS OPERATIVOS ESTRUCTURADOS. Cuando se quiere dotar de estructura a un sistema operativo, normalmente se recurre a dos tipos de soluciones:
    • sistemas por capas y
    • sistemas cliente-servidor.
    • sistemas por capas
    se organiza como una jerarquía de capas, cada capa ofrece una interfaz clara y bien definida a la capa superior y solamente utiliza los servicios que le ofrece la capa inferior. La principal ventaja de esta estructura es La modularidad y la ocultación de la información. Una capa no necesita conocer como se ha implementado la capa sobre la que se construye, únicamente necesita conocer la interfaz que ofrece. Esto facilita enormemente la depuración y verificación del sistema, ya que las capas pueden ir construyendo y depurando por separado. Este modelo Utilizó por primera vez el sistema operativo THE, un sistema operativo sencillo que estaba formado por seis capas, como en la siguiente figura. Estructura por capas del sistema operativo THE Capa 0: hardware. Capa 1: planificación de la CPU y multiprogramación. Capa 2: gestión de memoria. Capa 3: controlador de la consola. Capa 4: gestión de la E/S. Capa 5: programas de usuario.
  • 90. SISTEMAS OPERATIVOS ESTRUCTURADOS.
    • sistemas cliente-servidor.
    El enfoque consiste en implementar la mayor parte de los servicios y funciones del sistema operativo en procesos de usuario, dejando una pequeña parte del sistema operativo ejecutando en modo núcleo A esta parte se le denomina micro-núcleo y a los procesos que ejecutan el resto de funciones se les denomina servidores en la siguiente figura se ve la estructura de un so cliente-servidor. esta formado por diversas partes, cada una de las cuales puede desarrollarse por separado.
  • 91. 2.4 GESTIÓN DE PROCESOS Conjunto de instrucciones máquina Surge cuando se pone un programa en ejecución ¿Qué es un proceso?
  • 92. ¿Qué elementos constituyen un proceso? Al contenido de los segmentos de memoria en los que reside el código y los datos del proceso se le denomina imagen de la memoria. El bloque de control de proceso (BCP) incluye, entre otra información, el estado de los registros del proceso, cuando este no esta ejecutando.
  • 93. Dependiendo del número de procesos y de usuarios que puedan ejecutar simultáneamente ¿Cómo pueden ser los sistemas operativos? Solo permite que exista un proceso en cada instante. Está previsto para soportar a un solo usuario Permite que coexistan varios procesos activos a la vez Soporta varios usuarios trabajando simultánea-mente desde varios terminales
  • 94. ¿Por qué fases esta constituida la vida de un proceso?
  • 95. ¿Qué servicios ofrece el sistema operativo para la gestión de procesos?
  • 96. ¿Cómo se da el servicio de crear un proceso?
  • 97. ¿Cómo se da el servicio de ejecutar un proceso?
  • 98. ¿Cómo se da el servicio de terminar la ejecución de un proceso?
  • 99. ¿En qué consiste el servicio de cambiar el programa de un proceso? Algunos sistemas operativos incluyen, además de los anteriores, un servicio que cambia el programa que está ejecutando un proceso por otro programa almacenado en disco. Cambiar el programa de un proceso No consiste en crear un nuevo proceso que ejecute ese nuevo programa. Se trata de eliminar el programa que está ejecutando el proceso y de incluir un nuevo programa que se trae de disco
  • 100. 2.5 GESTIÓN DE MEMORIA ¿De qué se encarga el gestor de memoria? El gestor de memoria es uno de los componentes principales del SO. Se encarga de las siguientes funciones
  • 101. ¿Qué servicios ofrece a los procesos, el gestor de memoria?
  • 102. ¿En qué consiste el servicio de solicitar memoria? Solicitar memoria Este servicio aumenta el espacio de datos de la imagen de memoria del proceso. El SO satisfará la petición siempre y cuando cuente con los recursos necesarios para ello. En general, el SO devuelve un apuntador con la dirección de la nueva memoria. El programa utilizará este nuevo espacio a través del mencionado apuntador, mediante direccionamientos relativos al mismo.
  • 103. ¿En qué consiste el servicio de liberar memoria?
  • 104. ¿En qué consiste el servicio de compartir memoria?
  • 105. 2.6 GESTIÓN DE ENTRADA-SALIDA
  • 106. Relojes, terminales, dispositivos de almacenamiento secundario y terciario, teclado etc ¿CUÁLES SON LAS VENTAJAS DE QUE EL SO GESTIONE A LOS DISPOSITIVOS DE E/S? S. O. Gestiona los recursos de la computadora DISPOSITIVOS PERIFÉRICOS Esto es que controla el funcionamiento de los dispositivos Ofrecer mecanismos de protección Se ofrece una interfaz sencilla, uniforme y fácil de utilizar entre dispositivos Impedir que los usuarios accedan sin control a los dispositivos periféricos Facilitar el manejo de los dispositivos de e/s VENTAJAS
  • 107. s. o ORIENTADA A CARACTERES ORIENTADA A BLOQUES Consiguen independencia en el acceso a los dispositivos modelándolos como archivos especiales. Ofrece servicios de lectura y escritura ¿QUÉ TIPO DE SERVICIOS OFRECE EL SO DE E/S? ¿QUÉ CONSIGUE CON ELLOS?
  • 108. ¿QUÉ ES UN SERVIDOR DE ARCHIVO? Visión Lógica Conjunto de objetos (archivos y directorios) identificados por un nombre Visión Física Significa como y donde están almacenados estos objetos Formado por: SERVICIO DE ARCHIVOS SERVICIO DE DIRECTORIOS 2.7 GESTIÓN DE ARCHIVOS Y DIRECTORIOS
  • 109. ¿QUÉ CONFORMA UN SERVICIO DE ARCHIVOS? Archivo : unidad de almacenamiento no volátil agrupado y etiquetado Propiedades
    • Tipo de archivo
    • Derechos de acceso
    • Instantes (creación, modificación o acceso)
    • Propietario
    • Tamaño
    Visión Lógica Visión Física Apunta a un puntero de posición Elementos físicos del periférico. Ejemplo un disco: Posición 0 0 1 2 3 n 18 2 0 3 4 1 8 9 Bloque: 1,4,18,8… Posición 0 18 2 0 3 8 Bloque: 1,4,18,8…
  • 110. ¿QUÉ CONFORMA UN SERVICIO DE DIRECTORIOS? Directorio : objeto que relaciona de forma unívoca un nombre con un archivo (no hay dos nombre iguales) Visión Física Visión Lógica Esquema jerárquico Relaciona nombre lógico con descripción física Pregunta Tache Palomita Tarea2 Tarea1 Premio1 Premio2 Directorio RAIZ Directorio relativo: Tarea 1 Directorio absoluto: Pregunta/Palomita/Tarea2 Tarea 2 Archivo Descripción .exe Tarea2.exe
  • 111. 2.8 COMUNICACIÓN Y SINCRONIZACIÓN ENTRE PROCESOS
    • ¿En que momento es necesario que dos o más procesos se comuniquen?
        • Es necesario, cuando se divide un trabajo complejo en varios procesos que cooperan entre si para realizar ese trabajo. Se deben de comunicar para trasmitir datos, ordenes y se deben sincronizar en la ejecución de sus acciones.
    Proceso de usuario Proceso de usuario SO
  • 112. COMUNICACIÓN Y SINCRONIZACIÓN ENTRE PROCESOS
    • ¿Qué fases presentan los mecanismos de comunicación y sincronización de procesos?
        • Creación del mecanismo.
        • Utilización del mecanismo.
        • Destrucción del mecanismo.
  • 113. COMUNICACIÓN Y SINCRONIZACIÓN ENTRE PROCESOS
    • ¿Cuáles son los servicios básicos de comunicación que incluyen todos los mecanismos de comunicación?
        • Crear. Permite que el proceso solicite la creación de un mecanismo.
        • Enviar o escribir. Permite que el proceso emisor envié información a otro.
        • Recibir o leer. Permite que el proceso receptor reciba información de otro.
        • Destruir. Permite que el proceso solicite la creación o destrucción del mecanismo
  • 114. COMUNICACIÓN Y SINCRONIZACIÓN ENTRE PROCESOS
    • ¿Cuál es la comunicación sincronía entre procesos?
        • Es donde los dos procesos han de ejecutar los servicios de comunicación al mismo tiempo, es decir, el emisor ha de estar en el servicio de enviar y el receptor ha de estar en el servicio de recibir.
    • ¿Cuál es la comunicación asíncrona entre procesos?
        • Es donde el emisor no tiene que esperar a que el receptor solicite el servicio recibir, hace el envió y sigue con la ejecución. Esto obliga a que el SO establezca un almacenamiento intermedio para guardar la información enviada hasta que el receptor la solicite.
  • 115. ¿EN QUE CONSISTE LA SEGURIDAD EN LOS SO? Identifica Usuarios Definir Accesos Verificar (persona, servicio o computadora) quien dice ser mediante un password o algún otro medio.
    • Privilegios : recursos que puede acceder el usuario:
    • Por recursos: asocia un listado de acceso de control a los recursos
    • Por usuarios: asocia listado de recursos (capacidades)
    2.9 SEGURIDAD Y PROTECCIÓN
  • 116. 2.10 ACTIVACIÓN DEL SISTEMA OPERATIVO Y LLAMADAS AL SISTEMA
  • 117. ¿CUÁLES SON LAS FASES DE ACTIVACIÒN DEL SISTEMA OPERATIVO?
    • Esta ejecutando un proceso A
    • En un instante se solicita la atención del SO
    • Este entra en ejecución y salva el estado en el bloque de control del proceso A
    • Realiza la tarea solicitada
    • Cuando finaliza, entra en acción el planificador, módulo del SO que selecciona un proceso B para ejecutar.
    • La actuación del SO finaliza con el activador, módulo que restituye los registros con los valores almacenados en el bloque de control del proceso de B
    • En este momento el contador marca la transición del SO a la ejecución del proceso B
    Proceso A Sistema operativo Proceso B Se solicita el SO Salva el estado del proceso A Realiza la función pedida Planificador activado Avanza la ejecución
  • 118. ¿DE DONDE PROVIENE EL TRABAJO QUE SE LE ASIGNA AL SISTEMA OPERATIVO?
    • El trabajo proviene:
    • Llamadas al sistema emitidas por los programas.
    • Interrupciones hechas por los periféricos
    • Condiciones de excepción o errores del hardware.
    La activación del SO solo se realiza a través de interrupciones Si el solicitante es un proceso en ejecución Utiliza instrucción TRAP que genera la interrupción pertinente. En cualquier otro caso Una interrupción interna o externa llamara la atención del SO S.O En espera de un trabajo Interrumpe para mandar trabajo
  • 119. ¿CÓMO SE SOLICITA EL SERVICIO DEL S.O CUANDO SE PROGRAMA EN LENGUAJE DE ALTO NIVEL COMO C? Cuando se codifica, al programador le parece que invoca al SO como a una función normal (fork()), pero no es así, ya que solo esta mandando a llamar una función que lo que hará será la solicitud de servicio al Sistema Operativo . FUNCIÓN fork() Debe contener El SO le devuelve un valor, como una función real Se encuentra en la biblioteca del sistema Sólo solicita NO realiza Se incluye en el código Se solicita servicio a través de:
    • A los parámetros para el SO
    • Instrucción TRAP que realiza el paso al SO
    • Devolver parámetros del SO al programa que lo solicitó.
  • 120. Int fork () // declaración de la función que SOLO SOLICITA el servicio { int r; LOAD R8 FORK_SYSTEM_CALL //carga un registro a la computadora TRAP //transfiere el control al SO LOAD r, R9 return (r ); } ¿CUÁL ES EL CÓDIGO DE LA FUNCIÓN QUE LLAMA AL SERVICIO DEL SO?
  • 121. 9) finalizando la ejecución de la función de biblioteca 1) Se declara la función que SÓLO SOLICITA el servicio del SO 2) Se carga un registro a la computadora (R8) 3) Se transfiere el control al SO para acceder al contenido del registro 4) identificar la llamada a ejecutar 5) realizar el trabajo 6) El control se transfiere de nuevo al proceso 7) se accede al registro R9 para obtener el valor devuelto 8) el valor se retorna ¿CÓMO TRABAJA DICHA FUNCIÓN EN EL PROGRAMA?
  • 122. FORK_SYSTEM_CALL R8 MODO USUARIO MODO NÚCLEO PROCESO N MEMORIA PROCESO 2 PROCESO 1 LOAD R8 FORK_SYSTEM_CALL TRAP LOAD r, R9 TABLA SERVICIO fork LOAD R9, resultado Retorno de TRAP SISTEMA OPERATIVO Rutina de biblioteca PROCESO DE USUARIO RUTINA DE BIBLIOTECA TRAP TRATAMIENTO DE INTERRUPCIÓN RUTINA DE SERVICIO PROCESO DE USUARIO SISTEMA OPERATIVO HW RESULTADO R9 1 2 3 4 5 6 7 GRÁFICO EJEMPLIFICANDO LLAMADA AL SISTEMA OPERATIVO
  • 123. 2.12 INTERFAZ DE USUARIO DEL SO E INTERFAZ DEL PROGRAMADOR
    • ¿ Cual es la interfaz del programador?
    • POXIS
    • Es el estándar de interfaz de SO portátiles de IEEE
    • basado en el SO UNIX.
    • Interfaz del
    • Programador
    • es la que recupera
    • Los servicios y llamadas
    • al sistema que los
    • usuarios pueden
    • utilizar directamente
    • desde sus programas. WIN32
    • Define los servicios ofrecidos por los sistemas Windows
    • 95/98, NT y 2000.
  • 124. INTERFAZ DE USUARIO DEL SISTEMA OPERATIVO
    • ¿Cuál es la principal misión de la interfaz de usuario?
        • Es permitir al usuario acceder y manipular los objetivos y recursos del sistema.
    • - Manipulación de archivos y directorios - Ejecución de programas
    • Interfaz del -Herramientas para el desarrollo de aplicaciones
    • Sistema -Comunicación con otros sistemas
    • -Información de estado del sistema
    • -Configuración de la interfaz y del entorno
    • -Intercambio de datos entre aplicaciones
    • -Control de acceso
    • -Sistema de ayuda interactivo
  • 125. INTERFAZ DE USUARIO DEL SISTEMA OPERATIVO
    • ¿Cuál es la principal característica de las interfaces alfanuméricas?
        • Es que su modo de trabajo esta basado en líneas de texto. El usuario para dar instrucciones al sistema, escribe en su Terminal un mandato terminado con un carácter de final de línea. Cada mandato esta normalmente estructurado con un nombre de mandato y unos argumentos.
  • 126. INTERFAZ DE USUARIO DEL SISTEMA OPERATIVO
    • ¿Cuál es el intérprete de mandatos en la interfaz alfanumérica?
        • Es un único programa que contiene el código para ejecutar todos los mandatos. El interprete, después de leer la línea tecleada por el usuario, determina de que mandato se trata y salta a la parte de su código que lleva a cabo la acción especificada.
  • 127. INTERFAZ DE USUARIO DEL SISTEMA OPERATIVO
    • ¿Cuáles son las características de las interfaces gráficas?
        • Las características comunes de este tipo de interfaces. En primer lugar todos ellos están basados en ventanas que permiten al usuario trabajar simultáneamente en distintas actividades. Así mismo se utilizan iconos y menús para representar los recursos del sistema y poder realizar operaciones sobre los mismos. El usuario utiliza un raros para interaccionar con estos elementos.
  • 128. INTERFAZ DE USUARIO DEL SISTEMA OPERATIVO
    • ¿Cuáles son las características de las interfaces gráficas?
  • 129. BIBLIOGRAFÍA: Carretero, Jesús y Pedro de Miguel Anasagasti, Félix García, Fernando Pérez Costiga. “SISTEMAS OPERATIVOS, UNA VISIÓN APLICADA”. Editorial Mac GrawHill. 1ra. Edición 2001. España UNIDAD 1, UNIDAD 2 Apuntes del curso de sistemas operativos impartido por la profesora Sara Méndez García