R/. Un campo es el elemento de datos básicos, tiene un
valor único y un tipo de datos específico. En cambio, el registro es un conjunto
de campos relacionados que pueden tratarse como una unidad.
R/. Un archivo es un conjunto de registros similares,
es tratado como una entidad única y se refieren a él por un nombre; y la base de datos, es un conjunto de datos
relacionados y está formada por una o más clases de archivos.
R/. Es aquel conjunto de software del sistema que
ofrece a los usuarios y aplicaciones
unos servicios relativos al empleo de archivos.
R/. Los
criterios para la elección de una organización de archivos son los siguientes:
¯ Acceso rápido
¯ Facilidad de actualización
¯ Economía d almacenamiento
¯ Mantenimiento sencillo
¯ Fiabilidad
R/. Organizaciones de archivos:
R/. Los
archivos secuenciales indexados reducen enormemente
el tiempo necesario para acceder a un solo registro sin sacrificar la
naturaleza secuencial del archivo, ya que para procesarlo secuencialmente,
los registros del archivo principal se procesan en secuencia hasta encontrar un
puntero al archivo de desbordamiento, mientras que en el secuencial indexado se
utiliza un índice de archivo que proporciona la capacidad de búsqueda para
llegar rápidamente al archivo deseado.
R/. Operaciones que se pueden realizar sobre un
directorio:
¯ Buscar
¯ Crear archivo
¯ Borrar archivo
¯ Enumerar directorio
¯ Actualizar directorio
R/. Un nombre de ruta es la serie de nombres de directorios,
terminados con el propio nombre del archivo, mientras que el directorio de
trabajo es el directorio actual asociado a cada usuario interactivo o
proceso. El nombre de camino facilita la
elección de los nombres de archivo, pero es incómodo. Por esto, con el uso de
los directorios de trabajo las referencias a los archivos se hacen por medio de
este.
R/. Los derechos de acceso típicos que se pueden
conceder o denegar a un usuario sobre un archivo son los siguientes:
¯ Ninguno
¯ Conocimiento
¯ Ejecución
¯ Lectura
¯ Adición
¯ Actualización
¯ Cambio de protección
¯ Borrado
R/. Métodos de agrupamiento:
R/. Métodos de asignación de archivos:
12.4 Los directorios pueden implementarse como
“archivos especiales” a los que solo se puede acceder de manera limitada o como
archivos ordinarios de datos ¿Cuáles son las ventajas y desventajas de cada
método?
Los directorios accesados
de manera limitada, comúnmente son directorios en los cuales esta almacenada
información referente al sistema operativo, o utilidades necesarias para la
correcta ejecución del sistema operativo.
Además de los archivos normales de
datos, dentro de la estructura de un sistema UNIX existen unos archivos
especiales. Los nombres de estos archivos identifican los dispositivos físicos
hardware del equipo:
¯
Discos
magnéticos
¯
Cintas
magnéticas
¯
Terminales
¯
Líneas
de comunicaciones
¯
Etc.
Cada
tipo de dispositivo tiene un controlador responsable de comunicarse con este
dispositivo. Dentro del sistema hay una tabla que apunta a los diferentes
controladores de los dispositivos. Todos los dispositivos son tratados como
archivos. Existen archivos especiales para cada línea de comunicaciones, disco,
unidad de cinta magnética, memoria principal, etc. Estos archivos en realidad
están vacíos. Tienen por misión asociar entre sí los dispositivos y sus
respectivos drivers. El sistema emplea dos números
enteros, denominados número principal (14 bits) y número secundario (18 bits) y
almacenados en el i-nodo del archivo, para acceder al dispositivo asociado.
El
número principal identifica una clase de dispositivo (en realidad identifica al
driver de dicha clase como pueden ser terminales,
impresoras, discos, etc.) y el número secundario identifica a un elemento de
dicha clase (un terminal específico, un disco concreto, ...).
Las
ventajas de tratar las unidades de entrada/salida de esta forma son:
¯
Los
archivos y dispositivos son tratados lo más similarmente posible.
¯
Los
nombres de ambos son pasados a los programas de la misma forma.
¯
Los
archivos especiales están sujetos al mismo tipo de protección de acceso que los
archivos y directorios ordinarios.
¯
Entre
sus desventajas están
¯
Como
son estandarizados, la ruta de acceso a los mismos, es similar en diversos
terminales, lo que crea un riesgo de accesibilidad por programas o utilidades
no deseadas.
¯
Puede
haber conflictos cuando mas de un controlador es
asignado al mismo dispositivo y ambos tratan de ejecutarse como controlador
actual.

Directorios como archivos
ordinarios de datos.
Los directorios que son accesados como archivos ordinarios de datos son aquellos
que han sido creados la mayoría de las veces por parte del usuario, o
aplicaciones generales, no relativas al sistema operativo, como utilidades.
Entre sus ventajas están:
¯
Son
de fácil entendimiento para el usuario, ya que comúnmente los nombres lógicos han
sido asignados por el usuario o son entendibles o asociables a las
aplicaciones.
¯
Están
sujetos a protecciones de acceso por el sistema operativo.
¯
Son
de fácil navegación a través de los nombres, y suelen identificar claramente el
contenido interno de los mismos.
Entre sus desventajas están:
¯
Son
relativos al sistema, y características especiales definidas por el usuario,
por lo cual, no es necesariamente entendible por usuarios en otros idiomas.
¯
Puede
crear conflicto de referencias cuando una aplicación busca ciertas utilidades
bajo un nombre, pero no las encuentra porque el directorio de acceso posee
nombres diferentes en otros idiomas (ejemplo, las aplicaciones que buscan “Program Files” en sistemas operativos en español dicho
directorio será llamado “Archivos de programa”)
12.5
Algunos sistemas operativos poseen un sistema de archivos estructurado en
árbol, pero limitan la profundidad del árbol a un pequeño numero
de niveles, ¿Qué efecto causa este limite en los usuarios? ¿Cómo simplifica
esto el diseño del sistema de archivos (si lo hace)?
El sistema operativo UNIX está diseñado
para manejar información contenida normalmente en discos. Para que esta
manipulación sea realmente efectiva, es necesario que la información esté
organizada de alguna forma. La manera estándar de organizar la información es
en archivos. Los archivos son localizados dentro del disco porque son apuntados
desde un lugar determinado, a este lugar se le denomina directorio.
Sin embargo en UNIX no se utiliza un
único directorio para apuntar a todos los archivos del sistema, sino que se
crea una estructura jerárquica de directorios conocida como estructura en
árbol.

Aunque en un principio pueda parecer
una estructura excesivamente complicada por la amplia ramificación de los
directorios, esta organización permite agrupar los archivos de los diferentes
usuarios e incluso de las diferentes aplicaciones en directorios separados, con
lo que se evita el que se interfieran entre sí. Por otro lado, un mismo usuario
puede organizar su propia información separando los archivos en diferentes
directorios de acuerdo a su contenido.
Los usuarios comúnmente no notarían el
limite de la profundidad de los arboles, pues es mas
común que guarden sus archivos dentro del mismo nivel, o creen otros
directorios al mismo nivel, mas probable seria que las aplicaciones demandaran
mas profundidad, pero tampoco sucede, pues con el objetivo de simplificar las
rutas de acceso a los archivos y librerías, se opta por crear dentro de un
archivo, varios subdirectorios, pero los mismos no alcanzan una profundidad
excesiva.
Esto simplifica el diseño del sistema
de archivo, por ejemplo en UNIX, al momento de crear las tablas de i-nodos pues
se evita que los i-nodos sean dependientes de una ruta de acceso, creando
problemas si se corrompe la lista, por lo cual las locaciones serian mas
fáciles de recuperarse si el árbol posee una menor profundidad.
12.6 Considérese un
sistema de archivos jerárquico en el que el espacio libre se mantiene mediante
una lista de espacio libre:
·
Supóngase que el puntero al espacio
libre se pierde. ¿Puede el sistema reconstruir la lista de espacio libre?
Si
el puntero al espacio libre se pierde, es muy probable que si solo se usaba una
técnica indexada, se pierda la lista actual de espacio libre, mas existen
muchas y diversas técnicas que permiten la creación de la lista del espacio
libre, como por ejemplo el vector bit, que posee una
ventaja ya que muchos procesadores cuentan con instrucciones de manipulación de
bits, y este método es usado por el MacOS, e Intel a partir del 80386 y Motorola
a partir del 68020 tienen instrucciones que ayudan a la creación del vector bit. El único problema es si el vector no se mantiene en
memoria, pero como solución, el disco duro puede ser partido en clusters, y
muchos sistemas operativos cuentan con utilidades de análisis de unidades
fijas, lo que ayuda a reconstruir la lista de espacio libre, así como detectar
sectores defectuosos.
Además,
en sistemas de archivos como FAT, la administración de espacio libre esta
incorporada en la propia estructura de asignación.
·
Sugiérase un esquema que garantice que
el puntero nunca se pierde como resultado de un único fallo de memoria.
Un
esquema que garantice que el puntero no se pierda como resultado de un fallo en
memoria puede ser el usado por UNIX, el
de mantener los bloques de índice cerca de los bloques de datos, para reducir
el tiempo de búsqueda, o usar la técnica de agrupamiento, que es una modificación
de la técnica de lista enlazada, en agrupamiento, se aprovecha el espacio de
los bloques libres para almacenar las direcciones de estos bloques libres, lo
que permite encontrar mas rápidamente las direcciones de los bloques libres, y
como las mismas están almacenadas en varios bloques, es mas fácil evitar la
perdida del puntero lógico.