Fundamentos de Sistemas Operativos: Gestión de Archivos y Memoria

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 5,08 KB

1. Gestión del Almacenamiento Persistente

1.1 Requisitos del Almacenamiento a Largo Plazo

  • Debe guardar gran cantidad de información.
  • Debe persistir después de finalizar el proceso.
  • Debe permitir acceso concurrente por múltiples procesos.

1.2 Dispositivos de Almacenamiento

  • Comunes: discos magnéticos, cintas, discos ópticos.
  • Operan con bloques de datos (leer/escribir por bloque).

1.4 Tipos de Archivos

  • Regulares: Contienen datos de usuario (ASCII o binarios).
  • Especiales (en UNIX): De caracteres (E/S en serie) y bloques (discos).
  • Ejecutables: Tienen formato y estructura interna reconocida por el sistema operativo.

1.5 Nombres y Extensiones (Resumen)

  • Extensiones como .txt, .c, .zip, .html indican el tipo de archivo.
  • Windows interpreta las extensiones; UNIX las trata como convenciones.

1.6 Estructura de Archivos

Se identifican varios modelos estructurales:

  • Secuencia de bytes (modelo más común: UNIX/Windows).
  • Registros fijos (modelo antiguo en mainframes).
  • Árbol de registros con llave (para búsquedas rápidas, usado en bases de datos).

1.7 Acceso a Archivos

Los métodos de acceso impactan directamente el rendimiento:

  • Secuencial: Lectura continua desde el inicio.
  • Aleatorio: Lectura desde cualquier posición (mediante la operación seek).

Los tipos de acceso se aplican según la aplicación (ej. las bases de datos requieren acceso aleatorio).

1.8 Atributos de Archivo (Resumen Teórico Corto)

  • Metadatos asociados: permisos, fechas, tamaño, tipo.
  • Ayudan a controlar la seguridad, las copias de seguridad (backups) y las actualizaciones.

1.10 Implementación del Sistema de Archivos

Métodos comunes para la asignación de espacio en disco:

Asignación de Bloques

  • Asignación Contigua: Bloques seguidos. Rápida, pero inflexible.
  • Listas Enlazadas: Bloques dispersos. Mayor flexibilidad.
  • FAT (File Allocation Table): Una tabla que enlaza los bloques de un archivo.
  • Nodos-i (Inodes): Estructura que guarda metadatos y punteros a los bloques (modelo UNIX).

Gestión de Bloques Libres

Métodos utilizados para rastrear el espacio disponible:

  • Mapa de bits.
  • Lista enlazada.

2. Administración de la Memoria Principal

2.1 Jerarquía de Memoria (¡Concepto Crucial!)

Organización de la memoria desde la más rápida y costosa hasta la más lenta y económica:

  1. Caché
  2. RAM (Memoria Principal)
  3. Disco
  4. Almacenamiento removible

El Sistema Operativo (SO) abstrae y gestiona esta jerarquía.

2.2 Sin Abstracción de Memoria

Cuando los programas acceden directamente a la memoria física:

  • Riesgo elevado de errores y conflictos entre procesos.
  • Imposibilidad de ejecutar más de un proceso de forma segura simultáneamente.

2.3 Espacios de Direcciones

Definición de la abstracción fundamental para la protección de la memoria:

  • Abstracción que proporciona a cada proceso su propia memoria virtual privada.
  • Impide que un proceso interfiera en la memoria de otro.
  • Se implementa típicamente con registros base y límite.

2.4 Técnicas de Protección

  • Llaves de Protección: Comparan claves del proceso con las de la memoria (ejemplo histórico: IBM 360).
  • Registros Base/Límite: Transforman direcciones lógicas a físicas y bloquean cualquier acceso que exceda el rango permitido.

2.6 Memoria Virtual

Técnica que:

  • Permite ejecutar programas que están solo parcialmente cargados en la RAM.
  • Mejora significativamente el uso de la memoria física disponible.

2.7 Administración de Memoria Libre

Representación del Espacio Libre

  • Mapa de Bits: Cada bit representa un bloque (0 = libre, 1 = ocupado).
  • Listas Ligadas: Se registran los procesos y los huecos; permite la unión de huecos contiguos.

Algoritmos de Asignación de Huecos

Estrategias para seleccionar el bloque de memoria libre adecuado:

  • Primer Ajuste (First Fit): Asigna el primer hueco que cumple el tamaño requerido.
  • Siguiente Ajuste (Next Fit): Similar a Primer Ajuste, pero continúa la búsqueda desde la última posición examinada.
  • Mejor Ajuste (Best Fit): Selecciona el hueco más pequeño que satisface la necesidad (puede generar mucha fragmentación pequeña).
  • Peor Ajuste (Worst Fit): Asigna el hueco más grande disponible, aunque no suele ser la estrategia más eficaz.

Entradas relacionadas: