Sistema de Archivos.ppt

download Sistema de Archivos.ppt

of 24

Transcript of Sistema de Archivos.ppt

  • Sistemas OperativosSistema de ArchivosSlide: *

  • Temario :// Introduccin Lado de usuario: Archivos Directorios Implementacin: Organizacin del sistema de archivos Implementacin de archivos Administracin de espacio en disco Casos ejemplo Windows: NTFS Linux: ext3Sistemas Operativos: Sistema de Archivos

  • Introduccin ://Sistemas Operativos: Sistema de ArchivosRelativo a la perduracin de la informacin, un Sistema Operativo debera proveer funcionalidades para:

    Almacenar una cantidad muy grande de informacin La informacin debe sobrevivir a la terminacin del proceso que la usa Existir la capacidad de que mltiples procesos accedan a la informacin de forma concurrente.

    Los sistemas de archivos son aquellos que deben proveer estas capacidades al S.O. Para su comprensin, se pueden dividir en 2 partes:

    Perspectiva del usuario: la forma en que se muestran y estructuran los archivos en cuanto a su uso y manipulacin (archivos, directorios, funciones de administracin, etc).

    Implementacin: como se escriben los datos realmente a la unidad de almacenamiento.S.O./home/usuario/archivo.txt

    open(archivo.txt)

    C:\windows\calc.exe

    I/O Usuario Implementacin

  • Definicin Archivos ://Mecanismo de abstraccin que permite almacenar informacin en un dispositivo y leerla despus () de tal modo que el usuario no tenga que enterarse de los detalles de cmo y dnde est almacenada la informacin, y de cmo funcionan en realidad los discos-- A. TannenbaumSistemas Operativos: Sistema de ArchivosNombreDeArchivo.extensinEl nombre de archivo puede estar restringido a un largo mximo, por ejemplo: MSDOS: 8 para el nombre, 3 para la extensin NTFS y ext*: 255 en el total (nombre + extensin)

    La extensin puede ser usada para determinar el tipo de archivo:En sistemas windows determina el contenido del archivo y la aplicacin encargada de manejarlo. Aqu se suele tener solo 1 extensin: archivo.zip.En linux y similares es un ayuda a los usuario para determinar el contenido, pero no es estricto ni establecido por sistema. Aqu se suele tener varias extensiones: archivo.tar.gz

    En general se acepta cualquier carcter en el nombre excepto NUL (0), aunque algunos sistemas restringen el conjunto aunque la implementacin del sistema de archivos lo soporte.

  • Atributos - Archivos ://Sistemas Operativos: Sistema de ArchivosLos sistemas de archivos guardan, adems del nombre del archivo y sus datos, informacin como fecha, hora, usuario, permisos, etc; los cuales se denominan atributos.

    Algunos de los atributos que puede guardar un sistema de archivos son:

    ProteccinPermisos que el dueo del archivo establece sobre el archivo. En linux los permisos bsicos se establecen en la terna XXX para el usuario, grupo y otros respectivamente con los valores {0: nada, 1: ejecucin, 2: escritura, 4: lectura} que se suman para combinar permisos.PasswordClave de proteccin del archivoDueoUsuario del sistema dueo del archivoOcultoBit que indica si el archivo figura en la lista normal de archivos.TemporalBit que indica si eliminar el archivo al terminar el proceso que lo creo.Indicadores de BloqueoPermiten establecer protecciones sobre parte o todo el archivo para que modificaciones concurrentes de varios procesos se hagan de forma adecuada.Longitud del registroEn archivos con registros, indica el largo de cada registroTamao actualTamao actual del archivo en bytes.

  • Directorios ://Sistemas Operativos: Sistema de ArchivosDe manera de poder organizar los archivos, muchos sistemas de archivos tienen directorios o carpetas; los cuales tambin pueden ser archivos.

    De su utilizacin se derivan los conceptos de:

    Directorio Raz: aquel que contiene al resto del sistema de archivos. En linux es explicito (/), en windows est escondido detrs de las unidades lgicas (\??\)

    Directorio de trabajo: directorio en el cual se esta ejecutando un proceso, como por ejemplo el interprete de comandos. Este se simboliza con un punto (.).

    Ruta absoluta: ubicacin de un archivo o directorio indicando su posicin explicitando todos los directorios desde el directorio raz al elemento. Ej: /usr/local/nachos/code/build.linux/nachos.

    Ruta relativa: ubicacin de un archivo o directorio indicando su posicin respecto al directorio de trabajo actual. Ej: ../build.linux/nachos

    Directorio Padre: aquel en el cual es contenido un directorio. Se simboliza con punto doble (..).

  • Organizacin del Sist. Archivos - Implementacin ://Sistemas Operativos: Sistema de ArchivosEn sistemas de archivos de discos, estos deben considerar la estructura bsica: particiones o volmenes.Disco enteroMBRParticin 1Particin 2Particin 3Particin 4Particin: divisin lgica de una unidad de disco, tambin denominada volmen en sistemas Windows.

    MBR: Master Boot Record o Registro Maestro de Arranque. Es ledo y ejecutado por la BIOS al encenderse el computador.

    Tabla de Particiones: Contiene la informacin de donde comienza y termina cada particin en el disco. Cada particin puede tener un sistema de archivos diferente.

    Bloque de arranque: primer bloque de cada particin. Contiene la informacin de cmo arrancar el Sistema Operativo contenido en ella. Al ejecutarse el MBR, este busca los bloques de arranque para ejecutarlos. Si no existe S.O. en una particin, se deja el bloque en blanco por provisin.

    Tabla de particiones

  • Organizacin del Sist. Archivos - Implementacin ://Sistemas Operativos: Sistema de ArchivosFsicamente se puede distinguir:

    Cilindro: disco fsico. Ej: 1 diskette tiene 1 cilindro, mientras que un disco duro puede tener varios.

    Pistas: divisiones concntricas del disco. Un disco removible de 3.5 tiene en formato simple 18 pistas.

    Sectores: unidad atmica en la que se divide un disco para acceder a l en mltiplos de esta. Ej: 512b

    Bloques: agrupacin de sectores que realiza el sistema operativo, denominado cluster en sistemas Windows. El acceso al disco que realiza el S.O. se hace en esta unidad.

    Fuente: http://maettig.com/?page=Studium/FAT32

  • Organizacin del Sist. Archivos - Implementacin ://Sistemas Operativos: Sistema de ArchivosEn sistemas de archivos de discos, estos deben considerar la estructura bsica: particiones o volmenes.Disco enteroMBRParticin 1Particin 2Particin 3Particin 4Cada particin debe contener la informacin de todos los archivos (y directorios si corresponde) que alberga. Esta informacin es almacenada en sectores al inicio del volmen, cuya estructura vara considerablemente entre sistemas de archivos, aunque conceptualmente se puede graficar como sigue. Tabla de particionesBloque de arranqueMetadatosArchivos y DirectoriosEl sector de metadatos contiene la informacin respecto de donde y como estn almacenados los archivos en la particin. Nmero Mgico que identifica sistema de archivos que contiene la particin

  • Implementacin de archivos - Implementacin ://Sistemas Operativos: Sistema de ArchivosAsignacin ContiguaSe entrega espacio continuo en el disco a los archivos. Su ventaja es la implementacin simple y el buen desempeo en lectura. La desventaja es el fragmentacin excesiva y compleja dado que se DEBE escribir cada archivo como un todo cada vez. Si se elimina un archivo se requiere otro de igual tamao para no desperdiciar lugar, o reubicar los archivos para hacer espacio a un archivo ms grande.

  • Los ficheros sirven para organizar la informacinNombre de un archivo: Nombre + extensin (Nombre.ext)Nombre: podemos identificar el archivo por su nombreno ms de 8 caracteresletras (A-Z), nmeros (0-9), algunos caracteres especiales (subrayado_, smbolo de dlar $, smbolo de porcentaje %...no otros)No podrn tener espacios, comas, barras inversas o puntosExtensin: sirve para identificar el tipo de archivoDOS utiliza las siguientes:.EXE (ejecutable) .COM (comando) para archivos que contienen programas.SYS (sistema) archivos que contienen informacin del hardware.BAT (por lotes) para archivos con listas de comandos que se ejecutan automticamente.

  • Al crear un archivo se podr elegir una extensin que ayude a identificarlo (no mas de 3 carcteres)

    La mayor parte de los programas que crean archivos generan una extensin (.DOC, .XSL, .SAV...)

  • Archivos de programa: contienen los programas que se necesitan para que funcione el ordenador (.EXE o .COM)Archivos de datos especiales: archivos que produce un programa que contienen cdigos que slo pueden ser ledos por ese programa (.DOC, .XLS, .PPT, .SAV, .SPO)Archivos de texto sin formato: slo contienen texto. Cdigo ASCII ( .TXT)Archivos de sistema: informacin acerca del hardware (.SYS)Archivos de procesamiento por lotes: archivos de texto sin formato que contienen los comandos del DOS (.BAT)

    DOS almacena, adems de los nombres y extensin de los archivos, informacin sobre su tamao (bytes que ocupan), la fecha y la hora en que fueron creados

  • OTRAS EXTENSIONES DE ARCHIVOS

    .TXTtexto normal.DOCtexto de Word.WPtexto de WordPerfect.RTFtexto de Windows.WAVsonido de Windows.XLS, .WK1hoja de clculo.FLC, .FLIarchivo de animacin.HTLMpgina web en htlm.BMP, .TIF, imagen.PWT, .HGP, PPTpresentacin.CDRimagen del CorelDraw.DBFbase de datos.AVI, .MOVarchivo de video.GIF, .JPGimgenes de Internet

  • COMODINES del DOS: sirven para sustituir a un nombre o a una extensin cuando deseamos realizar una misma tarea con un grupo de archivosa) El asterisco (*) toma el lugar de una palabra completa o un grupo de caracteresb) La interrogacin de cierre (?) toma el lugar de un carcter nico

  • TRABAJO CON DIRECTORIOS

  • Un disco es una especie de archivador compuesto de carpetas en las que se guardan grupos de ficheros. Estas carpetas se denominan directorios y nos ayudan a organizar los ficherosDirectorio raz: al dar formato a un disquete o a un disco duro, DOS crear un directorio en el que sern almacenados todos los otros ficheros y directorios C:\>Cuando una carpeta contiene tanta informacin que se hace difcil encontrar lo que se busca, se subdivide. De igual forma, cuando los directorios tienen un nmero demasiado grande de archivos, se pueden dividir en subdirectorios. De igual forma, se podrn crear subdirectorios dentro de los subdirectoriosDirectorios y subdirectorios forman una estructura denominada rbol de directoriosLa orden tree nos ensea la lista de directorios y subdirectoriosC:\>tree

  • En un directorio puede haber archivos y subdirectoriosPodemos seguir agregando directorios en cualquier nivel de la estructura hasta un mximo de 512 archivos y directorios en el directorio raz de un disco duroA veces, Directorio padre: contiene subdirectoriosDirectorio hijo: subdirectorio

  • Nombres para directorios

    Cada directorio tiene un nombre y tambin puede tener una extensinReglas:El nombre debe tener entre uno y ocho caracteresUna extensin podr tener hasta tres caracteres, separados del nombre por un puntoTanto los nombre como las extensiones podrn contener letras (A-Z), nmeros (0-9), algunos caracteres especiales (subrayado_, smbolo de dlar $, smbolo de porcentaje %...no otrosNo podrn tener espacios, comas, barras inversas (\) o puntos.Dos subdirectorios que estn en el mismo directorio no podrn tener el mismo nombre. Sin embargo, podr haber subdirectorios con el mismo nombre en directorios distintos

  • Rutas de accesoLa ruta de acceso indica el emplazamiento de un archivo dentro del rbol de directorios. Es el camino que debe seguir DOS, partiendo del directorio raz, para llegar a un archivo en otro directorioEj: C:>\segundo\proceso\apuntes.docA menos que se indique de otro modo, se supondr que queremos utilizar el rbol de directorios de la unidad actual

    Para trabajar con archivos de un directorio que no sea el actual tendremos dos opciones:escribir la ruta de acceso del otro directorioconvertir el otro directorio en actual utilizando el comando cd (cambiar de directorio)

  • Esquema General - NTFS ://Sistemas Operativos: Sistema de ArchivosEjemplo Esquema particin NTFSPartition Boot RecordMFTArchivosde Sistemarea de archivosBoot Partition RecordEn los primeros 8kb se contiene la informacin sobre el volumen (tipo de particin, largo, etc), junto con el bloque de cdigo bsico para iniciar al sistema operativo. Contiene tambien un puntero a la MFT.

    MFT Master File TableLa Tabla Maestra de archivos contiene el donde y como estn almacenados los archivos, junto con todos los atributos asociados a estos.

    Archivos de SistemaContienen la informacin sobre los datos y operaciones que se realizan sobre el sistema de archivos: espacio libre, log de transaccionalidad, etc.

    rea de archivosDonde realmente se almacenan los datos del usuario.

  • Integridad de datos, LFS - NTFS ://Sistemas Operativos: Sistema de ArchivosFuente: http://dbserver.kaist.ac.kr/~yjlee/Courses/CS230/ntfs/NTFS-4.htmlSe compone de 2 secciones: rea de reinicio: contiene informacin de contextorea de logeo: contiene las entradas de log

    Se encarga de abrir, leer, escribir entradas al archivo de log; as como de limpiar las entradas de log y resetear el punto de inicio. Cada entrada de log tiene un Log Secuence Number como identificador nico. Entradas de Actualizacion

    Las acciones que provocan entradas de actualizacin en el log, En NTFS son:

    - Crear / Borrar un archivo- Extender / Truncar un archivo- Renombrar un archivo- Setear la informacin del archivo (metadatos)- Cambiar los parmetros de seguridad de un archivo

    Entradas de CheckpointIndican al sistema desde donde leer para recuperarse, guardndose el LSN de la ltima entrada checkpoint se guarda en el rea de restart.

  • Integridad de datos, Recuperacin - NTFS ://Sistemas Operativos: Sistema de ArchivosCuando ocurre una falla que interrumpe la ejecucin del sistema operativo, un corte elctrico por ejemplo, al reiniciarse el sistema, se realizan 3 pasadas por el $LogFile:

    Pasada de Redo (Rehacer)Se hace para actualizar el cache con las modificaciones al volumen que ocurrieron justo antes de la fallaSe busca en registro con el LSN determinado en la pasada de anlisis.Busca registros de actualizacin que posiblemente no se hayan escrito a disco y actualiza el cache con ellos.Pasada de Undo (Deshacer)Deshacer cualquier transaccin que no se haya commiteado cuando fall el sistema.Busca el LSN de la ltima operacin no commiteada de CADA transaccin.Dehace la operacin y retrocede al registro anterior de actualizacinFlushea los cambios del cache a disco para asegurar la consistencia.Pasada de AnlisisBsqueda del LSN desde donde partir la Pasada de RehacerCopia las tablas de transaccionesSe escanea de principio a fin en busca de entradas para actualizarSe escanean las tablas para determinar el LSN (Numero de Secuencia) del ltimo registro de una operacin que no haya sido escrita a disco.Fuente: http://dbserver.kaist.ac.kr/~yjlee/Courses/CS230/ntfs/NTFS-4.html

  • Estructura Ext2 - LinuxFS ://Sistemas Operativos: Sistema de ArchivosDado que Ext3 es solo una extensin para proporcionar nuevas funcionalidades a ext2, describiremos la arquitectura de este ltimo para comprender como se estructuran ambos sistemas de archivos.

    En los sistemas de archivos linux no existe la restriccin de 4 particiones como en los sistemas windows. De hecho es muy comn ver estaciones linux con 6 o ms particiones que separan fsicamente datos que lgicamente tienen contextos diferentes.

    En Ext2, cada particin se divide en Grupos de Bloques de tamao fijo e idntico seteable al crear el sistema de archivos.

    Cada uno de estos bloques contiene informacin redundante sobre los metadatos cruciales para la integridad del sistema de archivos como lo es el superbloque y los descriptores de grupo.

    De esta forma Ext2 busca proporcionar robustez al sistema de archivos sin tener que implementar transacciones, dado el alto nivel de replicacin de la informacin.Boot RecordParticin 0Particin 1Particin 2BootBlockGrupo 0Grupo 1Grupo 2SuperBloqueDescrip.De GruposBitmap deBloquesBitmap dei-nodesTabla dei-nodesDatos YDirectoriosDiscoParticinGrupoRedundancia de metadatos en cada grupo