Está en la página 1de 28

INSTITUTO TECNOLOGICO SUPERIOR DE PÁNUCO

CARRERA
Ingeniería Informática

MATERIA
Sistemas Operativos I

UNIDAD V
Sistemas de Archivos

INVESTIGACIÓN

ALUMNO
Erick Manuel Lara Diaz

DOCENTE
MTI. Ángela Perez Florentino

Pánuco, Ver a 21 de noviembre del 2019

1
Índice

Actividad 1. Definir la composición genérica, funciones y atributos de los sistemas

de archivos empleados en la industria.................................................................................... 3

Actividad 2. Investigar la arquitectura que siguen los sistemas de archivos. ........... 12

Actividad 3. Investigar las interfaces empleadas (funciones o llamadas al sistema)

para crear, escribir y leer un archivo. .................................................................................... 16

Actividad 4. Investigar los problemas que se presentan en la gestión de memoria,

aplicados a los sistemas de archivos, así como sus mecanismos de optimización.

........................................................................................................................................................... 21

Actividad 5. Plantear un caso de recuperación de datos en caso de falla en el

sistema de archivos y proponer dos soluciones diferentes. ........................................... 25

Referencias Bibliográficas. ....................................................................................................... 27

2
Actividad 1. Definir la composición genérica, funciones y atributos
de los sistemas de archivos empleados en la industria.

Los Sistemas Operativos que son utilizados con más frecuencia en la actualidad
son los siguientes:
 Microsoft Windows (En sur versiones 7, 8 y 10).
 GNU / Linux (En su distribución Manjaro Linux, Arch Linux, OpenSUSE,
SUSE Linux, Ubuntu, Debian GNU / Linux, Linux Mint).
 Android en sus últimas versiones.

A continuación, se menciona la composición genérica y atributos del sistema de


archivos de los S.O antes mencionados:

Microsoft Windows (Versiones 7, 8 y 10).

Composición genérica del Sistema de Archivos NTFS.


El sistema de archivos que se utiliza en las versiones 7, 8 y 10 es el NTFS (New
Technology File System), del cual se muestra a continuación su información:
NTFS permite el uso de nombres extensos, aunque, a diferencia de FAT32,
distingue entre mayúsculas y minúsculas.
En cuanto a rendimiento, el acceso a los archivos en una partición NTFS es más
rápido que en una partición de tipo FAT, ya que usa estructuras de datos avanzadas
(B+Tree) para localizar los archivos. En teoría, el tamaño límite de una partición es
de 16 exabytes (17 mil millones de TB). Este sistema como tal se basa en una
estructura llamada MFT (Master File Table), la que contiene información detallada
de los archivos.

*(Master File Table), Tabla Maestra de Archivos.


Archivo de sistema NTFS en volúmenes con formato NTFS, que contiene
información acerca de cada archivo y carpeta del volumen.
La tabla maestra de archivos es el primer archivo de un volumen NTFS.
Básicamente, constituye un directorio centralizado de todos los ficheros del disco y
de sí misma, haciendo referencia continuamente a ellos mientras el sistema localiza
información, la lee y la escribe en el disco.

3
*Composición de los archivos MFT.
Se divide en registros de un tamaño fijo (normalmente 1 Kbyte) y cada uno de ellos
corresponde a algún archivo. Los 16 primeros son propios e inaccesibles a través
del sistema operativo, son los llamados metafiles. Estos elementos de la MFT son
la única parte del disco que tiene una posición fija. Cada uno es responsable de
ciertos aspectos del funcionamiento del sistema. La ventaja radica en que exhiben
una flexibilidad asombrosa.
Por ejemplo, un fallo físico en el área de la FAT resultaría fatal para toda operación
en disco, mientras que NTFS puede desplazar e incluso fragmentar todas las áreas
de sistema del disco evitando cualquier daño en la superficie, exceptuando los
primeros 16 elementos de la MFT.

Funciones del Sistema de Archivos NTFS.


Todo lo que tiene que ver con los ficheros se almacena en forma de metadatos.
Esto permitió una fácil ampliación de características durante el desarrollo de
Windows NT. Un ejemplo lo hallamos en la inclusión de campos de indizados
añadidos para posibilitar el funcionamiento de Active Directory.
Los nombres de archivo son almacenados en Unicode (UTF-16), y la estructura de
ficheros en árboles-B, una estructura de datos compleja que acelera el acceso a los
ficheros y reduce la fragmentación, que era lo más criticado del sistema FAT.
Se emplea un registro transaccional (journal) para garantizar la integridad del
sistema de ficheros (pero no la de cada archivo). Los sistemas que emplean NTFS
han demostrado tener una estabilidad mejorada, que resultaba un requisito
ineludible considerando la naturaleza inestable de las versiones más antiguas de
Windows NT.
Sin embargo, a pesar de lo descrito anteriormente, este sistema de archivos posee
un funcionamiento prácticamente secreto, ya que Microsoft no ha liberado su
código, como hizo con FAT.
Gracias a la ingeniería inversa, aplicada sobre el sistema de archivos, se
desarrollaron controladores como el NTFS-3G que actualmente proveen a sistemas
operativos GNU/Linux, Solaris, MacOS X o BSD, entre otros, de soporte completo
de lectura y escritura en particiones NTFS.

4
Atributos del Sistema de Archivos NTFS.

 Control total: Cambiar permisos, tomas la propiedad y configurar las


acciones permitidas por todos los demás permisos NTFS.
 Modificar: Modificar, borrar el archivo y configurar las acciones permitidas
por el permiso de escritura, el de lectura y el de ejecución.
 Leer y ejecutar: Permiso para mostrar el contenido de una carpeta; para
mostrarlos datos, atributos, propietario y permisos para los archivos dentro
de la carpeta y para ejecutar archivos dentro de la carpeta.
 Lista de contenido de la carpeta: Permiso para mostrar el contenido de una
carpeta, así como mostrar los datos, atributos, propietario y permisos para
los archivos dentro de la carpeta.

GNU / Linux (En su distribución Manjaro Linux, Arch Linux, OpenSUSE,


SUSE Linux, Ubuntu, Debian GNU / Linux, Linux Mint).

Los sistemas de archivos que utilizan estas versiones son los siguientes:

1. EXT2 (Second Extended FileSystem).

El Segundo sistema de ficheros Extendido fue pensado (por Rémy Card) como un
sistema de ficheros extensible para Linux y es el sistema de ficheros que tuvo más
éxito en la comunidad Linux y es básico para todas las distribuciones actuales de
Linux.

El sistema de ficheros EXT2 se construye con la premisa de que los datos


contenidos en los ficheros se guarden en Bloques de Datos. Estos bloques de datos
son todos de la misma longitud y, si bien esa longitud puede variar entre diferentes
sistemas de ficheros EXT2 el tamaño de los bloques de un sistema de ficheros EXT2
en particular se decide cuando se crea (usando mke2fs). El tamaño de cada fichero
se redondea hasta un numero entero de bloques. Si el tamaño de bloque es 1024
bytes, entonces un fichero de 1025 bytes ocupará dos bloques de 1024 bytes.

5
No todos los bloques del sistema de ficheros contienen datos, algunos deben usarse
para mantener la información que describe la estructura del sistema de ficheros.
EXT2 define la topologia del sistema de ficheros describiendo cada uno de ellos con
una estructura de datos inodo.

Un Inodo describe que bloques ocupan los datos de un fichero y también los
permisos de acceso del fichero, las horas de modificación del fichero y el tipo del
fichero. Cada fichero en el sistema EXT2 se describe por un único inodo y cada
inodo tiene un único número que lo identifica. Los inodos del sistema de ficheros se
almacenan juntos en Tablas de inodos.

Los directorios EXT2 son simplemente ficheros especiales (ellos mismos descritos
por inodos) que contienen punteros a los inodos de sus entradas de directorio.

1.1 Estructura del Sistema de Archivos de EXT2.

El espacio en ext2 está dividido en bloques, y los bloques organizados en grupos,


análogamente los grupos de cilindro del sistema de archivos Unix. Esto se hace
para reducir la fragmentación externa y reducir al mínimo el número de búsquedas
de disco cuando se lee una gran cantidad de datos consecutivos.

Cada bloque contiene un superbloque grupo, el grupo de bloques de mapa de bits,


mapa de bits i-nodo, seguidos por los bloques de datos reales.

El superbloque contiene información importante que es crucial para el arranque del


sistema operativo, con lo que las copias se realizan en cada bloque de grupo de
cada bloque en el sistema de archivos. Sin embargo, sólo la primera copia de la
misma, que se encuentra en el primer bloque del sistema de archivos, se utiliza en
el arranque.

6
El grupo descriptor almacena el valor del bloque de mapa de bits, mapa de bits
inodo y el comienzo de la tabla de i-nodos por cada bloque de grupo y éstos, a su
vez, se almacena en un grupo descriptor tabla.

Dentro de cada inodo existe la siguiente información:

 Número de inodo
 Tipo de fichero
 Propietario de dicho fichero
 Permisos del fichero
 Fecha de creación del mismo

2. EXT3 (Third Extended FileSystem).

Es un sistema de archivos con registro por diario (journaling). Es el sistema de


archivo más usado en distribuciones Linux, aunque en la actualidad está siendo
remplazado por su sucesor, ext4. La principal diferencia con ext2 es el registro por
diario. Un sistema de archivos ext3 puede ser montado y usado como un sistema
de archivos ext2. Otra diferencia importante es que ext3 utiliza un árbol binario
balanceado (árbol AVL) e incorpora el asignador de bloques de disco Orlov.

Aunque su velocidad y escalabilidad es menor que sus competidores, como JFS,


ReiserFS o XFS, tiene la ventaja de permitir actualizar de ext2 a ext3 sin perder los
datos almacenados ni tener que formatear el disco. Tiene un menor consumo de
CPU y está considerado más seguro que otros sistemas de ficheros en Linux dada
su relativa sencillez y su mayor tiempo de prueba.

El sistema de archivo ext3 agrega a ext2 lo siguiente:

 Registro por diario, Índices en árbol para directorios que ocupan múltiples
bloques.
 Crecimiento en línea.

7
2.1 Funcionalidades del Sistema de Archivos EXT3.

Como ext3 está hecho para ser compatible con ext2, la mayoría de las estructuras
del archivación son similares a las del ext2. Por ello, ext3 carece de muchas
características de los diseños más recientes como las extensiones, la localización
dinámica de los inodos, y la sublocalización de los bloques. Hay un límite de 31998
subdirectorios por cada directorio, que se derivan de su límite de 32 links por inodo.

Ext3, como la mayoría de los sistemas de archivos actuales de Linux, no puede ser
chequeado por el fsck mientras el sistema de archivos está montado para la
escritura. Si se intenta chequear un sistema de ficheros que está montado puede
detectar falsos errores donde los datos no han sido volcados al disco todavía, y
corromper el sistema de archivos al intentar arreglar esos errores.

3. ReiserFS.

ReiserFS es un sistema de archivos de propósito general, diseñado e implementado


por un equipo de la empresa Namesys, liderado por Hans Reiser.

Actualmente es soportado por Linux y existen planes de futuro para incluirlo en otros
sistemas operativos. También es soportado por Windows (de forma no oficial),
aunque por el momento de manera inestable y rudimentaria (ReiserFS bajo
windows).

3.1 Composición del Sistema de Archivos ReiserFS.

ReiserFS almacena metadatos sobre los ficheros, entradas de directorio y listas de


inodos en un único árbol B+ cuya clave principal es un identificador único. Los
bloques de disco asignados a los nodos del árbol son los "bloques internos
formateados" y los bloques de las hojas son los "bloques de hojas formateados".

8
Todos los bloques restantes son los "bloques sin formatear", que contienen los
datos de los ficheros. Los directorios con muchas entradas, ya sean directas o
indirectas, que no caben en un solo nodo, se reparten con el nodo vecino de la
derecha. La asignación de bloques se lleva a cabo mediante un bitmap de espacio
libre almacenado en localizaciones fijas.

En contraste, ext2 y otros sistemas de ficheros, usan una fórmula fija para calcular
localizaciones de inodos, por lo que limitan el número de archivos que pueden
almacenar. Otros también almacenan los directorios como una simple lista de
entradas, lo que provoca que las búsquedas y modificaciones sean operaciones
lineales temporalmente y degradan el rendimiento de directorios con muchos
archivos. El árbol B+ en ReiserFS evita estos problemas.

3.2 Funcionalidades y Atributos del Sistema de Archivos ReiserFS.

ReiserFS ofrece funcionalidades que pocas veces se han visto en otros sistemas
de archivos:

 Journaling. Esta es la mejora a la que se ha dado más publicidad, ya que


previene el riesgo de corrupción del sistema de archivos.
 Reparticionamiento con el sistema de ficheros montado y desmontado.
Podemos aumentar el tamaño del sistema de ficheros mientras lo tenemos
montado y desmontado (online y offline). Para disminuirlo, únicamente se
permite estando offline (desmontado). Namesys proporciona las
herramientas para estas operaciones, e incluso, podemos usarlas bajo un
gestor de volúmenes lógicos como LVM o EVMS.
 Tail packing, un esquema para reducir la fragmentación interna.

9
4. Android

En primer lugar, hay que saber cómo se almacena Android y demás aplicaciones
en tu dispositivo físicamente.

Lo habitual es que cuente con una memoria interna física donde, por un lado, se
guardan todos los archivos y carpetas generados por Android, y por otro lado, se
guarda la memoria root (o root device) que son los archivos más importantes, la
estructura de ficheros del propio sistema Android.

Esta estructura es inaccesible y cómo mucho puedes saber cuánto ocupa desde
Almacenamiento y USB (aparece como root o como SO Android directamente).

Nota: con acceso root y el explorador de archivos adecuado, puedes acceder a ese
sistema de ficheros, pero no es recomendable a no ser que sepas al 100% lo que
estás haciendo.

Adicionalmente, la mayoría de dispositivos suelen tener una ranura donde insertar


una tarjeta SD, de mayor capacidad que la memoria interna y que es imprescindible
si guardas fotografías, vídeos, música o juegos.

4.1 Estructura de Archivos de Android.

Android está basado en Linux y entre sus particularidades, estructura todo en


carpetas, tanto hardware como software.

Esto significa que las unidades de disco, internas o externas, aparecen


representadas como una carpeta más. En Android ocurre igual, y de ahí que una de
las carpetas más útiles sea SDCARD, ya que ahí encontrarás las subcarpetas y
archivos guardados en tu tarjeta de memoria SD externa. Suele aparecer
directamente o dentro de las carpetas storage o mnt, según la versión de Android.

10
Tanto en la memoria interna como en esa carpeta SDCARD encontrarás las
habituales carpetas DCIM (fotografías realizadas con las cámaras integradas en tu
dispositivo Android) y otras como Download, Movies, Music, Video, Podcasts,
Ringtones o similares. Puedes encontrarlas en el directorio raíz o dentro de la
carpeta data.

Dentro de data encontrarás la carpeta app (sólo visible con permisos root o
administrador) donde se guardan las aplicaciones instaladas en Android.
Básicamente son archivos APK que, a su vez, contienen los archivos y carpetas que
forman parte de la aplicación.

En /data/data es posible encontrar las configuraciones guardadas por las


aplicaciones que utilizas en Android, así como los contactos almacenados. Estos
últimos están en una carpeta cuyo nombre varía en función del fabricante de tu
dispositivo Android.

11
Actividad 2. Investigar la arquitectura que siguen los sistemas de
archivos.

1. Archivo Secuencialmente Indexado.

Los registros se organizan en una secuencia basada en un campo clave


presentando dos características, un índice del archivo para soportar los accesos
aleatorios y un archivo de desbordamiento. El índice proporciona una capacidad de
búsqueda para llagar rápidamente al registro deseado y el archivo de
desbordamiento es similar al archivo de registros usado en un archivo secuencial,
pero está integrado de forma que los archivos de desbordamiento se ubiquen
siguiendo un puntero desde su registro predecesor.

La estructura más simple tiene como índice un archivo secuencial simple, cada
registro del archivo índice tiene dos campos, un campo clave igual al del archivo
principal y un puntero al archivo principal. Para encontrar un campo especifico se
busca en el índice hasta encontrar el valor mayor de la clave que es iguale o precede
al valor deseado de la clave, la búsqueda continua en el archivo principal a partir de
la posición que indique el puntero.

Cada registro del archivo principal tiene un campo adicional que es un puntero al
archivo de desbordamiento. Cuando se inserta un nuevo registro al archivo, también
se añade al archivo de desbordamiento. El registro del archivo principal que precede
inmediatamente al nuevo registro según la secuencia lógica se actualiza con un
puntero del registro nuevo en el archivo de desbordamiento, si el registro
inmediatamente anterior está también en el archivo de desbordamiento se
actualizará el puntero en el registro. Para procesar secuencialmente un archivo
completo los registros del archivo principal se procesarán en secuencia hasta
encontrar un puntero al archivo de desbordamiento, el acceso continúa en el archivo
de desbordamiento hasta que encuentra un puntero nulo, entonces renueva el
acceso donde se abandonó en el archivo principal.

12
2. Archivo Secuencial.

Es la forma básica de organizar un conjunto de registros, que forman un archivo,


utilizando una organización secuencial. En un archivo organizado secuencialmente,
lo registros quedan grabados consecutivamente cuando el archivo se utiliza como
entrada. En la mayoría de los casos, los registros de un archivo secuencial quedan
ordenados de acuerdo con el valor de algún campo de cada registro. Semejante
archivo se dice que es un archivo ordenado; el campo, o los campos, cuyo valor se
utiliza para determinar el ordenamiento es conocido como la llave del ordenamiento.
Un archivo puede ordenarse ascendente o descendentemente con base en su llave
de ordenamiento.

La forma más común de estructura de archivo es el archivo secuencial. En este tipo


de archivo, un formato fijo es usado para los registros. Todos los registros tienen el
mismo tamaño, constan del mismo número de campos de tamaño fijo en un orden
particular. Como se conocen la longitud y la posición de cada campo, solamente los
valores de los campos se necesitan almacenarse; el nombre del campo y longitud
de cada campo son atributos de la estructura de archivos.

Una característica de los archivos secuenciales es que todos los registros se


almacenan por posición: de primer registro, segundo registro etc.

Los archivos secuenciales proveen la mejor utilización de espacio y son rápidos


cuando los registros son accesados secuencialmente.

Los archivos con poca volatilidad, gran actividad y tamaño variable son altamente
susceptibles de ser organizados secuencialmente.

La ventaja más importante de la técnica de organización secuencial de archivos es


la capacidad de acceso al "siguiente" registro rápidamente: Mientras que el patrón
de acceso a un archivo secuencial se conforme al ordenamiento de registros en el
archivo, los tiempos de acceso serán muy buenos.

13
3. Archivo Particionado.

BPAM manipula bloques de datos y produce una salida y entrada de datos.


Construye y causa la escritura de entradas en el directorio como una salida de
información mientras que la búsqueda y la lectura de las entradas del directorio
como una entrada de información. Finalmente es más flexibilidad que algunos otros
métodos de acceso. También organiza registros como miembros de un conjunto de
datos particionados (PDS) o un conjunto de datos particionados extendido (PDSE).
Este método se puede usar para ver un directorio de UNIX y sus archivos como si
fuera un conjunto de datos particionados. Puede ver cada miembro de PDS, PDSE
o UNIX de forma secuencial se puede hacer con este método o con el método de
acceso en cola secuencial. Un conjunto de datos particionados o un conjunto de
datos particionados extendidos incluye un directorio que relaciona los nombres de
los miembros con las ubicaciones dentro del conjunto de datos.

A continuación, se describen algunas de las características de los PDS, PDSE y


archivos UNIX:

Conjunto de datos particionados: Los PDS pueden tener cualquier tipo de registros
secuenciales.

Partición de conjunto de datos extendido: Un PDSE tiene un formato de


almacenamiento interno diferente que un PDS, lo que le da a PDSE características
de usabilidad mejoradas. Puede usar un PDSE en lugar de la mayoría de los PDS,
pero no puede usar un PDSE para ciertos conjuntos de datos del sistema.

Archivos UNIX: Los archivos UNIX son flujos de bytes y no contienen registros. El
método de acceso básico particionado (BPAM) convierte los bytes de los archivos
UNIX en registros. Puede usar BPAM para leer, pero no para escribir en archivos
UNIX.

El método de acceso básico particionado comparte características con el método


de acceso básico secuencial (BSAM).

14
4. Arquitectura de Pila.

Con la llegada de los dispositivos de acceso directo (como los discos magnéticos),
surgió la forma de acceso directo, o aleatorio, a un archivo. El archivo se considera
como un conjunto de registros, cada uno de los cuales puede ser un byte. Se puede
acceder al mismo desordenadamente moviendo el apuntador de acceso al archivo
a uno u otro registro. Esta forma de acceso se basa en un modelo de archivo
almacenado en disco, ya que se asume que el dispositivo se puede mover de forma
aleatoria entre los distintos bloques que componen el archivo.

Organiza registros en cualquier secuencia que indique su programa, y recupera


registros por dirección relativa. Si no conoce la ubicación exacta de un registro,
puede especificar un punto en el conjunto de datos donde comenzará la búsqueda
del registro. Los conjuntos de datos organizados de esta manera se llaman
conjuntos de datos directos.

Direccionamiento relativo al PC, donde se forma una dirección sumando una


constante, que está en la instrucción, con el registro PC (Program Counter). El
resultado de la suma corresponde a la dirección destino.

15
Actividad 3. Investigar las interfaces empleadas (funciones o
llamadas al sistema) para crear, escribir y leer un archivo.

Las llamadas al sistema de archivo para realizar la creación, escritura y lectura de


un archivo son las siguientes:

Open

La llamada al sistema open es el primer paso que debe ejecutar todo proceso que
quiera acceder a los datos de un archivo. Su sintaxis es:

fd = open (pathname, flags, modes);

donde:

pathname: nombre del archivo.

flags: modo de apertura, para lectura, escritura, etc.

modes: permisos del archivo en caso de que se deba crear.

fd: entero que representa el descriptor del archivo.

read

Su sintaxis es:

number = read (fd, buffer, count);

donde:

fd: descriptor de archivo que devuelve la llamada open

buffer: dirección del buffer donde se van a colocar los datos leídos

16
count: número de bytes que el usuario quiere leer

number: número de bytes leídos si es positivo en caso contrario la ejecución


no ha sido correcta.

write

La sintaxis es:

number=write (fd, buffer, count);

Donde el significado de las variables es el mismo que para la llamada al


sistema read. El algoritmo que utiliza el sistema operativo para escribir un
archivo es similar al que utiliza para leerlo.

close

Un proceso cierra un archivo cuando no lo va a utilizar más. La sintaxis de la


llamada close es:

close(fd);

Donde fd es el descriptor del archivo.

17
Sintaxis en Java para Crear un Archivo:

import java.io.BufferedWriter;

import java.io.File;

import java.io.FileWriter;

public class CrearArchivo {

public static void main(String ars[]){

try {

String ruta = "/ruta/filename.txt";

String contenido = "Contenido de ejemplo";

File file = new File(ruta);

// Si el archivo no existe es creado

if (!file.exists()) {

file.createNewFile();

FileWriter fw = new FileWriter(file);

BufferedWriter bw = new BufferedWriter(fw);

bw.write(contenido);

bw.close();

18
} catch (Exception e) {

e.printStackTrace();

Sintaxis en Java Leer un archivo.

import java.io.File;

import java.util.Scanner;

public class LeerArchivo {

public static void main(String[] args) {

try {

Scanner input = new Scanner(new File("/ruta/filename.txt"));

while (input.hasNextLine()) {

String line = input.nextLine();

System.out.println(line);

19
input.close();

} catch (Exception ex) {

ex.printStackTrace();

Sintaxis para Escribir en un Archivo de Texto.

String sFichero = "fichero.txt";

File fichero = new File(sFichero);

if (fichero.exists()) {...}

BufferedWriter bw = new BufferedWriter(new FileWriter(sFichero));

for (int x=0;x<10;x++)

bw.write("Fila numero " + x + "\n");

20
Actividad 4. Investigar los problemas que se presentan en la
gestión de memoria, aplicados a los sistemas de archivos, así
como sus mecanismos de optimización.

Los problemas que se presentan continuamente dentro de un Sistema Operativo en


cuanto a Sistemas de archivos se refiere son los siguientes:

1. Desbordamiento de un sistema de archivos definido por el usuario.


2. Sistema de Archivos dañados.
3. Número mágico dañado en el superbloque del Sistema de Archivos.

Los métodos y técnicas que se utilizan en la actualidad para la optimización de los


sistemas de archivos son los siguientes:

1. Uso del cache.


2. Lectura adelantada de bloques.
3. Reducción del movimiento del brazo de disco.
4. Implementación de directorios.
5. Prestaciones en Sistemas de Archivos.
6. Sistemas de Archivos estructurados por registro.
7. Sistemas de Archivos por bitácoras.
8. Sistemas de Archivos virtuales.
9. DOS (Disk Operating System).

Uso de Cache.

Muchos sistemas de archivos se diseñan de modo que intenten reducir el número


de accesos a disco necesarios. La técnica del búfer o bloque oculto (“block cache”
o “buffer cache”) se fundamenta en que el tiempo que se tarda en leer un sector y
una pista completa es prácticamente el mismo (varía en ½ rotación). Para ello, se
utiliza una caché, que estará formada por una colección de bloques que pertenecen
lógicamente al disco, pero que se guardan en memoria por razones de eficiencia.

21
Lectura adelantada de Bloques.

Una segunda técnica para mejorar el rendimiento percibido por el sistema de


archivos es tratar de colocar bloques en la caché antes de que se necesiten, para
incrementar la proporción de aciertos. En especial, muchos archivos se leen en
forma secuencial. Cuando se pide al sistema de archivos que produzca el bloque k
en un archivo, hace eso, pero cuando termina realiza una verificación disimulada en
la caché para ver si el bloque k 1 ya está ahí.

Reducción del movimiento del brazo en disco.

Otra técnica importante es reducir la cantidad de movimiento del brazo del disco, al
colocar los bloques que tengan una buena probabilidad de utilizarse en secuencia
cerca unos de otros, de preferencia en el mismo cilindro. Cuando se escribe un
archivo de salida, el sistema de archivos tiene que asignar los bloques uno a la vez,
bajo demanda. Si los bloques libres se registran en un mapa de bits y todo el mapa
de bits se encuentra en la memoria principal, es bastante sencillo elegir un bloque
libre lo más cerca posible del bloque anterior.

Implementación de Directorios.

Para poder utilizar un archivo primero debe ser abierto, para esto el sistema
operativo utiliza el nombre del archivo en cuestión para localizar la entrada del
directorio. Esta entrada provee la información necesaria para encontrar todos los
bloques del archivo. Por lo tanto, la función principal de un sistema de directorios es
realizar la asociación del nombre del archivo y la información necesaria para obtener
todos sus datos.

22
Prestaciones en Sistemas de Archivos.

Con el avance de los sistemas de archivos fueron surgiendo nuevos tipos que
resuelven los problemas antes planteados y agregan nuevas prestaciones. Algunas
de estas nuevas prestaciones son utilizar la caché de disco de una manera más
efectiva, garantizar la integridad (recuperación de fallos) y proveer una interfaz
virtual para trabajar con distintas implementaciones de sistemas de archivos.

Sistemas de Archivos estructurados por Registro.

El tipo de sistemas de archivos estructurado por registro nació como consecuencia


del incremento de la velocidad de las CPU, del incremento en el tamaño de las
memorias RAM y del incremento en el tamaño de las cache de disco. En
consecuencia, es posible satisfacer gran parte de las lecturas a disco desde la
caché sin tener que acceder al disco.

Sistemas de Archivos por Bitácoras.

Aunque los sistemas de archivos estructurados por registro son una idea
interesante, no se utilizan ampliamente, debido en parte a su alta incompatibilidad
con los sistemas de archivos existentes. Sin embargo, una de las ideas inherentes
en ellos, la robustez frente a las fallas, se puede aplicar con facilidad a sistemas de
archivos más convencionales. La idea básica aquí es mantener un registro de lo
que va a realizar el sistema de archivos antes de hacerlo, por lo que, si el sistema
falla antes de poder realizar su trabajo planeado, al momento de re arrancar el
sistema puede buscar en el registro para ver lo que estaba ocurriendo al momento
de la falla y terminar el trabajo.

23
Sistemas de Archivos Virtuales.

A menudo en una computadora hay más de un sistema de archivos instalado, los


sistemas operativos controlan este aspecto de determinadas maneras, lo que se
busca con un sistema de archivos virtual (VFS) es integrar diferentes sistemas de
archivos en una unidad ordenada. La idea principal (y clave) es poner todo lo que
es compartido por todos los sistemas de archivos en una capa separada que llame
a los sistemas de archivos concretos subyacentes para administrar los datos.

DOS (Disk Operating System).

Las unidades de almacenamiento son los llamados clúster, estos son conjuntos de
sectores del disco (cada sector tiene 512 bytes) que dependiendo de determinados
parámetros (como el tamaño del disco) pueden ser: dos, cuatro, ocho, etcétera
sectores por clústeres (siempre potencia de dos). Los directorios son de longitud
variable, pero tienen entradas o registros de longitud la de 32 bytes que contiene
los datos del archivo al que referencia.

24
Actividad 5. Plantear un caso de recuperación de datos en caso de
falla en el sistema de archivos y proponer dos soluciones
diferentes.

Se presenta un caso en donde se tiene un archivo, el cual no se le puede realizar ni


una acción de lectura, escritura, etc. Esto se debe a que el sistema de archivos no
está trabajando correctamente al leer este tipo de archivos. Lo anterior provoca que
las imágenes contenidas dentro de dicho archivo no se puedan abrir debido a que
en los procesos de restauración que se aplicaron, hubo una pérdida de información,
de ciertos paquetes contenedores de la información.

A lo anterior se presentan las posibles soluciones:

1. Se procede a realizar una copia de seguridad de nuestro sistema de archivos,


en el cual cada determinado tiempo se crea un punto de restauración local y
cada cierto tiempo se crea un punto de restauración que puede ser utilizado
más adelante para un caso de recuperación de información, este punto de
restauración se ejecutara en el modo arranque de nuestra computadora, para
después en conjunto con algún programa de restauración de información
ejecutado de manera externa con algún dispositivo de almacenamiento (USB
o disco), se proceda a la restauración o instalación del sistema anteriormente
respaldado.
2. Se puede utilizar las herramientas de recuperación de archivos de terceras
personas, como por ejemplo las aplicaciones como son Recuva, Mobisaver,
Disk Drill, ApowerRescue, entre otras. Estas herramientas nos proporcionan
una interfaz mediante la cual se implementa un algoritmo de recuperación de
archivos que generalmente se tratan dentro de la Inteligencia Artificial.
El procedimiento básico de recuperación que utilizan estas aplicaciones es
el siguiente: como primer punto se aceza en modo arranque a nuestro
sistema operativo, una vez dentro el software continua con la búsqueda de
los formatos de nuestro sistema de archivos, y posteriormente empieza la
búsqueda de archivos que fueron indexados mediante las paginaciones en
procesos anteriores de la memoria, como último punto la información que fue

25
recuperada dentro de estos índices se procesa mediante la consola de
Windows, Shell de Linux, o el sistema operativo que estemos utilizando, y
ciertos comandos establecidos dentro de los algoritmos, para que la
información empaquetada en archivos contenedores de Bytes de información
se muestre como tal a un archivo en su interfaz gráfica. Dependiendo de los
totales de Bytes que se recuperen será la interfaz y el formato que nos
proporcionara dentro del archivo que recuperemos.

26
Referencias Bibliográficas.

Stallings, W. (2005). Sistemas Operativos. Pearson Educación, S.A., Madrid:


Pearson Prentice Hall.

Jesús Manuel Silva Martinez. (2015). Sistemas operativos. Ciudad de


Mexico: ALFAOMEGA GRUPO EDITOR.

Gómez, J. (2011). Administración de Sistemas Operativos. Un enfoque


Práctico. España: Ra - Ma.

Tanenbaum, A. (2009). Sistemas Operativos Modernos. 3era Edición. Chile:


Prentice Hall.

Escuela de Negocios AEA. (2019). Cuatro Sistemas Operativos que debes


de conocer. Noviembre 21, 2019, de EAE Business School Sitio web:
https://www.eaeprogramas.es/empresa-familiar/cuatro-sistemas-operativos-
que-debes-conocer

GlosarioIT. (2014). MFT - Sección Informática. Noviembre 21, 2019, de


GlosarioIT.com Sitio web: https://www.glosarioit.com/MFT

Hernández, J. (2017). Permisos NFTS. Noviembre 21, 2019, de


MTASecurityFundamentals Sitio web: https://juancenteno.info/permisos-ntfs/

Fernandez, M. (2018). NTFS. Noviembre 21, 2019, de EcuRed Sitio web:


https://www.ecured.cu/NTFS#Estructura

Wikipedia®. (2019). NTFS. Noviembre 21, 2019, de Fundación Wikimedia,


Inc Sitio web: https://es.wikipedia.org/wiki/NTFS

Lara, G. (2018). Sistema de Archivos. Noviembre 21, 2019, de Google Sites


Sitio web: https://sites.google.com/site/is23windows7/sistema-de-archivo

Perez, S. (2018). Ext2. Noviembre 21, 2019, de EcuRed Sitio web:


https://www.ecured.cu/Ext2

Lopez, J. (2017). Anatomía de Android: dónde se guardan tus contactos,


fotos y aplicaciones. Noviembre 21, 2019, de Blogthinkbig Sitio web:
https://blogthinkbig.com/anatomia-de-android-donde-se-guardan-tus-
contactos-fotos-y-aplicaciones

27
Wikipedia®. (2019). ReiserFS. Noviembre 21, 2019, de Fundación
Wikimedia, Inc Sitio web: https://es.wikipedia.org/wiki/ReiserFS

Etienne, H. (2018). Ext3. Noviembre 21, 2019, de EcuRed Sitio web:


https://www.ecured.cu/Ext3

Sánchez, G. (2018). Tipos de Sistemas de Archivos en Linux. Noviembre 21,


2019, de Mural UV Sitio web:
http://mural.uv.es/oshuso/822_tipos_de_sistemas_de_ficheros_en_linux.ht
ml

López, F. (2016). Archivo Secuencial Indexado. Noviembre 11, 2019, de


SlideShare Sitio web: https://es.slideshare.net/Tortuly/archivo-secuencial-
indexado-60359669

Arteaga, J. (2009). Archivos Secuenciales. Noviembre 21, 2019, de Blogspot


Sitio web: http://archivosecuencial.blogspot.com/

Ospina, E. (2016). Elementos de la Administración de Archivos. Noviembre


21, 2019, de Wordpress Sitio web:
https://chsosunal201610912053.wordpress.com/2016/05/12/elementos-de-
la-administracion-de-archivos/

Fernandez, V. (2018). Llamadas al sistema: manejo de ficheros y directorios.


Noviembre 21, 2019, de UAL U3 Sitio web:
https://w3.ual.es/~jjfdez/SOA/pract5.html

Barrera, M. (2019). Resolución de Problemas de los Sistemas de Archivos.


Noviembre 21, 2019, de IBM Sitio web:
https://www.ibm.com/support/knowledgecenter/es/ssw_aix_71/devicemanag
ement/trouble_filesys.html

28

También podría gustarte