Documentos de Académico
Documentos de Profesional
Documentos de Cultura
SO1U5InvErick Manuel Lara Diaz
SO1U5InvErick Manuel Lara Diaz
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
1
Índice
........................................................................................................................................................... 21
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.
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.
4
Atributos del Sistema de Archivos NTFS.
Los sistemas de archivos que utilizan estas versiones son los siguientes:
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.
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.
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.
Número de inodo
Tipo de fichero
Propietario de dicho fichero
Permisos del fichero
Fecha de creación del mismo
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.
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).
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.
ReiserFS ofrece funcionalidades que pocas veces se han visto en otros sistemas
de archivos:
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.
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.
11
Actividad 2. Investigar la arquitectura que siguen los sistemas de
archivos.
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.
Los archivos con poca volatilidad, gran actividad y tamaño variable son altamente
susceptibles de ser organizados secuencialmente.
13
3. Archivo Particionado.
Conjunto de datos particionados: Los PDS pueden tener cualquier tipo de registros
secuenciales.
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.
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.
15
Actividad 3. Investigar las interfaces empleadas (funciones o
llamadas al sistema) para crear, escribir y leer un archivo.
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:
donde:
read
Su sintaxis es:
donde:
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
write
La sintaxis es:
close
close(fd);
17
Sintaxis en Java para Crear un Archivo:
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
try {
if (!file.exists()) {
file.createNewFile();
bw.write(contenido);
bw.close();
18
} catch (Exception e) {
e.printStackTrace();
import java.io.File;
import java.util.Scanner;
try {
while (input.hasNextLine()) {
System.out.println(line);
19
input.close();
ex.printStackTrace();
if (fichero.exists()) {...}
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.
Uso de Cache.
21
Lectura adelantada de Bloques.
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.
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.
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.
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.
27
Wikipedia®. (2019). ReiserFS. Noviembre 21, 2019, de Fundación
Wikimedia, Inc Sitio web: https://es.wikipedia.org/wiki/ReiserFS
28