Академический Документы
Профессиональный Документы
Культура Документы
SISTEMA DE ARCHIVOS.
Tipos de archivos.
La mayora de los sistemas operativos tienen tres tipos bsicos de archivos: regulares,
directorios y archivos especiales. Los archivos especiales se utilizan (como hace UNIX) para modelar
dispositivos de disco y terminales. Los archivos regulares se subdividen en tipos distintos en base a
su uso. Los tipos diferentes se distinguen por medio de nombres que terminan con extensiones de
archivo distintas. Por ejemplo:
XXX.PAS:
XXX.TCL:
XXX.DOC:
XXX.OBJ:
XXX.EXE:
XXX.TXT:
XXX.BAT:
Fundamentos de Informtica
Fundamentos de Informtica
Almacenamiento de archivos.
Si un archivo consta de una sucesin de bloques, el sistema de archivo debe contar con
alguna manera de llevar el control de los bloques de cada archivo. La forma ms evidente (el
almacenamiento consecutivo de los bloques) suele no ser viable porque los archivos pueden crecer.
De hecho, fue precisamente este problema el que llev a dividir los archivos en bloques.
Fundamentos de Informtica
En asociacin con cada disco hay una tabla llamada tabla de asignacin de archivos
(FAT). Tiene una entrada por cada bloque del disco. La entrada del directorio de cada archivo da el
nmero del primer bloque del archivo. Esa ranura en la FAT contiene el nmero del bloque del
siguiente bloque. El archivo A comienza en el bloque 6, de modo que la entrada 6 de la FAT contiene
el nmero del siguiente bloque del archivo A, que es 8; la entrada 8 de la FAT contiene el siguiente
nmero de bloque, 4; la entrada 4 apunta a la 2 y la 2 se marca como fin del archivo.
El principal problema de la FAT es que los apuntadores de todos los archivos del disco en su
totalidad se combinan al azar en la misma tabla. Esto quiere decir que toda la FAT se necesita en
potencia, aun si slo se abre un archivo. Un mtodo ms adecuado sera conservar las listas de
bloques de diferentes archivos en lugares distintos. Esto es lo que UNIX hace.
En asociacin con cada archivo de UNIX hay una tabla pequea (en el disco) llamada i-nodo
como se muestra en la figura 4.3. El i-nodo contiene informacin sobre el archivo y de proteccin,
adems de la informacin necesaria para localizar los bloques del archivo. Los elementos
importantes son los 10 nmeros de bloques del disco y los 3 nmeros de bloque indirectos. Para
archivos de menos de 10 bloques de longitud, todas las direcciones del disco se conservan
justamente en el i-nodo, hacindolos fciles de hallar.
Fundamentos de Informtica
Fundamentos de Informtica
Directorios.
Para llevar el control de los archivos, el sistema operativo normalmente proporciona
directorios, los cuales, en muchos sistemas, son archivos. Un directorio suele contener varias
entradas, una por archivo, como se muestra en la figura 4.4. La manera ms simple consiste en que
el sistema conserve un solo directorio que contenga todos los archivos de todos los usuarios. Si hay
muchos usuarios y stos eligen los mismos nombres de archivos, los conflictos y la confusin
volvern el sistema rpidamente impracticable.
Cuando tenemos esta organizacin, se necesita contar con alguna manera de especificar los
nombres de los archivos. Comnmente se emplean dos mtodos. En el primero, a cada archivo se le
da un nombre de ruta absoluta, que consta de la ruta que va del directorio raz al archivo. Por
ejemplo, la ruta /opt/gnu/gcc significa que el directorio raz contiene un subdirectorio opt, el cual a su
vez contiene un subdirectorio gnu, que contiene el archivo gcc. Los nombres de ruta absoluta
siempre comienzan en el directorio raz y son nicos.
Fundamentos de Informtica
8
Nombre
del
archivo
3
1
10
Extensi Atributos Reserva
n
do
2
2
Tiemp Fech
o
a
2
4
Primer
Tama
nmero
o
de bloque
Bytes
2
Nmero del inodo
14
Nombre del archivo
Cuando se abre un archivo, el sistema debe tomar el nombre proporcionado y localizar sus
bloques del disco. Consideremos la forma en que se busca el nombre de ruta /opt/gnu/gcc.
Utilizaremos a UNIX como ejemplo, pero el algoritmo es bsicamente el mismo para todos los
sistemas de directorios jerrquicos. En UNIX su i-nodo est localizado en un lugar fijo del disco.
Despus busca la primera componente de la ruta, opt, en el directorio raz con el fin de hallar
el i-nodo del archivo /opt. A partir de este i-nodo el sistema localiza el directorio de /opt y busca la
siguiente componente, gnu, en l. A partir de este i-nodo puede hallar el directorio mismo y buscar
gcc. El i-nodo de este archivo se lee despus en la memoria y se guarda ah hasta que el archivo se
cierra. El proceso de bsqueda se ilustra en la figura 4.8.
Fundamentos de Informtica
Los nombres de ruta relativos se buscan de la misma forma que los absolutos, slo que
comenzando desde el directorio actual y no desde el directorio raz. Todo directorio tiene entradas
para . y .. que se colocan ah cuando se crea el directorio. La entrada . tiene el nmero de i-nodo del
directorio actual y la entrada de .. tiene el nmero de i-nodo del directorio padre. Por lo tanto, un
procedimiento que busca a ../pepe/prog.pas simplemente busca a .. en el directorio de trabajo, halla
el nmero de i-nodo del directorio padre y rastrea ese directorio para encontrar pepe. No se necesita
ningn mecanismo especial para manejar estos nombres. Hasta donde concierne al sistema de
directorio, estas son simplemente cadenas ASCII ordinarias.
BASES DE DATOS.
Fundamentos de Informtica
10
Fundamentos de Informtica
11
Status
3
2
4
Puesto
Chapa
Neumticos
Chapa
Nm_Horas
2
2
3.5
Fundamentos de Informtica
Status
3
2
4
Puesto
Chapa
Neumticos
Chapa
12
Matrcula
J-1234-X
GR-5522-Y
J-4321-G
Nm_Horas
2
2
3.5
En este ejemplo, ningn atributo por s mismo es llave candidata. Una llave candidata es
{Matrcula}, y adems es la ms pequea.
Llave primaria es una de las llaves candidatas. De entre todas las llaves candidatas, se elige
una como llave primaria. Al resto de llaves se les llaman llaves alternativas.
Llave externa. Dada una relacin R1, llamamos llave externa de R1, a cualquier atributo o
conjunto de atributos de R1 que sea a su vez llave primaria de otra relacin R2.
Debe existir una concordancia entre los valores de la llave externa en ambas relaciones, ya
que si no se daran problemas de integridad.
Ejemplo: si consideramos las relaciones de los dos ejemplos anteriores, el atributo
{M#} de la relacin de Trabajos es una llave externa respecto a la relacin de Mecnicos, ya
que {M#} es llave primaria de esta ltima relacin. La concordancia que debe existir entre los
valores de la llave externa se refiere al hecho de que todo valor de M# que aparezca en la
relacin de Trabajos debe existir en la relacin de Mecnicos, ya que si no estuviera,
estaramos diciendo que existe un trabajo de un mecnico inexistente, esto es, tendramos un
problema de integridad.
El dominio de los atributos de la llave externa deben coincidir en ambas relaciones. No es
necesario que la llave externa sea tambin la llave primaria de la relacin (R1), como puede
deducirse del ejemplo anterior (llave de Trabajos es {M#,Matrcula}).
Hay que tener en cuenta que R1 y R2 pueden ser la misma relacin, es decir, una relacin
podra incluir una llave externa cuyos valores (no nulos) deben concordar con los valores de la llave
primaria de esa misma relacin. Un ejemplo tpico es la relacin de Empleados, donde la llave
primaria es Num_Emp# y existe un atributo Num_Emp_Sup# en la relacin para identificar al superior
de ese empleado. Este ltimo atributo es llave externa respecto a Num_Emp#.
Las llaves externas son el mecanismo fundamental para relacionar unas tablas con otras.
Fundamentos de Informtica
13
La arquitectura Cliente/Servidor.
En la arquitectura cliente/servidor, la aplicacin de base de datos est separada en dos
partes: la porcin cliente y la porcin servidor. El cliente ejecuta la aplicacin que accede a la
informacin de la base de datos e interactua principalmente con el usuario a travs del teclado, la
pantalla y el ratn. El servidor ejecuta el gestor de la base de datos y maneja las funciones requeridas
para el acceso concurrente a los datos compartidos de la base de datos.
Aunque la aplicacin cliente y el servidor pueden ser ejecutados en el mismo ordenador,
suele ser ms efectivo y eficiente cuando la(s) parte(s) cliente(s) y el servidor se ejecutan en
mquinas diferentes conectadas a travs de un red.
En una base de datos distribuida, un servidor podra necesitar acceder a una base de datos
situada en otro servidor. En este caso, el servidor que pide la informacin es un cliente.
El procesamiento distribuido es el uso de ms de un procesador para dividir el procesamiento
de una tarea individual. A continuacin se exponen algunos ejemplos de procesamiento distribuido:
- el cliente y el servidor estn situados en diferentes mquinas; estas mquinas se conectan a
travs de una red.
Fundamentos de Informtica
14
Fundamentos de Informtica
15