3_1 Software del Sistema Operativo -Estructura
Apoyo SSD2
Mtl Lourdes Cahuich 2
Introducción
El sistema operativo desempeña un papel vital que permite que los usuarios interactúen con un sistema computacional.
Aquí estudiaremos cuales son las responsabilidades específicas de un sistema operativo
Mtl Lourdes Cahuich 3
Estructura – introducción
El sistema operativo no es una sola entidad, sino una composición de muchas capas, cada una con su propia área de responsabilidad.
Las capas del sistema operativo y las aplicaciones que el usuario maneja son "tareas" o "procesos" que compiten para acceder el CPU y los demás recursos del hardware.
Mtl Lourdes Cahuich 4
Estructura - introducción
La responsabilidad primordial del sistema operativo consiste en administrar la competencia utilizando una programación de procesos adecuada, lo cual tiene gran impacto en el desempeño del sistema.
Mtl Lourdes Cahuich 5
Encapsulación y Abstracción
La Encapsulación significa que cada capa necesita una cantidad limitada de conocimiento para hacer su tarea, y ninguna otra capa tiene acceso a esa información.
Para que haya cierta cantidad de intercambio de información, pero no demasiada, el diseñador de la capa debe especificar una abstracción que la capa promete soportar
Mtl Lourdes Cahuich 6
Encapsulación y abstracción
Al existir abstracciones bien definidas en cada capa, una implementación puede ser reemplazada por otra sin afectar las capas superiores e inferiores
Mtl Lourdes Cahuich 7
Encapsulación y abstracción
En una computadora, es posible tener varias implementaciones o aplicaciones de un componente de software y cambiar de uno a otro.
Por ejemplo, un navegador de Internet le llama a un programa ayuda cuando necesita que se escuche un archivo de sonido o un clip de video.
Mtl Lourdes Cahuich 8
Encapsulación y abstracción
Hay varios programas que pueden desempeñar esta función, lo que tienes que hacer es indicarle al navegador cual programa de sonido quieres utilizar.
El aislamiento de funcionamiento significa que en caso de que haya un programa disponible de sonido mejor, tú puedes elegirlo; no tienes que cambiar de navegador.
Mtl Lourdes Cahuich 9
Capas de Software
Mtl Lourdes Cahuich 10
Capas de Software
El Hardware es la capa más baja de la computadora: los componentes físicos que lo constituyen
El BIOS, o Basic Input/Output System (Sistema Básico de Entrada/Salida), es la capa más fundamental del software. Esta capa trabaja directamente con las señales
que controlan los componentes del hardware.
Mtl Lourdes Cahuich 11
Capas de Software
Controladores de los Dispositivos (Drivers) Son los programas que ayudan al sistema operativo a comunicarse con los dispositivos de modelos específicos. Para agregar un dispositivo nuevo al hardware
es necesario que esté instalado el controlador del dispositivo en el disco duro
Mtl Lourdes Cahuich 12
Capas de Software
El núcleo es el corazón del sistema operativo y desempeña las funciones cruciales para que todo se mantenga operando. Administra la memoria, programa la secuencia
de las tareas, y maneja los diferentes tipos de interrupciones que pueden ocurrir.
Mtl Lourdes Cahuich 13
Capas de Software
El núcleo debe permanecer siempre en la memoria RAM y debido a su naturaleza, debe correr sin algunos de los mecanismos que protegen contra instrucciones erróneas o accesos ilegales de memoria
Mtl Lourdes Cahuich 14
Capas de Software
La capa restante del sistema operativo es mucho más grande que el núcleo. Esta capa lleva a cabo todas las demás
funciones que un sistema operativo debe realizar.
Por ejemplo, incluye un sistema de archivos para administrar las carpetas (folders) y los archivos en un disco
Mtl Lourdes Cahuich 15
Capas de Software
La Interfaz del Programa de Aplicación, o API, es la capa mediante la cual los programas del usuario (aplicaciones) se comunican con el sistema operativo.
Mtl Lourdes Cahuich 16
Capas de Software
Las Bibliotecas de Ejecución (Run-time) son colecciones de rutinas de software de las que dependen los programas de aplicación
En la capa de aplicación encontrarás las rutinas que hacen el trabajo para el cual las aplicaciones fueron creadas.
Mtl Lourdes Cahuich 17
Capas de Software
La capa de Interfaz del Usuario es responsable de la comunicación entre la aplicación y el usuario. Típicamente es una interfaz de usuario gráfico
(GUI) compuesta de botones y menús desplegables.
Mtl Lourdes Cahuich 18
Capas de Software
Muchas aplicaciones permiten a los usuarios crear scripts o macros. Estas son rutinas que utilizan el conjunto de
comandos de la aplicación para realizar una tarea determinada.
Los scripts y macros permiten a los usuarios automatizar las secuencias de acciones que llevan a cabo con frecuencia.
El BIOS
Vida en el fondo
Mtl Lourdes Cahuich 20
Introducción al BIOS
En esta sección, veremos la capa de más bajo nivel del software de la computadora: el BIOS o el Sistema Básico de Entrada y Salida.
El sistema BIOS desempeña tres grandes funciones: Inicializa el equipo de cómputo cuando se prende la
computadora, carga el sistema operativo y provee el soporte básico para los dispositivos como el
teclado, el ratón y los puertos seriales.
Mtl Lourdes Cahuich 21
BIOS
Al prender la computadora no hay sistema operativo en la memoria.
La memoria RAM está vacía. El sistema BIOS debe residir en otro tipo
de memoria para llevar a cabo su función.
Mtl Lourdes Cahuich 22
BIOS
El BIOS reside en un chip del la memoria ROM (memoria de sólo lectura) en la tarjeta principal.
La memoria ROM es permanenteAl encender la computadora, el
procesador automáticamente ejecuta las instrucciones del ROM.
Mtl Lourdes Cahuich 23
Examen POST
Al encender la computadora, el BIOS inicia su ejecución con el examen POST ("Power-On Self Test" o Examen de Encendido). Primero, el BIOS habilita la tarjeta de video (la pantalla
brilla) y se despliega información básica así como el tipo de tarjeta de video instalada, el nombre del fabricante del BIOS y la versión del BIOS.
Después determina la cantidad de DRAM instalado en el sistema y puede hacer un examen de memoria
Mtl Lourdes Cahuich 24
Examen POST
La configuración de la memoria y los resultados de los exámenes se desplegarán en la pantalla.
El BIOS verifica cuales tarjetas de expansión y adaptadores están presentes y los inicializa.
Para concluir la secuencia POST, el BIOS despliega la información de la configuración del sistema
Mtl Lourdes Cahuich 25
Examen POST
Una vez que se finaliza la secuencia POST, el siguiente trabajo del BIOS es cargar el programa que a su vez cargará al sistema operativo.
Control de proceso
Mtl Lourdes Cahuich 27
Introducción al control de procesos
Otra tarea del sistema operativo es estar al tanto de todos los procesos que tratan de ejecutarse en un momento dado, asegurando de que cada proceso tenga oportunidad de ejecutarse continuamente.
Un proceso es una instancia de un programa que se está ejecutando
Mtl Lourdes Cahuich 28
Procesos
El proceso incluye un conjunto de páginas de memoria, un conjunto de descriptores de archivos abiertos (si es el caso de que el proceso haga entradas/salidas), un identificador de proceso, entre otros.
El núcleo del sistema operativo mantiene una lista de cada proceso que se está ejecutando en el sistema
Mtl Lourdes Cahuich 29
Estados de los procesos
Cada proceso se puede encontrar en cualquiera de los siguientes estados: ejecutando, ejecutable o bloqueado
En una computadora con sistema operativo Windows puedes ver la lista de tareas y procesos que se están ejecutando al invocar al Administrador de Tareas (Task Manager).
Mtl Lourdes Cahuich 30
Multitasking
El núcleo del sistema operativo mantiene una cola (queue), también conocida como cola de ejecución, o lista de espera de procesos ejecutables.
Para dar la impresión de que todos los procesos corren simultáneamente, utiliza un truco llamado multitarea prioritaria (Preemptive Multitasking)
Mtl Lourdes Cahuich 31
Multitasking
Las interrupciones del reloj le permiten al núcleo la oportunidad de revisar la cola y ver si se le debe dar oportunidad de ejecutar algún otro proceso.
En caso que sí, el estado del proceso que corría en ese momento se baja del estado ejecutando a ejecutable; se anota el progreso de su ejecución y los contenidos de sus registros se almacenan para que se pueda continuar en un futuro
Mtl Lourdes Cahuich 32
Multitasking
Después, otro proceso de la cola se selecciona para ejecutarse.
Si el núcleo cambia de procesos con suficiente frecuencia, ante los ojos del usuario parece como que todos los procesos se están ejecutando al mismo tiempo
Mtl Lourdes Cahuich 33
Intercambio de contexto
El hecho de cambiar entre un proceso y otro requiere de un intercambio de contexto (context switch), el cual toma tiempo.
Para llevar a cabo un intercambio de contexto, el procesador debe limpiar la secuencia de instrucciones que está ejecutando, almacenar sus contenidos, cargar una nueva tabla de página, etc. Y esto implica una serie de costos de operación
Mtl Lourdes Cahuich 34
Implicaciones del multitasking
El tener varios procesos sale caro, ya que cada uno requiere su propio espacio de dirección, tabla de página, descripción de archivos, etc.
Y muchas tareas que implementan multitarea no requieren tanta división entre sus procesos.
Mtl Lourdes Cahuich 35
Implicaciones del multitasking
Por lo tanto, los sistemas operativos modernos ejecutan procesos ligeros, llamados hilos (threads), que tienen el mismo espacio para la dirección y comparten las mismas descripciones de archivos.
Top Related