Memoria computacional

Procesos. Contadores. Paginación. Búsquedas. FAT (File Allocation Table) 16. FAT (File Allocation Table) 32. NTFS. Clústeres

  • Enviado por: Me Quieres
  • Idioma: castellano
  • País: España España
  • 4 páginas
publicidad

Bloques de memoria

En un Sistema Operativo se ejecutan diferentes procesos constantemente. Las instrucciones que conforman los procesos, eventualmente, cambian el estado de la computadora y te devuelve un resultado. Cada uno de los procesos realizados son representados por una estructura (o tabla) llamada bloque de control del proceso o PCB (Process Control Block). El PCB se encarga de almacenar información relacionada a cualquier proceso realizado. El PBC contiene información como:

  • Estado del proceso: existen 5 estados en el cual un proceso se puede encontrar

      • Estado nuevo: se refiere a que el proceso está siendo creado (se le asigna una identificación “process ID” etc.).

      • Estado listo: el proceso puede ser ejecutado, sólo falta un procesador.

      • Estado en ejecución: el proceso está siendo ejecutado actualmente. En un sistema uniprocesador sólo se puede ejecutar un programa a la vez; al contrario de un sistema multiprocesador en el cual se pueden ejecutar múltiples procesos a la vez.

      • Estado en espera: el proceso se ha estado ejecutando, pero se encuentra en espera de que ocurra cierto evento. Usualmente espera el resultado de una operación de entrada/salida.

      • Estado de terminación: el proceso ha finalizado.

  • Contador del programa: indica la dirección de la próxima instrucción que el proceso ejecutará.

  • Registros del CPU: los registros incluyen acumuladores, registros índices, apuntadores de pilay registros de propósito general.

  • Información de planificación del CPU: se refiere a la prioridad de los procesos, y apuntadores según la planificación y orden de los procesos.

  • Información de administración de memoria: incluye la información sobre registros límites.

  • Información contable: incluye la información sobre el límite de tiempo real y del UPC utilizado y número de procesos.

  • Información del estado de la I/O: incluye los dispositivos de entrada y salida, las solicitudes de procesos de este tipo pendientes, archivos abiertos, etc.

Páginas

La paginación es la parte de la memoria virtual que maneja la transferencia de páginas entre las páginas en memoria y el almacenamiento en el disco. Usualmente se le define como una mezcla del mecanismo del hardware y las políticas del software. Los mecanismos del hardware ya que incluye la manera exacta en que la memoria virtual traduce las direcciones virtuales en direcciones físicas. Por otro lado, las políticas del software para determinar cuando subir la página a la memoria y dónde situarla.

La paginación no sugiere que todas las páginas de un programa se encuentren físicamente en la memoria. Al contrario, sugiere que sólo los bits que contienen el código que está siendo ejecutado y la data que está siendo accesada se encuentre físicamente en memoria; todo lo demás puede encontrarse en la memoria secundaria.

En la memoria virtual, las políticas o línea de conducta de la paginación explican como y cuando la paginación se realiza. Son las siguientes:

  • La política de búsqueda (Fetch policy): determina cuando se puede copiar una página desde el disco a la memoria. Si una dirección que no se encuentra en una página en memoria y es accesada se produce un defecto de paginación (page fault), por lo que es necesario que se busque la página deseada en el disco, esto se llama demanda de paginación (demand paging). Esta estrategia se hace con la intención de minimizar el numero de defecto de paginación (page fault) que el proceso pueda encontrar.

  • Política de posicionamiento (placement policy): se refiere al conjunto de reglas que deciden donde la página virtual será posicionada en la memoria.

  • Política de sustitución (replacement policy): define cual página virtual debe ser removida de la memoria para que de esta manera haya espacio para que suba una nueva página a la memoria.

FAT16 - FAT32 - NTFS

El término FAT proviene de “File Allocation Table”. El FAT es un sistema de archivo que se encarga primordialmente de almacenar los archivos en el disco de una manera eficiente. Todos los sistemas operativos tienen algún mecanismo para poder organizar el proceso de almacenamiento de los archivos. Miscrosoft tiene 3: FAT16, FAT32 y NTFS.

Para cada archivo almacenado en el disco, se crea un cluster. UN cluster es una agrupación de sectores en el disco duro, en dónde se alamacenan los archivos. Un sector es la mínima unidad de espacio en el disco duro que cualquier software puede accesar. El tamaño del cluster es determinado por el tamaño del disco: mientras más grande el disco, mayor el tamaño del cluster.

El sistema de almacenamiento de archivos en FAT16 (llamado de esta manera porque usa un número binario de 16 bits para determinar el número de clusters) se implementó en las nuevas versiones de DOS. FAT16 puede tener un máximo de 65,526 clusters (2^16) y se utiliza mayormente para discos duros con capacidad entre 16 MB y 2,048 MB.

FAT32 fue implementado por primera vez en la versión original de Microsoft Windows 95 y se convirtió en un estandard con Windows 98. Utiliza un número de cluster binario de 28 bits, a pesar de llamarse 32, por lo cual podríamos asumir que es de 32 bits. Esto se dese a que los 4 bits faltantes estan reservados. Este sistema de archivo puede manejar volúmenes de hasta 268 millones de clusters.

La diferencia entre FAT16 y FAT32 radica en la cantidad de cluster que tiene cada uno. FAT32 tiene una mayor cantidad de clusters que el FAT16. Esto hace que el número de particiones sea menor y que el aprovechamiento del espacio del disco duro sea más eficiente.

Para almacenar un archivo en FAT16 o FAT32 primero se define un espacio que tendrá el directorio raíz (donde se escribirán los nombres de los archivos). En este directorio se escribirá el nombre, fecha, atributos y cluster de comienzo del archivo en el disco. Según el tamaño del archivo se determinará el número de clusters que se hará para almacenar el archivo deseado. Windows almacena la información del nuevo archivo en el primer cluster disponible que se encuentre más cerca del comuienzo de la tabla. Luego continúa con el siguiente y así sigue el proceso hasta que el archivo sea almacenado completamente.

El NTFS (NT File System) es el más seguro de los sistemas de archivos implementado en los nuevos sistemas operativos de Microsoft: Windows NT y Windows 2000. A diferencia de los sistema de FAT, el NTFS es más seguro ya que provee una mayor seguridad al otorgar permisos a los usuarios (ya sean usuarios en grupo o individuales) al accesar los archivos. Sin embargo, NTFS tiene un mejor desempeño en el manejo de disco duros a partir de 500MB, por lo que FAT se maneja mejor en el manejo de discos de menor capacidad.

Para la recuperación de la información el sistema operativo de Windows se refiere al FAT para determinar los clusters en los cuales está almacenada la información que ha sido requerida. Al ser encontrada, esa información es devuelta. Si la tabla se corrompe y no se puede accesar los datos, con la opción de SCANDISK se puede recuperar el FAT corrupto.