TEMARIO Introducción a Linux Sistemas de Archivos Gestión Básica

Slides:



Advertisements
Presentaciones similares
Introducción a Linux Lic. Gonzalo Pastor.
Advertisements

Gestión de archivos y directorios
LICENCIATURA EN SISTEMAS COMPUTACIONALES EN ADMINISTRACION
Cuentas de Usuarios Como Mac OS X es un verdadero sistema operativo multiusuario, por tanto una computadora puede usar mas de un usuario, integrando.
UNIX COMP 240.
Sistema operativo Componentes de un sistema operativo
Sistemas Gestores de Ficheros
EQUIPO ·# 3 SISTEMAS OPERATIVOS
Subsistemas De un Sistema Operativo Celeste Domínguez Romo
Tema: Técnicas Básicas Excel (III) Trucos, opciones y personalización de Excel Índice: 1 Vínculos absolutos y relativos, conectando datos de Excel con.
Tema II Unidad de memoria. 2 Unidad de memoria 2.1 Definiciones y conceptos básicos Localización Capacidad Unidad de transferencia
INSTALACIÓN Y MANTENIMIENTO DE SISTEMAS OPERATIVOS
Teoría de lenguajes y compiladores
UNIDAD II Modelo de Datos.
Planificación de la Información.
Johanna Lizeth Rodríguez Lorena Fda. Chávarro Ramos
INTEGRANTES ALEXIS MENDOZA ALDAIR ARRIETA CARLOS PASTOR LORENA RODRIGUEZ ANTHONY JIMENEZ.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS
UNIDAD I Conceptos Básicos.
HILOS Y COMUNICACIÓN ENTRE PROCESOS
Programas informáticos. Software Se denomina software al conjunto de programas y procedimientos necesarios para hacer posible la realización de una tarea.
FHS: organización de directorios en Linux
Sistema Operativo. ¿Qué es el Sistema Operativo? Un sistema operativo (SO) es el conjunto de programas y utilidades software que permiten al usuario interactuar.
PROGRAMACION II.  Es un conjunto de datos no necesariamente del mismo tipo, los cuales se podrán manipular o realizar cualquier operación sobre cada.
Tema 10: Gestión de Memoria
Administración de memoria
Administración de Archivos
Sebastián Sánchez Prieto
File Ownerships and Permissions. Propiedades de Archivos regulares y Permisos.
Tema 10a Manejo de archivos. Introducción Un computador puede almacenar grandes cantidades de información. Puede acceder a ella de manera muy rápida.
Sistema de archivos Sistemas operativos.
Tema 10.3: Asignación de Espacio No Contiguo. Tema 10.3: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.),
Asignación de Espacio No Contiguo
Estructura del sistema de Archivos de
Administración de Memoria
Teoría de Sistemas Operativos
Arquitectura NFS El servidor NFS exporta uno o más directorios
5. Sistemas de archivos avanzados1 Tema 5: Sistemas de Archivos Avanzados Resumen: –Sistema de archivos distribuido –File Replication Service.
Introducción a los Sistemas Operativos
Capítulo 7 Gestión de memoria.
COMPONENTES DEL SISTEMA OPERATIVO.
Sistemas de ficheros MS-DOS.
Los Sistemas de Archivos
VI. Administración de Dispositivos (2)
Gestión de Memoria.
Introducción a los SOs.
Teoría de Sistemas Operativos Administración de Archivos.
Tema 8: Introducción a los SOs. Tema 8: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.), Introducción.
CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO
W w w. i n a c a p. c l FUNDAMENTOS DE SISTEMAS OPERATIVOS LUIS ALEJANDRO PACHECO TORO.
Teoría de Sistemas Operativos
SISTEMAS DE ARCHIVOS.
Estructura de los Sistemas Operativos
El árbol de directorios
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:21 PRESENTACION: BASE DE DATOS ALUMNAS: Adán Millán Sánchez.
Sistemas de Archivos Sistemas Operativos.  Se debe proporcionar un almacenamiento secundario que respalda a la memoria principal  El Sistema de archivos.
File Transfer Protocol.
Elementos y tipos de sistemas operativos
2008 Escuela de Informática y Telecomunicaciones, DuocUC Escuela de Informática y Telecomunicaciones Clase 2: El sistema de archivos de LINUX Nombre unidad.
ESTACIONES DE TRABAJO..
ELEMENTO DE COMPETENCIA 3
En el presente trabajo, se explica los diferentes elementos que nos ofrece Microsoft Access, para hacer mas fácil y rápido la realización de bases de.
El Sistema Operativo es el software básico necesario para el funcionamiento de cualquier ordenador Los Sistemas Operativos están en continua evolución.
Sistema de Gestión de Archivos FUNDAMENTOS TEORICOS Ing. Jorge Gutiérrez D Universidad Nacional de Colombia Catedrático - I Sem 2009
BASES DE DATOS DISTRIBUIDAS M.C.C. María Guadalupe Villanueva Carrasco INGENIERIA EN SISTEMAS COMPUTACIONALES.
Gestión de Memoria – Parte 2
DLM Transact SQL Sesión I Introducción al SQL Server Uso de las herramientas de consultas del Transact SQL.
Estructura del sistema operativo
Sistemas de archivos. Sistemas de archivos 2 Objetivo del SdA  Ocultar al usuario los detalles relativos al almacenamiento de información en dispositivos.
1/50 Ing. Gerardo Chávez Malpartida Administración de Memoria SISTEMAS OPERATIVOS.
Transcripción de la presentación:

Introducción a Linux FCFM, BUAP Verano 2002

TEMARIO Introducción a Linux Sistemas de Archivos Gestión Básica El sistema de ventanas X-Windows Manejando el Shell Programas y aplicaciones Intro. Linux FCFM, BUAP

1. INTRODUCCION [ hardware Computadora [ | aplicaciones | [ software --> progs. del sistema SO | aplicaciones | \/ Procesador, memoria, reloj, terminal, disco, dispositivos E/S Intro. Linux FCFM, BUAP

Linux ? Unix es multi-usuario, multi-tareas; modo de texto y gráfico Linux nació como Unix para PC’s, ahora en todas partes ! Linux Torvald, 1991. Linux es gratuito y libre Intro. Linux FCFM, BUAP

Capas del sistema Maple Juegos Calculos Aplicaciones Compiladores Editores Shell Programas SISTEMA OPERATIVO del Sistema LENGUAJES DE MAQUINA Hardware MICROPROGRAMACION Hardware Dispositivos Fisicos Hardware Intro. Linux FCFM, BUAP

Capas del Sistema II Intro. Linux FCFM, BUAP

Control En lugar de controlar los dispositivos con el lenguaje de máquina, usamos el sistema operativo, que nos presenta una máquina virtual para ello. SO: proporciona una asignación ordenada y controlada de los procesadores, memoria y dispositivos E/S. Windows ?? Linux ?? Intro. Linux FCFM, BUAP

Conceptos Procesos = programa en ejecución (programa ejecutable, datos, pila, contador registro, etc.)  tabla de procesos (guarda info del estado de cada proceso) Interfaz entre SO y programas del usuario = conjunto de “instrucciones ampliadas”: llamadas del sistema Las LLS de procesos fundamentales son las que se ocupan de la creación y fin de procesos. Proceso “intérprete de comandos” o shell lee instrucciones o órdenes a partir de la terminal Intro. Linux FCFM, BUAP

Shell. Previo Shell -- carga procesos -- crea procesos y entorno -- cierra procesos Estructura de árbol en procesos pero antes hay que saber que es el UID y GID ! Intro. Linux FCFM, BUAP

Login de un Usuario Al conectarse un usuario al sistema: Telnet o ssh. Se evalúa si el modo de conexión (local o remoto) es válido para dicho usuario (en base al getty). Se arranca el programa shell asociado. Configuración de la sesión: general (/etc/profile) y de usuario (~/.profile). Intro. Linux FCFM, BUAP

Sus cuentas Cada usuario posee un espacio en el disco duro llamado su cuenta Asociada a esta cuenta se encuentra un nombre y una palabra clave: ID de login y password Sólo si coinciden el ID del login y el password podrá el usuario entrar al sistema Intro. Linux FCFM, BUAP

2. SISTEMAS DE ARCHIVOS Visión del usuario del sistema de archivos Directorios Servicios de archivos Servicios de directorios Sistemas de archivos El servidor de archivos Puntos a recordar Intro. Linux FCFM, BUAP

Gestión de archivos y directorios Objetivos: Entender los conceptos de archivo y directorio Mostrar los métodos de acceso y los mecanismos de protección Estudiar las semánticas de compartición Comprender la estructura del sistema de ficheros Presentar las llamadas al sistema y ejemplos de programación en LINUX y Windows Presentar distintas técnicas de gestión de archivos y directorios a nivel de diseño Intro. Linux FCFM, BUAP

Visión del usuario Visión lógica: Archivos Directorios Sistemas de archivos y particiones Visión física: Bloques o bytes ubicados en dispositivos Intro. Linux FCFM, BUAP

Función principal El SA establece una correspondencia entre los archivos y los dispositivos lógicos. Intro. Linux FCFM, BUAP

Características para el usuario Almacenamiento permanente de información. No desaparecen aunque se apague el computador. Conjunto de información estructurada de forma lógica según criterios de aplicación. Nombres lógicos y estructurados. No están ligados al ciclo de vida de una aplicación particular. Abstraen los dispositivos de almacenamiento físico. Se acceden a través de llamadas al sistema operativo o de bibliotecas de utilidades. Intro. Linux FCFM, BUAP

Sistema de archivos El acceso a los dispositivos es: Incómodo Detalles físicos de los dispositivos Dependiente de las direcciones físicas No seguro Si el usuario accede a nivel físico no tiene restricciones El sistema de archivos es la capa de software entre dispositivos y usuarios. Objetivos: Suministrar una visión lógica de los dispositivos Ofrecer primitivas de acceso cómodas e independientes de los detalles físicos Mecanismos de protección Intro. Linux FCFM, BUAP

Archivos: visión lógica Conjunto de información relacionada. Definida por su creador . Estructura de un archivo: Secuencia o tira de bytes (UNIX, POSIX). Registros (de tamaño fijo o variable). Posición C1 C2 C3 C4 Registro 1 Registro 2 Registro 3 Registro 4 Registro n Intro. Linux FCFM, BUAP

Concepto de archivo Un espacio lógico de direcciones contiguas usado para almacenar datos Tipos de archivos: Datos: numéricos carácter binarios Programas: código fuente archivos objetos (imagen de carga) Documentos Intro. Linux FCFM, BUAP

Atributos del archivo Nombre: la única información en formato legible por una persona. Identificación única del archivo y del usuario: descriptor interno del archivo, dueño y grupo del archivo Tipo de archivo: necesario en sistemas que proporciona distintos formatos de archivos. Tamaño del archivo: número de bytes en el archivo, máximo tamaño posible, etc. Protección: control de accesos y de las operaciones sobre archivos Información temporal: de creación, de acceso, de modificación, etc. Información de control: archivo oculto, de sistema, normal o directorio, etc. Intro. Linux FCFM, BUAP

Representación del archivo La información relacionada con el archivo se mantiene en el descriptor del archivo, al que se apunta desde los directorios. Es distinto en cada sistema operativo: nodo-i, registro Windows, etc. Tipos de archivos: Archivos normales: ASCII y binarios. Archivos especiales: de bloques y de caracteres Intro. Linux FCFM, BUAP

Ejemplos de representación Intro. Linux FCFM, BUAP

Nombres de Fichero y Extensiones Extensión Significado exe, com, bin, none c, s, asm, p pas, f77 Z, z, zip gif, jpg o, obj ps, dvi, pdf txt, doc tex, roff html Programa ejecutable Código fuente en distintos lenguajes Archivos comprimidos Archivos de imágenes Archivos de texto Archivos de hipertexto para World Wide Web Archivos de entrada para formateadores de texto Archivos ASCII o binarios en formato imprimible o visible Archivos objeto, compilados pero sin montar Tiras de caracteres Longitud: fija o variable Sensibles a tipografía Extensión: obligatoria o no Los usuarios usan nombres lógicos de este estilo Los directorios relacionan nombres lógicos y descriptores internos de ficheros El sistema de ficheros trabaja con descriptores internos Intro. Linux FCFM, BUAP

Estructura del fichero Ninguna - secuencia de palabras o bytes (UNIX) Estructura sencilla de registros Líneas Longitud fija Longitud variable Estructuras complejas Documentos con formato (HTML, postscript) Fichero de carga reubicable (módulo de carga) Se puede simular estructuras de registro y complejas con una estructura plana y secuencias de control ¿Quién decide la estructura? Interna: El sistema operativo Externa: Las aplicaciones Intro. Linux FCFM, BUAP

Distintas estructuras lógicas Intro. Linux FCFM, BUAP

Archivos: visión lógica II Estructura de un archivo: Archivos de estructura compleja Archivos indexados Archivos directos o de dispersión Ejemplo de archivo indexado: Los archivos estructurados en registros y los archivos con estructuras complejas se pueden construir como una capa sobre la visión de tira de bytes. Intro. Linux FCFM, BUAP

Estructura de archivo ejecutable LINUX Intro. Linux FCFM, BUAP

Concepto de directorio Objeto que relaciona de forma unívoca un nombre de usuario de archivo con su descriptor interno Organizan y proporcionan información sobre la estructuración de los sistemas de archivos Una colección de nodos que contienen información acerca de los archivos Intro. Linux FCFM, BUAP

Directorios: visión lógica Esquema jerárquico. Cuando se abre un archivo el SO busca el nombre en la estructura de directorios. Operaciones sobre un directorio: Crear (insertar) y borrar (eliminar) directorios. Abrir y cerrar directorios. Renombrar directorios. Leer entradas de un directorio. Montar (combinar) La organización jerárquica de un directorio Simplifica el nombrado de archivos (nombres únicos) Proporciona una gestión de la distribución => agrupar archivos de forma lógica (mismo usuario, misma aplicación) Intro. Linux FCFM, BUAP

Ejemplo: explorador de Windows Intro. Linux FCFM, BUAP

Estructura de los directorios Tanto la estructura del directorio como los archivos residen en discos Los directorios se suelen implementar como archivos Copias de respaldo en cintas, por seguridad Información en un directorio: nombre, tipo, dirección, longitud máxima y actual, tiempos de acceso y modificación, dueño, etc. Hay estructuras de directorio muy distintas. La información depende de esa estructura. Dos alternativas principales: Almacenar atributos de archivo en entrada directorio Almacenar <nombre, identificador>, con datos archivo en una estructura distinta. Esta es mejor. Intro. Linux FCFM, BUAP

Ejemplo de entradas de directorio Intro. Linux FCFM, BUAP

Organización del directorio Eficiencia: localizar un archivo rápidamente Nombrado: conveniente y sencillo para los usuarios Dos usuarios pueden tener el mismo nombre para archivos distintos Los mismos archivos pueden tener nombres distintos Nombres de longitud variable Agrupación: agrupación lógica de los archivos según sus propiedades (por ejemplo: programas Pascal, juegos, etc.) Estructurado: operaciones claramente definidas y ocultación Sencillez: la entrada de directorio debe ser lo más sencilla posible. Intro. Linux FCFM, BUAP

Directorio de un nivel Un único directorio para todos los usuarios Problemas de nombrado y agrupación Intro. Linux FCFM, BUAP

Directorio de dos niveles Un directorio por cada usuario Camino de acceso automático o manual El mismo nombre de archivo para varios usuarios Búsqueda eficiente, pero problemas de agrupación Intro. Linux FCFM, BUAP

Directorio con estructura de árbol Búsqueda eficiente y agrupación Nombres relativos y absolutos -> directorio de trabajo Intro. Linux FCFM, BUAP

Directorio con estructura de árbol Los nombres absolutos contienen todo el camino Los nombres relativos parten del directorio de trabajo o actual Cambio de directorio: cd /spell/mail/prog cd prog Borrar un archivo: rm <nombre-archivo> Crear un subdirectorio: mkdir <nombre_dir> Ejemplo: cd /spell/mail mkdir count ls /spell/mail/count Borrar un subdirectorio: rm -r mail Intro. Linux FCFM, BUAP

Directorio de grafo acíclico I Tienen archivos y subdirectorios compartidos Este concepto no existe en Windows Intro. Linux FCFM, BUAP

Directorio de grafo acíclico II link: Un archivo con varios nombres -> control de enlaces un único archivo con contador enlaces en descriptor (e. Físicos) archivos nuevos con el nombre destino dentro (e. simbólicos) Borrado de enlaces: a) decrementar contador; si 0 borrar archivo b) recorrer los enlaces y borrar todos c) borrar únicamente el enlace y dejar los demás Problema grave: existencia de bucles en el árbol. Soluciones: Permitir sólo enlaces a archivos, no subdirectorios Algoritmo de búsqueda de bucle cuando se hace un enlace Limitación de implementación en UNIX: sólo enlaces físicos dentro del mismo sistema de archivos. Intro. Linux FCFM, BUAP

Nombres jerárquicos Nombre absoluto: especificación del nombre respecto a la raíz (/ en LINUX, \ en Windows). Nombre relativo: especificación del nombre respecto a un directorio distinto del raíz Ejemplo: (Estamos en /users/) miguel/claves Relativos al dir. de trabajo o actual: aquel en el se está al indicar el nombre relativo. En Linux se obtiene con pwd Directorios especiales: . Directorio de trabajo. Ejemplo: cp / users/miguel/claves . .. Directorio padre. Ejemplo: ls .. Directorio HOME: el directorio base del usuario Intro. Linux FCFM, BUAP

Interpretación de nombres en LINUX. II Interpretar /users/miguel/claves Traer a memoria entradas archivo con nodo-i 2 Se busca dentro users y se obtiene el nodo-i 342 Traer a memoria entradas archivo con nodo-i 342 Se busca dentro miguel y se obtiene el nodo-i 256 Traer a memoria entradas archivo con nodo-i 256 Se busca dentro claves y se obtiene el nodo-i 758 Se lee el nodo-i 758 y ya se tienen los datos del archivo ¿Cuándo parar? Se ha encontrado el nodo-i del archivo No se ha encontrado y no hay más subdirectorios Estamos en un directorio y no contiene la siguiente componente del nombre (por ejemplo, miguel). Intro. Linux FCFM, BUAP

Jerarquía de directorios ¿Árbol único de directorios? Por dispositivo lógico en Windows (c:\users\miguel\claves, j:\pepe\tmp, ...) Para todo el sistema en UNIX (/users/miguel/claves, /pepe/tmp, ...). Hacen falta servicios para construir la jerarquía: mount y umount. mount /dev/hda /users umount /users Ventajas: imagen única del sistema y ocultan el tipo de dispositivo Desventajas: complican la traducción de nombres, problemas para enlaces físicos entre archivos Intro. Linux FCFM, BUAP

Montado de Sistemas de archivos o particiones / /lib /bin /usr /d1 /d2 /d3 /d3/f2 /d3/f1 /usr/d1 /usr/d3 /usr/d3/f2 /usr/d3/f1 Volumen raiz (/dev/hd0) Volumen sin montar (/dev/hd1) mount /dev/hd1 /usr Volumen montado /usr/d2 Intro. Linux FCFM, BUAP

Arbol de directorios /bin: Ejecutables básicos del SSOO. /dev: Ficheros especiales asociados a dispositivos. /etc: Configuración del sistema. /home: Directorio de cuentas de usuarios. /lib: Librerías básicas del sistema. / /bin /dev /etc /home /lib /mnt /opt /proc /sbin /tmp /usr /var /include /local /man Intro. Linux FCFM, BUAP

Arbol de directorios /mnt: Directorio de montaje de ciertos sistemas de ficheros. /opt: Aplicaciones adicionales del sistema. /proc: Sistema de ficheros virtual para la gestión de recursos. /sbin: Ejecutables de administración del SSOO / /bin /dev /etc /home /lib /mnt /opt /proc /sbin /tmp /usr /var /include /local /man Intro. Linux FCFM, BUAP

Arbol de directorios /tmp: Directorio para ficheros temporales. /usr: Aplicaciones adicionales del SSOO. /usr/local: Programas locales del sistema. /var: Directorio para ficheros de log y colas de trabajos. / /bin /dev /etc /home /lib /mnt /opt /proc /sbin /tmp /usr /var /include /local /man Intro. Linux FCFM, BUAP

Directorios Especiales /dev Agrupa entradas de tres diferentes tipos: Dispositivos de tipo carácter. Dispositivos de tipo bloque. Dispositivos virtuales (/dev/zero). Todos estos dispositivos tienen asociado un minor y un major number. /proc Se corresponde con un sistema de ficheros virtual (no tiene soporte en disco). Las entradas del directorio son: Procesos en ejecución. Información del sistema. Mapping de recursos del sistema. Intro. Linux FCFM, BUAP

Servicios POSIX para archivos Visión lógica: tira secuencial de bytes Apuntador de posición a partir del cual se efectúan las operaciones Descriptores de archivos: enteros de 0 a 64K Predefinidos (describir programas independientes de dispositivos): 0: entrada estándar 1: salida estándar 2: salida de error Fork: duplicación de BCP, pero compartición de tabla de archivos. Servicios consulta y modificación atributos. Protección: dueño grupo mundo rwx rwx rwx Ejemplos: 755 indica rwxr-xr-x Intro. Linux FCFM, BUAP

Archivos, directorios y servicios en POSIX (UNIX) Tipos de archivo: Normales Directorios Especiales Nombres de archivo y directorio: Nombre completo (empieza por /) /usr/include/stdio.h Nombre relativo al directorio actual (no empieza por /) stdio.h asumiendo que /usr/include es el directorio actual. La entradas . y .. pueden utilizarse para formar rutas de acceso ../include/stdio.h Intro. Linux FCFM, BUAP

Sistemas de archivos y particiones El sistema de archivos permite organizar la información dentro de los dispositivos de almacenamiento secundario en un formato inteligible para el sistema operativo. Previamente a la instalación del sistema de archivos es necesario dividir físicamente, o lógicamente, los discos en particiones o volúmenes [Pinkert 1989]. Una partición es una porción de un disco a la que se la 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. Para ello se proporcionan mandatos como format o mkfs al usuario. #mkswap –c /dev/hda2 20800 #mkfs -c /dev/hda3 –b 8196 123100 Intro. Linux FCFM, BUAP

Tipos de particiones Intro. Linux FCFM, BUAP

Sistemas de archivos y particiones (II) Sistema de archivos: conjunto coherente de metainformación y datos. Ejemplos de Sistemas de archivos: Intro. Linux FCFM, BUAP

Sistemas de archivos y particiones (III) Descripción de sistemas de archivos: El sector de arranque en MS-DOS El superbloque en UNIX Relación sistema de archivos-dispositivo: Típico: 1 dispositivo N sistemas de archivos (particiones) Grandes archivos: N dispositivos 1 sistema de archivos Típicamente cada dispositivo se divide en una o más particiones (en cada partición sistema de archivos) La tabla de particiones indica el principio, el tamaño y el tipo de cada partición. Intro. Linux FCFM, BUAP

Otros sistemas de archivos Fast File System EXT2 (extended file system) Archivos con bandas LFS (log structured file system) Sistemas de archivos paralelos .... Intro. Linux FCFM, BUAP

Servidor de archivos Para proporcionar un acceso eficiente y sencillo a los dispositivos de almacenamiento, todos los sistemas operativos tienen un servidor de archivos que permite almacenar, buscar y leer datos fácilmente. Dicho servidor de archivos tiene dos tipos de problemas de diseño muy distintos entre sí: Definir la visión de usuario del sistema de entrada/salida, incluyendo servicios, archivos, directorios, sistemas de archivos, etc. Definir los algoritmos y estructuras de datos a utilizar para hacer corresponder la visión del usuario con el sistema físico de almacenamiento secundario. Intro. Linux FCFM, BUAP

Estructura del servidor de archivos Intro. Linux FCFM, BUAP

Sistema de archivos virtuales S.A. Virtual: interfaz de llamadas de entrada/salida del sistema y de pasar al módulo de organización de archivos la información necesaria para ejecutar los servicios pedidos por los usuarios. Servicios: manejo de directorios, gestión de nombres, algunos servicios de seguridad, integración dentro del servidor de archivos de distintos tipos de sistemas de archivos servicios genéricos de archivos y directorios. Nodo virtual: estructura de información que incluye las características mínimas comunes a todos los sistemas de archivos subyacentes y que enlaza con un descriptor de archivo de cada tipo particular. Intro. Linux FCFM, BUAP

Módulo de organización de archivos Proporciona el modelo del archivo del sistema operativo y los servicios de archivos. Relaciona la imagen lógica del archivo con su imagen física, proporcionando algoritmos para trasladar direcciones lógicas de bloques a sus correspondientes direcciones físicas. Gestiona el espacio de los sistemas de archivos, la asignación de bloques a archivos y el manejo de los descriptores de archivo (nodos-i de UNIX o registros de Windows NT). Un módulo de este estilo por cada tipo de archivo soportado (UNIX, AFS, Windows NT, MS-DOS, EFS, MINIX, etc.). Dentro de este nivel también se proporcionan servicios para pseudo-archivos, tales como los del sistema de archivos proc. Las llamadas de gestión de archivos y de directorios particulares de cada sistema de archivos se resuelven en el módulo de organización de archivos. Para ello, se usa la información existente en el nodo-i del archivo afectado por las operaciones. Intro. Linux FCFM, BUAP

Flujo de datos en el S. de A. Intro. Linux FCFM, BUAP

Estructuras de datos asociadas al S. de A. (I) Tabla de nodos-v: almacena en memoria la información del nodo-v existente en el disco y otra que se usa dinámicamente y que sólo tiene sentido cuando el archivo está abierto. Problema: si sólo hay un campo de apuntador, cada operación de un proceso afectaría a todos los demás. Posible solución: incluir la información relativa al archivo dentro del bloque de descripción del proceso (BCP). Tabla de archivos abiertos (tdaa) por un proceso, dentro del BCP, con sus descriptores temporales y el valor del apuntador de posición del archivo para ese proceso. El tamaño de esta tabla define el máximo número de archivos que cada proceso puede tener abierto de forma simultánea. El descriptor de archivo fd indica el lugar de tabla. La tdaa se rellena de forma ordenada, de forma que siempre se ocupa la primera posición libre de la tabla. En los sistemas UNIX cada proceso tiene tres descriptores de archivos abiertos por defecto: entrada estándar, fd = 0, salida estándar, fd = 1, error estándar, fd = 2. Intro. Linux FCFM, BUAP

Flujo datos con cache de bloques Intro. Linux FCFM, BUAP

Políticas de reemplazo Algoritmo: Comprobar si el bloque a leer está en la cache. En caso de que no esté, se lee del dispositivo y se copia a la cache. Si la cache está llena, es necesario hacer hueco para el nuevo bloque reemplazando uno de los existentes: políticas de reemplazo. Si el bloque ha sido escrito (sucio): política de escritura. Políticas de reemplazo: FIFO (First in First Out), segunda oportunidad, MRU (Most Recently Used), LRU (Least Recently Used), etc. La política de reemplazo más frecuentemente usada es la LRU. Esta política reemplaza el bloque que lleva más tiempo sin ser usado, asumiendo que no será referenciado próximamente. Los bloques más usados tienden a estar siempre en la cache y, por tanto, no van al disco. La utilización estricta de esta política puede crear problemas de fiabilidad en el sistema de archivos si el computador falla. La mayoría de los servidores de archivos distinguen entre bloques especiales y bloques de datos. Intro. Linux FCFM, BUAP

Políticas de escritura Escritura inmediata (write-through): se escribe cada vez que se modifica el bloque. No hay problema de fiabilidad, pero se reduce el rendimiento del sistema. Escritura diferida (write-back): sólo se escriben los datos a disco cuando se eligen para su reemplazo por falta de espacio en la cache. Optimiza el rendimiento, pero genera los problemas de fiabilidad anteriormente descritos. Escritura retrasada (delayed-write), que consiste en escribir a disco los bloques de datos modificados en la cache de forma periódica cada cierto tiempo (30 segundos en UNIX). Compromiso entre rendimiento y fiabilidad. Reduce la extensión de los posibles daños por pérdida de datos. Los bloques especiales se escriben inmediatamente al disco. No se puede quitar un disco del sistema sin antes volcar los datos de la cache. Escritura al cierre (write-on-close): cuando se cierra un archivo, se vuelcan al disco los bloques del mismo que tienen datos actualizados. Intro. Linux FCFM, BUAP

Montado de sistemas de archivos o particiones Oculta el nombre del dispositivo físico o partición En MS-DOS c:\tmp\datos.txt / /lib /bin /usr /d1 /d2 /d3 /d3/f2 /d3/f1 /usr/d1 /usr/d3 /usr/d3/f2 /usr/d3/f1 Volumen raiz (/dev/hd0) Volumen sin montar (/dev/hd1) mount /dev/hd1 /usr Volumen montado /usr/d2 Intro. Linux FCFM, BUAP

Enlaces Permite que dos o más nombres hagan referencia al mismo archivo. Dos tipos: Enlace físico El archivo sólo se elimina cuando se borran todos los enlaces Sólo se permiten enlazar archivos (no directorios) del mismo volumen. Enlace simbólico El archivo se elimina cuando se borra el enlace físico. Si permanece el enlace simbólico provoca errores al tratar de accederlo. Se puede hacer con archivos y directorios. Se puede hacer entre archivos de diferentes sistema de archivos Intro. Linux FCFM, BUAP

Enlace físico Intro. Linux FCFM, BUAP

Enlace simbólico Intro. Linux FCFM, BUAP

Ejemplo de montado Intro. Linux FCFM, BUAP

Fiabilidad del sistema de archivos Fallos HW y SW pueden provocar fallos en un volumen Soluciones: Hardware: Controladores que tratan con sectores con fallos Discos con información redundante (RAID) Backups (copias de respaldo) En discos En cintas Backups incrementales Intro. Linux FCFM, BUAP

Redundancia con paridad Intro. Linux FCFM, BUAP

Consistencia del sistema de archivos (I) Dos aspectos importantes: Comprobar que la estructura física del sistema de archivos es coherente. Verificar que la estructura lógica del sistema de archivos es correcta. Estrucutra física: se comprueba la superficie del dispositivo de almacenamiento. Estructura lógica: Se comprueba que el contenido del superbloque responde a las características del sistema de archivos. Se comprueba que los mapas de bits de nodos-i se corresponden con los nodos-i ocupados en el sistema de archivos. Se comprueba que los mapas de bits de bloques se corresponden con los bloques asignados a archivos. Se comprueba que ningún bloque esté asignado a más de un archivo. Se comprueba el sistema de directorios del sistema de archivos, para ver que un mismo nodo-i no está asignado a más de un directorio. Intro. Linux FCFM, BUAP

Consistencia del sistema de archivos (II) Consistencia sobre archivos: Contador de enlaces > contador real Contador de enlaces < contador real Número de nodo-i > Número total de nodos-i Archivos con bits de protección 0007 Archivos con privilegios en directorios de usuario UNIX y LINUX: fsck fsck /dev/dsk/c0t0d3s1 Comprueba el dispositivo físico c0t0d3s1 Intro. Linux FCFM, BUAP

Puntos a recordar (I) · Los archivos y los directorios son los elementos centrales del sistema. · Archivo: unidad de almacenamiento lógico no volátil que agrupa un conjunto de información relacionada entre sí bajo un mismo nombre. · Todos los sistemas operativos tienen un descriptor de archivo que almacena atributos del mismo. · Todos los sistemas operativos proporcionan mecanismos de nombrado que permiten asignar un nombre a un archivo en el momento de su creación. · Desde el punto de vista del usuario, la información de un archivo puede estructurarse como una lista de caracteres, un conjunto de registros secuencial o indexado, etc. ·  Las dos formas de acceso más habituales son el acceso secuencial y el directo (o aleatorio). · La semántica de coutilización especifica qué ocurre cuando varios procesos acceden de forma simultánea al mismo archivo. ·  Un directorio es un objeto que relaciona de forma unívoca el nombre de usuario de un archivo y el descriptor interno del mismo usado por el sistema operativo. Intro. Linux FCFM, BUAP

Puntos a recordar (II) · Hay dos posibles formas de especificar un nombre: nombre completo del archivo, denominado nombre absoluto, o nombre de forma relativa a algún subdirectorio del árbol de directorios, denominado nombre relativo. ·  Previamente a la instalación del sistema operativo es necesario dividir físicamente, o lógicamente, los discos en particiones o volúmenes. ·  Una vez creadas las particiones, el sistema operativo debe crear las estructuras de los sistemas de archivos dentro de esas particiones. Para ello se proporcionan mandatos como format o mkfs al usuario. · El superbloque, los mapas de bloques y los mapas de descriptores constituyen la metainformación de un sistema de archivos. Si el superbloque se estropea, todo el sistema de archivos queda inaccesible. · Existen distintos tipos de estructuras de sistemas de archivos: tradicional, FFS, LFS, con bandas, etc. Cada una de ellas es más apropiada para determinados propósitos. El FFS es muy usado en la actualidad. · Los servidores de archivos tienen una estructura interna que, en general, permite acceder a los distintos dispositivos del sistema mediante archivos de distintos tipos, escondiendo estos detalles a los usuarios. Intro. Linux FCFM, BUAP

Puntos a recordar (III) · El sistema de archivos virtuales proporciona una interfaz de llamadas de entrada/salida genéricas válidas para todos los tipos de sistemas de archivos instalados en el sistema operativo. · Los mecanismos de asignación hacen corresponder la imagen lógica del archivo con la imagen física que existe en el almacenamiento secundario. Hay dos políticas de asignación básicas: bloques contiguos y bloques discontiguos. · Dos mecanismos populares para gestionar el espacio libre son los mapas de bits y la lista de bloques libres. · Para optimizar el rendimiento del sistema de entrada/salida, el servidor de archivos incorpora mecanismos de incremento de prestaciones tales como discos RAM, caches de nombres, caches de bloques y compresión de datos. · La destrucción de un sistema de archivos es, a menudo, mucho peor que la destrucción de un computador. Es importante salvaguardar los datos. · Un sistema de archivos puede quedar en estado incoherente por mal uso, caídas de tensión, apagados indebidos del sistema operativo, etc. · Actualmente, algunos servidores de archivos incorporan servicios avanzados tales como actualizaciones atómicas, transacciones o replicación. Intro. Linux FCFM, BUAP

Terminales Gráficos X Window: Entorno gráfico de los sistemas UNIX. Arquitectura Cliente/Servidor Diferentes niveles (librerías) de desarrollo. Nuevos problemas de seguridad. Intro. Linux FCFM, BUAP

X Windows Asociado al terminal gráfico. Servidor: Asociado al terminal gráfico. Muestra en pantalla los pixels. Cliente: Aplicación con salida gráfica. Está asociada a un servidor. window manager xterm Servidor X xterm Intro. Linux FCFM, BUAP

X Windows Servidor: Interactúa con el hardware gráfico. Acepta mensajes X11. Clientes: Usan primitivas para dibujar en el servidor. Pueden ser aplicaciones remotas. Gestor de ventanas: window manager Intro. Linux FCFM, BUAP

X Windows Aplicaciones X Motif Xtoolkit Xlib X11 Kernel Hardware Motif Librerías de alto nivel: Motif Qt ... Librerías de bajo nivel: X11 Xlib Aplicaciones X Motif Xtoolkit Xlib X11 Kernel Hardware Intro. Linux FCFM, BUAP