Diapositivas
Download
Report
Transcript Diapositivas
Sistemas Operativos
Unidad VI
Administración del sistema de
Archivos
Administración del sistema de archivos
Almacenamiento físico de archivos
Estructura y función del sistema de
archivos
Propiedades de los archivos
Operaciones sobre los archivos
Seguridad y protección de los archivos
Almacenamiento físico de archivos
Archivo
Conjunto de registros, instrucciones de programa o
datos agrupados bajo un nombre y almacenados en
memoria no volátil.
Tecnologías de almacenamiento físico
Medios magnéticos
Medios ópticos
Discos
Cintas
CD R/W
DVD R/W
Memorias flash
Memorias USB
Almacenamiento físico de archivos … (2)
Discos magnéticos
Constituyen la mayor parte del almacenamiento
secundario en el que se mantiene un sistema de
archivos.
Se trata de un plato circular de metal o plástico
recubierto con un material magnético.
La información es grabada y recuperada del disco
mediante una bobina conductora llamada cabeza.
Superficie magnética
Antes del
almacenamiento
las partículas están
dispersas
aleatoriamente
Cabeza de lectura
y escritura
El campo magnético
generado por la cabeza
produce patrones de
partículas en la superficie
Almacenamiento físico de archivos … (3)
Formato físico del disco
Consiste en un conjunto
concéntrico de anillos
llamados pistas.
Las pistas se dividen en
sectores. Unidad de
transferencia de datos 512
bytes
Un conjunto de pistas a las
cuales se puede acceder sin
mover las cabezas forman un
cilindro.
Cilindro
Almacenamiento físico de archivos … (4)
Por razones de rendimiento los sectores
realmente no se numeran de forma
contigua, existe un factor de intercalación.
Cuando los datos se organizan físicamente
en sectores un archivo es considerado
como una serie de cúmulos o bloques de
sectores.
Donde un cúmulo (clúster) es un número fijo de
sectores “contiguos” y es la unidad de disco mas
pequeña que el sistema operativo puede
administrar (un cúmulo puede ser un sector).
El sistema de archivos se basa en la
administración de bloques.
Tamaño grande de bloque equivale a mayor
desperdicio.
Almacenamiento físico de archivos … (5)
Asignar espacio en el disco para los archivos
requiere que el sistema operativo asigne ciertos
bloques para tal fin.
En la asignación del espacio se debe procurar que
el espacio se aproveche de forma eficaz y se
pueda acceder de forma rápida a los archivos
Se utilizan principalmente tres métodos de
asignación:
Contigua
Encadenada
Indexada
Almacenamiento físico de archivos … (6)
Asignación contigua
Cada archivo ocupa un conjunto de bloques contiguos en
el disco, dicho conjunto se asigna al crear el archivo.
La tabla de asignación de archivos contiene el número
de bloque inicial y la longitud en bloques del archivo.
Tiene buenas prestaciones para archivos secuenciales.
Genera fragmentación externa y se dificulta encontrar
espacio para un nuevo archivo.
De vez en cuando se debe compactar para liberar
espacio.
Asignación contigua
antes de compactar
Asignación contigua
después de compactar
Almacenamiento físico de archivos … (7)
Asignación encadenada
La asignación se realiza a nivel de
bloques, Cualquier bloque libre se
puede añadir a la cadena.
Cada bloque contiene un
apuntador al siguiente bloque de la
cadena.
La tabla de asignación de archivos
contiene el número de bloque
inicial y la longitud en bloques del
archivo.
Buenas prestaciones para archivos
secuenciales.
No existe la fragmentación
externa.
No existe el principio de
proximidad lo que puede implicar
múltiples accesos a disco.
Asignación encadenada antes de compactar
Asignación encadenada después de consolidar
Almacenamiento físico de archivos … (8)
Asignación indexada
Asignación indexada con porciones de bloques
Resuelve muchos de los
inconvenientes de las asignaciones
contigua y encadenada.
La tabla de asignación de archivos
contiene el número de bloque índice
de un nivel por cada archivo.
El bloque indexado contiene una
entrada (registro) por cada porción
asignada al archivo.
Asignación indexada con porciones de tamaño variable
La asignación puede realizarse
mediante bloques de tamaño fijo o
porciones de tamaño variable.
La consolidación reduce el tamaño
del índice.
Esta es la forma más utilizada en la
asignación de archivos.
Estructura y función del sistema de
archivos
Para ofrecer un acceso
eficiente y cómodo al disco, el
sistema operativo impone en
él un sistema de archivos.
Generalmente el sistema de
archivos esta compuesto de
varios niveles.
Cada nivel de diseño aprovecha
las funciones de los niveles
inferiores para crear nuevas
funciones que se usarán en
niveles superiores
Sistema de archivos en niveles
Programas de aplicación
Sistema lógico de archivos
Módulo de organización de archivos
Sistema básico de archivos
Control de E/S
Dispositivos
Estructura y función del sistema de archivos
…(2)
Control de E/S
Sistema básico de archivos
Envía comandos genéricos al controlador de dispositivo
apropiado para leer y escribir bloques físicos en el disco.
Módulo de organización de archivos
Esta compuesto por los controladores del dispositivo y rutinas
de tratamiento de interrupción para transferir información
entre la memoria principal y el sistema de disco.
Tiene conocimiento de los archivos y sus bloques físicos y
lógicos.
También incluye el gestor de espacio libre, el cual controla
bloques no asignados y asigna bloques cuando se requiere.
Sistema lógico de archivos
Gestiona la información de metadatos, los cuales incluyen toda
la estructura del sistema de archivos, excepto los propios
datos.
Gestiona la estructura de directorios, propietarios, permisos,
ubicación protección y seguridad.
Estructura y función del sistema de archivos
…(3)
Los objetivos que se sugieren para un sistema de
gestión de archivos son:
Satisfacer las necesidades de gestión de datos y
requisitos del usuario.
Garantizar, hasta donde sea posible, que los datos del
archivo son válidos.
Optimizar el rendimiento en términos de productividad
(sistema) y en términos del tiempo de respuesta
(usuario).
Proporcionar soporte de E/S a una variedad de tipos de
dispositivos de almacenamiento.
Minimizar o eliminar la potencial pérdida de datos.
Proporcionar un conjunto estándar de rutinas de
interfaces de E/S a los procesos
Proporcionar soporte de E/S a múltiples usuarios.
Estructura y función del sistema de archivos
…(4)
Las funciones del sistema de archivos son:
Identificar y localizar el archivo seleccionado.
Utilizar un directorio para describir la
localización de todos los archivos más sus
atributos.
En un sistema compartido debe describir el
control de acceso para los usuarios.
Bloquear el acceso a los archivos
Asignar a los archivos bloques libres
Manejar el espacio libre para la disponibilidad
de bloques
Estructura y función del sistema de archivos
…(5)
Funciones del sistema de archivos durante un
ciclo de instrucción básico.
Estructura
del archivo
Gestión de
directorios
Método
de acceso
Registros
Bloques físicos en
buffers de memoria
principal
Gestión de
bloques
Programas y
comandos de
usuario
Operación,
nombre de
archivo
Funciones de
manipulación
de archivos
Bloques físicos en
el almacenamiento
secundario (disco)
Planificación
de disco
E/S
Asignación
de archivos
Control de
acceso de
usuario
Gestión de
almacenamiento
libre
Estructura y función del sistema de archivos
…(6)
La estructura y funciones particulares del sistema de archivos
dependerá del sistema operativo que se este utilizando.
Previo a la instalación del sistema de archivos es necesario dividir
física o lógicamente los discos en particiones o volúmenes.
Una partición es una porción del disco a la que se le dota de una
identidad propia y que puede ser manipulada por el sistema operativo
como una entidad lógica independiente.
Una vez creadas las particiones el sistema operativo debe crear
las estructuras de los sistemas de archivos dentro de esas
particiones.
Estructura y función del sistema de archivos
…(7)
Al crear un sistema de archivos en una partición de un
disco, se crea una entidad lógica autocontenida con:
Espacio para la información de carga del sistema operativo
La descripción de su estructura
Descriptores de archivos
Información del estado de ocupación de los bloques del
sistema de archivos
Bloques de datos y directorios
Partición
Boot (Sector de arranque)
FAT, nodos-i, descriptores físicos de archivos, etc
Agrupaciones asignadas a los directorios
Agrupaciones asignadas a los archivos
Estructura y función del sistema de archivos
…(8)
Estructura del sistema de archivos en Unix
Bloque de boot
Superbloque
Describe el estado del sistema de archivos.
Contiene información acerca del tamaño actual, total de archivos a contener,
que espacio queda libre, etc.
Lista de nodos índice (inodes)
Se localiza típicamente en el primer sector y contiene el código de arranque.
Se trata de un pequeño programa que se encarga de buscar el sistema
operativo para cargarlo en memoria principal.
Esta lista tiene una entrada por cada archivo, donde se guarda una
descripción del mismo; localización del archivo en disco, propietario,
permisos de acceso, fecha de actualización etc.
Bloque de datos
Ocupa el resto del sistema de archivos.
Esta zona es donde se encuentra situado el contenido de los archivos a que
hacen referencia los inodes.
Sistema de archivos Unix
Boot
Superbloque
Lista de inodes
Bloque de datos (Archivos y Directorios)
Estructura y función del sistema de archivos
…(9)
Tarea:
Investigar sobre la estructura y
funcionamiento de los siguientes sistemas de
archivos:
FAT, FAT16, FAT32
Ext2, Ext3, Ext4
ReiserFS
NTFS
Incluir:
Cómo se realiza la asignación de ficheros en Unix
Estructuras de ficheros en NTFS
Propiedades de los archivos
Desde el punto de vista del usuario, una de las
partes más importantes de un sistema operativo
es el sistema de archivos.
El sistema de archivos permite crear archivos con
las siguientes propiedades deseables:
Existencia a largo plazo
Compartible entre procesos
Almacenamiento en disco u otra tecnología de
almacenamiento secundario permanente.
Los archivos tienen nombres y permisos de acceso
asociados para controlar la compartición.
Estructura
Dependiendo del sistema de archivos, los archivos pueden
tener una estructura interna conveniente a las aplicaciones.
Los archivos se pueden organizar en estructuras
jerárquicas o más complejas.
Propiedades de los archivos … (2)
Términos relacionados con los archivos
Campo
Registro
Es el elemento básico de los datos.
Contiene un único valor (pj. Apellido, fecha, temperatura, etc.)
Tiene un tipo y longitud asociados
Dependiendo del diseño del archivo su longitud puede ser fija o
variable.
Es una colección de campos relacionados que pueden tratarse
como una unidad.
Dependiendo del diseño del archivo pueden ser de longitud fija o
variable.
Puede ser de longitud variable si uno de sus campos lo es o
también si el número de sus campos varía.
Archivo
Es una colección de campos similares.
Es tratado como una entidad única por parte de los usuarios o
aplicaciones.
Se referencian a través de un nombre.
Propiedades de los archivos … (3)
Estructura de archivos
Organización lógica de los registros determinados por la
forma en la que se acceden.
La organización de archivos dependerá de:
Tiempo de acceso corto
En procesamiento por lotes no necesario a nivel de registro.
Facilidad de actualización
No necesaria en CD-ROM
Economía de almacenamiento
Mínima redundancia de datos
Sin embargo la redundancia incrementa la velocidad de
acceso.
Mantenimiento sencillo
Fiablididad
Propiedades de los archivos … (4)
Existen diversas formas de organizar los
registros de un archivo, las cinco que se
consideran fundamentales son:
La pila
El archivo
El archivo
El archivo
El archivo
secuencial
secuencial indexado
indexado
de acceso directo o hash
Propiedades de los archivos … (5)
La pila
La forma menos complicada de
organización.
Los datos se almacenan en el orden
en que llegan.
Los registros pueden tener diferentes
campos o similares campos en
diferentes órdenes.
Cada campo debe ser
autodescriptivo, incluyendo el
nombre del campo y el valor
La longitud se conoce por defecto, se
indica mediante un delimitador o se
incluye en un subcampo.
El acceso a los registros se hace
mediante búsqueda exhaustiva.
Archivo tipo pila
Registros de tamaño variable
Orden cronológico
Propiedades de los archivos … (6)
El archivo secuencial
La forma más común de estructurar
archivos
Utiliza un formato fijo para los registros
Solo se almacenan los valores de los
campos; el nombre y la longitud de cada
campo son atributos de la estructura del
archivo.
Normalmente uno de los campos es el
campo clave
Todos de igual tamaño, compuestos por el
mismo número de campos de longitud fija
en un orden específico.
Identifica de forma única al registro
La secuencia de los registros es según la
clave
Típicamente la organización lógica encaja
con la organización física.
Archivo secuencial
Propiedades de los archivos … (7)
El archivo secuencial indexado
Mantiene las características clave del
archivo secuencial
Añade dos características
Registros en secuencia basándose en un
campo clave.
Un índice que da soporte al acceso
aleatorio
Un archivo de desbordamiento
En un nivel de indexación
El índice esta formado por un archivo
secuencial simple.
En cada registro dos campos: la clave y
el apuntador al archivo principal.
Para encontrar un campo específico se
busca el índice que contenga la clave
anterior más próxima a la del campo
deseado, después la búsqueda continúa
en el archivo principal.
Archivo secuencial indexado
Propiedades de los archivos … (8)
Ejemplo de archivo secuencial indexado … (1)
Propiedades de los archivos … (9)
Ejemplo de archivo secuencial indexado … (2)
Propiedades de los archivos … (10)
Ejemplo de archivo secuencial indexado … (3)
Propiedades de los archivos … (11)
Ejemplo de archivo secuencial indexado … (4)
Propiedades de los archivos … (12)
El archivo indexado
Se utilizan dos tipos de índice
Un índice exhaustivo que contiene una
entrada por cada registro del archivo
principal.
Un índice parcial que contiene entradas
a registros donde el campo de interés
existe.
Se dispone de un índice por cada tipo
de campo de búsqueda.
Los registros pueden ser de longitud
variable y se acceden solo a través de
sus índices.
Cuando se añade un registro al archivo
principal, todos los archivos índice
deben actualizarse.
Archivo indexado
Propiedades de los archivos … (13)
El archivo de acceso directo o hash
Explota la capacidad de los discos para acceder
directamente a cualquier bloque de una dirección
conocida.
Se requiere de una clave para cada registro
No existe el concepto de ordenación secuencial, se hace
uso de una tabla hash sobre un valor clave.
Hace uso de un archivo de desbordamiento.
Posible Algoritmo de inserción
Asociar al elemento una etiqueta n entre 0 y m – 1
Donde m es el número de entradas y n el número de
elemento.
Usar n como índice de la tabla hash
Si la entrada n está vacía, almacenar el elemento
Si esta ocupada, almacenar el elemento en un área de
desbordamiento, creando una lista de elementos con la
misma etiqueta.
Propiedades de los archivos … (14)
Ejemplo de archivo hash
Propiedades de los archivos … (15)
Ejemplo de archivo hash ... (2)
Propiedades de los archivos … (16)
De forma “externa” un archivo puede estar
organizado en una estructura jerárquica llamada
directorio.
Directorio
Es un archivo que pertenece al sistema operativo y que
es accedido a través de diversas rutinas de gestión de
archivos.
Permite al usuario abstraerse de la ubicación física de
los archivos visualizando solo la ubicación lógica.
Las dos estructuras lógicas más utilizadas son:
Árbol jerárquico
Grafo acíclico
Propiedades de los archivos … (17)
Estructura de directorios de tipo árbol jerárquico
Se parte de un directorio raíz
Los nodos del árbol son subdirectorios que a su vez
contienen otros subdirectorios o archivos.
Las hojas del árbol son los archivos.
Existe un camino (path) único para cada archivo.
Permite a los usuarios definir su propia estructura de
directorios.
Se relaciona con los conceptos de:
Ruta absoluta
Ruta relativa
Directorio actual
Propiedades de los archivos … (18)
Estructura de directorios de tipo
grafo acíclico
Permite que un archivo o subdirectorio
puedan estar en directorios distintos.
Para lograr compartir archivos o
subdirectorios se utilizan dos tipos de
enlaces
Físico (duro)
Apuntador a un archivo o directorio,
cuya entrada de directorio tiene el
mismo descriptor de archivo que el
archivo enlazado.
Simbólico (suave)
Un nuevo archivo cuyo contenido es el
nombre del archivo enlazado
Propiedades de los archivos … (19)
Un archivo también se caracteriza por tener distintos
atributos, entre ellos están:
Nombre
Identificador único
Información de control de acceso (contraseña, dueño, creador,
etc.)
Tamaño del archivo
Apuntadores a los dispositivos y a los bloques dentro de estos
Protección
Útil en sistemas que soportan múltiples tipos de archivo
(ejecutables y datos)
Mapa del archivo
Número que utiliza el sistema operativo para manejar el
archivo.
Tipo de archivo
Identificador del archivo en formato comprensible para el
usuario y es definido por su creador.
Algunos SO imponen ciertas restricciones.
Número de bytes en el archivo, máximo tamaño posible, etc.
Información de control del archivo
Indica si esta oculto, si es del sistema, normal, etc.
Operaciones sobre los archivos
Llamadas fundamentales sobre archivos al sistema
Crear
Borrar
Abrir
Cerrar
Leer
Escribir
Posicionar
Obtener atributos
Renombrar
Llamadas fundamentales sobre directorios al sistema
Crear
Borrar
Cambiar
Mostrar
Enlazar
Desenlazar
Seguridad y protección de los archivos
Protección
Se trata de un problema estrictamente interno
Gestiona la forma de controlar el acceso a los programas
y datos almacenados en un sistema
Seguridad
Considera el entorno externo en el cual opera el sistema
Abarca, entre otros:
Causas externas
Fallos en los equipos
Errores de programación
Errores humanos en su utilización
Ataques intencionados
Seguridad y protección de los archivos … (2)
Un sistema es seguro si sus recursos son utilizados y
accedidos como se espera en todas sus circunstancias.
Existe un problema si se intenta saltar la protección de los
recursos.
Al diseñar un sistema se tienen que considerar varios
aspectos:
Suponer un diseño público
Por defecto toda comprobación conlleva a una denegación
Dar a los procesos privilegios mínimos
Sistema de protección fácil de utilizar
Requisitos de seguridad:
Confidencialidad
Integridad
Disponibilidad de la información
Seguridad y protección de los archivos … (3)
Las violaciones de seguridad pueden ser:
Accidentales
Intencionadas
Lectura no autorizada a datos (viola la confidencialidad)
Modificación no autorizada (viola la integridad)
Destrucción (viola la disponibilidad)
Las medidas de seguridad se clasifican en tres
niveles:
Físico
Humano
El lugar donde se encuentra el sistema debe estar
protegido físicamente.
Autorización cuidadosa de los usuarios
Sistema Operativo
Identificación de programas, procesos y usuarios.
Seguridad y protección de los archivos … (4)
Contraseñas (passwords)
Generadas por el sistema
Seleccionadas por el usuario
Fáciles de adivinar
Se puede conocer
Difíciles de recordar
Teniendo información del usuario o conociéndolo
Intentar todas las posibles combinaciones de letras y números.
Los archivos de password pueden ser:
Privados: acceso denegado a los usuarios
Públicos: se permite acceso pero esta cifrado.
Seguridad y protección de los archivos … (5)
Clasificación de las amenazas por software:
Seguridad y protección de los archivos … (6)
Trampilla
Bomba lógica
Punto de entrada no documentado dentro de un
programa.
Utilizado para conceder accesos sin necesidad de
identificación.
Introducida en un programa que cuando se dan ciertas
condiciones en el sistema, ejecuta alguna función no
autorizada.
Caballo de Troya
Rutina secreta e indocumentada introducida en un
programa aparentemente útil.
Su ejecución se da sin conocimiento del usuario pero
accionado por este o por algún tipo de automatización.
Seguridad y protección de los archivos … (7)
Virus
Bacteria
Código incrustado en un programa que hace que se
inserte una copia de si mismo en uno o más programas.
Puede hacer cualquier cosa permitida al código que
infecta.
Programa que consume recursos del sistema mediante
su reproducción
Gusanos
Programa que se reproduce y envía copias de si mismo
por la red.
No suele causar más daños que consumo de recursos.
Explotan fallos de seguridad de los sistemas operativos.
Seguridad y protección de los archivos … (8)
Técnicas para mejorar la seguridad
Monitorización de amenazas
Comprobar si se intenta violar la seguridad
Buscar patrones de actividad sospechosa
Auditorías en bitácoras
Los registros de las bitácoras sirven para
Determinar cuándo y cómo ocurrió el problema y el daño producido.
Recuperarse del ataque
Desarrollar nuevos mecanismos de seguridad
Exploración periódica del sistema para detectar
Claves cortas o fáciles
Programas no autorizados en rutas del sistema
Tiempos prolongados de ejecución de procesos
Permisos de archivos y directorios del sistema
Cambios de tamaño en los programas de sistema
Proteger los datos mediante encriptación
Sobre todo la información transmitida por red y Listas de
passwords.
Seguridad y protección de los archivos … (9)
Protección:
Un sistema puede verse como una
colección de procesos y objetos ya sea
de hardware o software
Cada objeto tiene
Nombre único para identificarlo
Conjunto de operaciones a realizar con él
Ejemplos: un archivo se puede leer, escribir,
ejecutar, un semáforo tiene operaciones wait
y signal
La protección debe garantizar cada
objeto es accedido correctamente y
solo por aquellos procesos que lo
tienen permitido
Seguridad y protección de los archivos …
(10)
Dominio de protección
Define un conjunto de objetos con sus derechos de
accesos.
Derechos de acceso = permiso para realizar una operación
sobre un objeto
Los dominios pueden solaparse
Un proceso se ejecuta dentro de un dominio, la
asociación proceso-dominio puede ser
Estática si el conjunto de objetos disponible para un
proceso es fijo durante la vida del proceso.
Dinámica si se permite el cambio de dominio durante la
ejecución de un proceso.
Seguridad y protección de los archivos …
(11)
Matriz de acceso
Modelo que provee del mecanismo apropiado para el
control de acceso.
Elementos
Filas: dominios
Columnas: objetos
Celdas: derechos de acceso
Ejemplos:
Seguridad y protección de los archivos …
(12)
Matriz de acceso …
Se pueden incluir los dominios como objetos para indicar
el cambio entre dominios
Implementación
Tabla global
Listas de accesos para objetos
Listas de capacidades para dominios
Cerrojo llave
Seguridad y protección de los archivos …
(13)
Tabla global
Conjunto ordenado de triples <dominio, objeto, conjunto_derechos>
Ventaja:
Desventajas:
Método robusto y potente
Poco práctico en sistemas reales, la matriz sería enorme
Ineficiente ya que la mayoría de las entradas estarían vacías.
Listas de acceso (ACL)
Se trata de una descomposición en columnas de la matriz.
Asocia a cada lista una lista ordenada de pares <dominio, conjunto de
derechos>
Ventaja:
Desventaja
Se puede abreviar con comodines lo que minimiza el espacio de
almacenamiento
Coste de exploración de lista por cada acceso
Ejemplos:
Archivo1: {(D1, [Leer, Escribir]), (D2, [Leer])}; Archivo2: {(D2, [Leer,
Escribir]), (D3, [Escribir])}
Archivo4: {([*,profesores], [leer, escribir]), ([*,alumnos], [leer])}
Seguridad y protección de los archivos …
(14)
Listas de capacidades
Se trata de una descomposición en filas
de la matriz
Asocia a cada dominio una lista
ordenada de <objeto,
conjunto_derechos>
Cada elemento se denomina capacidad
El sistema operativo debe gestionar la
lista para evitar huecos de seguridad
Cerrojo-llave
Cada objeto tiene una lista de patrones
de bits únicos (cerrojos), y cada
dominio otra lista (llaves)
Un proceso en un dominio puede
acceder a un objeto si tiene la llave que
corresponde con uno de los cerrojos del
objeto