Conceptos Clave de Sistemas Operativos: Estructura, Funciones y Gestión de Hardware

Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 4,82 KB

Estructura por Niveles de un Sistema Operativo

Los sistemas operativos modernos a menudo se estructuran en capas para gestionar la complejidad y aislar el hardware del software de nivel superior. Esta estructura incluye:

  • Capa de Abstracción de Hardware (HAL):
    • Aísla el sistema operativo de las diferencias de hardware específicas de cada plataforma.
  • Micronúcleo:
    • Contiene los componentes más usados y fundamentales del sistema operativo.
  • Controladores de Dispositivo:
    • Traducen las llamadas a funciones de E/S del usuario a peticiones específicas para los dispositivos de hardware de E/S.

Sistemas Operativos: UNIX y Windows

UNIX

  • El hardware está rodeado por el software del sistema operativo.
  • El sistema operativo se denomina núcleo (kernel).
  • Está equipado con varios servicios e interfaces, incluyendo:
    • Intérprete de órdenes (shell).
    • Compilador de C.

Unix: Sistema operativo monolítico.

Windows

Windows: Sistema operativo no monolítico.

Conceptos Clave en Sistemas Operativos

  • PID (Identificador de Proceso): Un número único asignado a cada proceso en ejecución.
  • Swap (Memoria de Intercambio): Espacio en disco utilizado para extender la memoria RAM.
  • Subrutina: Un subalgoritmo que forma parte del algoritmo principal (también llamado procedimiento, función o rutina).

Funciones de un Sistema Operativo

Un sistema operativo tiene varias funciones cruciales, entre ellas:

  • Controlar la entrada y salida (E/S).
  • Enviar comandos.
  • Recibir interrupciones.
  • Tratar los errores.
  • Presentar una interfaz al usuario.

Tipos de Dispositivos de E/S

Dispositivos de Bloques

  • Manejan bloques de tamaño fijo.
  • Permiten la lectura/escritura (L/E) de cada bloque de forma independiente.
  • Cada bloque es direccionable.

Dispositivos de Caracteres

  • No tienen una estructura de bloques.
  • La lectura/escritura se realiza en flujos de caracteres.

Memoria y Almacenamiento

Registros: Forman parte del espacio normal de direcciones de la memoria.

Ventajas del Disco sobre la Memoria

  • Mayor capacidad de almacenamiento.
  • Precio por bit más bajo.
  • La información no se pierde (persistencia).

Caché

Un caché es un componente que almacena datos temporalmente para que las futuras peticiones a esos datos puedan ser servidas más rápidamente.

  • Caché Web: Almacenamiento de documentos web (HTML, imágenes, etc.) en navegadores, buscadores y proxies web.
  • Caché de CPU: Caché utilizado por la CPU para reducir el tiempo promedio de acceso a la memoria.

Planificación de Disco

Búsquedas Solapadas

  • Mejoran el tiempo de acceso.
  • Permiten búsquedas simultáneas en dos o más unidades.
  • El controlador puede iniciar una búsqueda mientras espera que se complete otra.
  • No se pueden realizar dos lecturas o escrituras a la vez.

Algoritmos de Planificación de Disco

FCFS (First-Come, First-Served)

  • Primero en llegar, primero en servirse.
  • El manejador acepta las peticiones de una en una.
  • Sirve las peticiones en el orden de llegada.
  • No optimiza el tiempo de búsqueda.

SSF (Shortest Seek First)

  • Prioridad a la búsqueda más corta.
  • Utiliza una tabla de peticiones indexada por número de cilindro.
  • Mejora el tiempo de búsqueda seleccionando la solicitud al cilindro más cercano.
Problemas de SSF
  • El brazo tiende a quedarse en el centro en discos sobrecargados.
  • Las peticiones en los extremos pueden tener que esperar mucho.
  • No ofrece un servicio equitativo.

Técnicas de Optimización de Disco

Entrelazado (Interleaving)

Técnica utilizada para dar tiempo a transferir los datos del buffer interno a la memoria.

Tratamiento de Errores en Disco

Los errores en disco pueden clasificarse en:

  • Errores de programación.
  • Errores transitorios en el código de control.
  • Errores permanentes en el código de control.
  • Errores de búsqueda.
  • Errores en el controlador.

Errores de Programación

Ocurren cuando el controlador recibe órdenes del manejador con parámetros incoherentes, generalmente debido a fallos en el programa. El controlador debe devolver un código de error.

Entradas relacionadas: