interfaz sistema de archivos. interfaz sistema archivos concepto de archivo métodos de acceso...
TRANSCRIPT
![Page 1: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/1.jpg)
Interfaz Sistema de Archivos
![Page 2: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/2.jpg)
Interfaz Sistema ArchivosConcepto de archivoMétodos de accesoEstructura de DirectorioMontando Sistemas de
ArchivosCompartir ArchivosProtección
![Page 3: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/3.jpg)
ObjetivosExplicar la función de los sistemas de
archivosDescribir las interfaces de los sistemas
de archivosDiscutir los detalles de diseño,
incluyendo métodos de acceso, compartido de archivos, bloqueo de archivos, y estructura de directorios
Explorar la protección del sistema de archivos
![Page 4: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/4.jpg)
Concepto ArchivoEspacio de direcciones lógico
contiguoTipos:
Datos numérico carácter binario
Programa/código
![Page 5: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/5.jpg)
Estructura de un archivoNinguna - secuencia de palabras, bytesEstructura de registro sencilla
Líneas Longitud fija Longitud variable
Estructuras complejas Documento con formato Archivo para cargar relocalizable
Se pueden simular los últimos dos con el primer método utilizando caracteres de control
¿Quién decide?: Sistema operativo Programa
![Page 6: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/6.jpg)
Atributos de archivosNombre – la única info en forma legible por humanosIdentificador – etiqueta única (número) identifica el
archivo en el sistema de archivosTipo – requerida para sistemas que soportan distintos
tiposLocalización – apuntador a la posición del archivo en
el dispositivoTamaño – tamaño actual del archivoProtección – controla quien puede leer, escribir y
ejecutarTiempo, fecha e identificación de usuario – datos
para protección, seguridad y monitores de usoLa información de archivos se almacena en la
estructura del directorio, que se mantiene en el disco
![Page 7: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/7.jpg)
Operaciones en archivosArchivo es un tipo abstracto de datosCrearEscribirLeerReposicionar dentro del archivoBorrarTruncarOpen(Fi) – buscar la entrada Fi en la
estructura del directorio en el disco y mueve el contenido de dicha entrada a memoria
Close (Fi) – mueve el contenido de la entrada Fi en memoria a la estructura de directorio en disco
![Page 8: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/8.jpg)
Archivos abiertosSe requieren muchos datos para
manejar archivos abiertos: Apuntador de archivo: apuntador a la
última posición read/write. Uno por cada proceso que tiene abierto el archivo
Cuenta archivo-abierto: contador del número de veces que está abierto el archivo - para poder borrar datos de la tabla de archivos abiertos, cuando el último proceso lo cierra
Posición en el disco del archivo: cache de información de acceso a datos
Permisos de acceso: información de modo de acceso por proceso
![Page 9: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/9.jpg)
Bloqueo de archivo abiertoProvisto por algunos sistemas operativos
y sistemas de archivosIntermediario para el acceso a un
archivoForzoso o recomendado:
Forzoso – se niega el acceso basado en los candados puestos y los solicitados
Recomendado – procesos pueden obtener el estado de los candados y decidir qué hacer
![Page 10: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/10.jpg)
Ejemplo Bloqueo de Archivos – Java API
import java.io.*; import java.nio.channels.*; public class LockingExample { public static final boolean EXCLUSIVE = false; public static final boolean SHARED = true; public static void main(String arsg[]) throws IOException { FileLock sharedLock = null; FileLock exclusiveLock = null; try { RandomAccessFile raf = new
RandomAccessFile("file.txt", "rw"); // get the channel for the file FileChannel ch = raf.getChannel(); // this locks the first half of the file -
exclusive exclusiveLock = ch.lock(0, raf.length()/2,
EXCLUSIVE); /** Now modify the data . . . */ // release the lock exclusiveLock.release();
![Page 11: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/11.jpg)
Ejemplo Bloqueo de Archivos – Java API
// this locks the second half of the file - shared sharedLock = ch.lock(raf.length()/2+1,
raf.length(), SHARED); /** Now read the data . . . */ // release the lock exclusiveLock.release(); } catch (java.io.IOException ioe) { System.err.println(ioe); }finally { if (exclusiveLock != null) exclusiveLock.release(); if (sharedLock != null) sharedLock.release(); } } }
![Page 12: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/12.jpg)
Tipos de archivos – Nombre, Extensión
![Page 13: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/13.jpg)
Métodos de AccesoAcceso Secuencial read next write next reset no read after last write (rewrite)Acceso Directo read n write n position to n read next write next rewrite n n = relative block number
![Page 14: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/14.jpg)
Archivo de Acceso Secuencial
![Page 15: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/15.jpg)
Simulación Acceso Secuencial en Archivo de Acceso Directo
![Page 16: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/16.jpg)
Ejemplo de Índice y Archivos Relativos
![Page 17: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/17.jpg)
Estructura de DirectoriosUna colección de nodos con información acerca de
archivos
F 1 F 2F 3
F 4
F n
Directorio
Archivos
Tanto la estructura de directorios como los archivos viven en el disco.Respaldos de estas estructuras en cinta.
![Page 18: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/18.jpg)
Organizacion de Sistema de Archivos típico
![Page 19: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/19.jpg)
Operaciones realizadas en Directorios
Buscar un archivoCrear un archivoBorrar un archivoLista de directoriosRenombrar un archivoRecorrer el sistema de archivos
![Page 20: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/20.jpg)
Organizar el Directorio para Obtener
Eficiencia – localizar un archivo rápidamente
Nombrado – conveniencia para usuarios Dos usuarios pueden usar el mismo nombre
para distintos archivos El mismo archivo puede tener varios
nombresAgrupamientos – agrupar lógicamente
archivos por propiedades (v.gr. todos los programas java, todos los juegos, ...)
![Page 21: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/21.jpg)
Directorio de único nivelUn solo directorio para todos los
usuarios
Problemas de nombrado
Problemas de grupos
![Page 22: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/22.jpg)
Directorio de dos nivelesDirectorio separado para cada usuario
Nombre de ruta
Podemos usar mismo nombre de archivo para varios usuarios
Búsqueda eficiente
No tiene capacidad para grupos
![Page 23: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/23.jpg)
Directorios en Estructura de Árbol
![Page 24: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/24.jpg)
Directorios en Estructura de Árbol (cont)
Búsqueda eficiente
Capacidad de grupos
Directorio actual (de trabajo) cd /spell/mail/prog type list
![Page 25: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/25.jpg)
Directorios en Estructura de Árbol (cont)
Rutas absolutas o relativasNuevos archivos son creados en el directorio actualBorrar un archivo
rm <file-name>Nuevos sub-direcrtorios se crean en el directorio
actual mkdir <dir-name> Ejemplo: si el directorio actual es /mail mkdir count
prog copy prt exp count
Borrar “mail” ⇒ borrar el sub-árbol completo con raíz “mail”
![Page 26: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/26.jpg)
Directorios en Gráficas aciclicas
Con subdirectorios y archivos compartidos
![Page 27: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/27.jpg)
Directorios en Gráficas aciclicas (cont)
Dos nombres distintos (aliasing)If dict deletes list ⇒ apuntador colgante
Soluciones: Backpointers, para poder borrar todas las
referencias. Registros de tamaño variable son un problema
Backpointers utilizando un organización tipo daisy chain
Solución con contador de entradaTipos de nuevos directorios
Liga – otro nombre (apuntador) a un archivo existente
Seguir la liga – seguir apuntador para encontrar un archivo
![Page 28: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/28.jpg)
Directorio como Gráfica General
![Page 29: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/29.jpg)
Directorio como Gráfica General (cont)
¿Cómo garantizamos que no hay ciclos? Permitir ligas sólo a archivos y no a
subdirectorios Recolección de basura Cada vez que se añade, ejecutamos un
algoritmo de detección de ciclos, para determinar si está bien.
![Page 30: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/30.jpg)
Montando el Sistema de Archivos
Un sistema de archivos debe montarse antes de ser accedido
Un sistema de archivos no montado se monta en un punto de montaje
![Page 31: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/31.jpg)
(a) Existente (b) Partición no-montada
![Page 32: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/32.jpg)
Punto de Montaje
![Page 33: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/33.jpg)
Compartir ArchivosEs deseable compartir archivos en
sistemas multi-usuario
Se puede compartir a través de un esquema de protección
En sistemas distribuídos, se pueden compartir archivos a través de la red
Network File System (NFS) es un método típico de distribución de archivos
![Page 34: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/34.jpg)
Compartir archivos – Usuarios múltiples
User IDs identifican usuarios, permiten asociar permisos y protección por usuario
Group IDs permitir usuarios que pertenezcan a grupos y permisos de acceso por grupo
![Page 35: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/35.jpg)
Archivos compartidos – Sistemas de Archivo Remotos Utiliza la red para permitir acceso a archivos entre
sistemas Manualmente con programas tipo FTP Automáticamente, utilizando sistemas de archivos
distribuídos Semi-automático a través del world wide web
Modelo cliente-servidor permite a los clientes montar sistemas de archivos remotos desde el servidor
Servidor puede atender múltiples clientes Identificación de clientes o usuarios-en-cliente es
insegura y complicada NFS es el protocolo estándar en UNIX para compartir
archivos CIFS es el protocolo estándar en Windows Llamadas al sistema para archivos se traducen en
llamadas remotas Sistemas de información distribuida (distributed naming
services) tales como LDAP, DNS, NIS, Active Directory implementan acceso unificado a información necesaria para cómputo remoto
![Page 36: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/36.jpg)
Compartir archivos – Modos de fallos
Sistemas de archivos remotos añaden nuevos modos de fallos, debido a fallas de red, fallas de servidores
Recuperarse de fallas involucran información acerca del estado de cada solicitud remota
Protocolos sin estado tales como NFS incluyen toda la información en cada solicitud, permitiendo recuperación fácil, pero con menos seguridad
![Page 37: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/37.jpg)
Compartir archivos – Semántica de ConsistenciaSemántica de Consistencia especifica como múltiples
usuarios deben acceder a un sistema de archivos remoto simultáneamente
Similares a los algoritmos de sincronización de procesos del capítulo 7 Usualmente menos complejos debido a la latencia de
E/S de disco y red Andrew File System (AFS) implementa un sistema de
archivos remoto muy complicado Unix file system (UFS) implementa:
Escribe a un archivo abierto y visible inmediatamente a otros usuarios del mismo archivo
Apuntador de archivo para compartir permite a varios usuarios leer y escribir concurrentemente
AFS tiene semántica de sesiones La escritura es visible a sesiones que inician después
que se cierra el archivo
![Page 38: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/38.jpg)
ProtecciónDueño/creador del archivo debe poder
controlar: qué puede hacerse por quién
Tipos de acceso Read Write Execute Append Delete List
![Page 39: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/39.jpg)
Listas de acceso y grupos Modo de acceso: read, write, execute Tres clases de usuarios
Solicitar administrador que cree un grupo (nombre único),
y añadir otros usuarios al grupo. Para un archivo o directorio particular, definir el tipo de
acceso apropiado.owner group public
chmod 761 game
Asociar un grupo con un archivo chgrp G game
clase octal R W X
dueño 7 1 1 1
grupo 6 1 1 0
público 1 0 0 1
![Page 40: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/40.jpg)
Windows XP Manejo Listas de Control de Acceso
![Page 41: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/41.jpg)
Listado directorio ejemplo en UNIX
![Page 42: Interfaz Sistema de Archivos. Interfaz Sistema Archivos Concepto de archivo Métodos de acceso Estructura de Directorio Montando Sistemas de Archivos Compartir](https://reader035.vdocuments.pub/reader035/viewer/2022081421/5665b4671a28abb57c913d48/html5/thumbnails/42.jpg)
Fin