Tag Archives: archivo

Sistema de archivos, fácil

30 Nov

Como ya comente en el post Sistema Operativo, fácil, fácil, el componentes que realiza la manera en que los archivos se organizan, abren, leen, escriben, administran, protegen, etc son tareas típicas y fundamentales en el diseño de sistemas operativos. La parte del sistema que administra los archivos se conoce como Sistema de archivos.

ARCHIVO: Las aplicaciones, como los usuarios necesitan almacenar y recupera la información o datos, en dispositivos de almacenaje, como los discos duros. Debe ser posible almacenar una cantidad muy grande de información durante el tiempo que sea preciso, la información debe sobrevivir a la terminación del proceso que la utilice y debe poderse recuperar cuando sea necesaria, los procesos deben ser capaces de acceder a la información a la vez.

Nombre de Archivo: Los antiguos sistemas como MSDOS, el nombre estaba restringido a un máximo de 8 caracteres, en los modernos han ampliado hasta un máximo de 255. Cada S.O establece unas reglas para la formación de los nombres (números, símbolos, letras), no todos los símbolos son admitidos. En Windows no distingue entre mayúsculas y minúsculas, mientras que Unix si lo hace. Así el archivo vivienda_22 no es lo mismo que VIVIENDA_22, son distintos documentos.

Para denominar a un archivo, se utilizan dos partes, de forma que la primera es el nombre principal, y la segunda la extensión que se utiliza para identificar el tipo de archivo (texto-txt, imagen-jpg, sonido-mp3, video-mpg…)

Las extensiones de los archivos se separan del nombre principal por un punto, esto es vivienda_22.doc – vivienda_22.jpg – si es un documento de texto o una fotografía.

Atributos de un archivo: Cada archivo tiene unas características reconocible, nombre, tipo de archivo, tamaño, protección, fecha, hora de creación, usuario, propietario, etc.

Estructura: Se estructuran como un conjunto sucesivo de bytes independientemente de su contenido. En algunos casos los archivos constan de una subdivisión en registros, como es el caso de ficheros o bases de datos. Esto es, en un fichero de clientes, la ficha de un cliente (nombre, dirección, cif, teléfono, etc) forman un registro, cada uno de los cuales consta de un campo llave que le permite al S.O disponer de un modo eficaz para distinguir un cliente concreto de los demás, así podremos acceder directamente a cualquier cliente sin la necesidad de recorrer todos los que están situados en el fichero antes que él, esto es lo que se denomina acceso directo. Acceso secuencial es el proceso de acceso por el cual leemos el registro en el mismo orden en que fueron grabados.

Operaciones con archivos: Algunas operaciones sobre archivos que nos parecen sencillas, son cantidad órdenes que las aplicaciones delegan en el S.O. La aplicación cuando tiene que realizar alguna de ellas le pasa los argumentos al S.O este se encarga de realizar la operación. Las operaciones más comunes que son realizada son: create (crear), delete (eliminar), open (abrir), close (cerrar), etc.

Directorios: El S.O organiza los archivos en directorios (carpetas). Podemos crear la jerarquía de directorios que necesitemos, de forma que un directorio puede, a su vez otros subdirectorios, siempre hay un directorio de partida, directorio raíz (/) “padre”, ramifican el resto de subdirectorios “hijos”

Los directorios al igual que los archivos se identifican por un nombre.

Nombre de rutas: Al tener una estructura jerárquica en la organización de los archivos, y como los archivos de los usuarios pueden almacenar en cualquiera de ellos, es preciso que para encontrar el archivo deseado tengamos que recorrer un camino “ruta” y se expresa separando todos los nombres de subdirectorios por un carácter como “\” windows o “/” Linux.

El archivo vivienda_22.jpg que está en el subdirectorio de imágenes, que pertenece al usuario3, su ruta de acceso seria: /usuario3/imágenes/vivienda_22.png

Implementación física: Una vez particionado el disco dura, le damos formato (formatear), es la operación en la cual se implanta la estructura que será utilizada para el almacenamiento de los archivos, sistema de archivos, cada S.O. utiliza un sistema de archivos diferente, Windows implanta el FAT32 o NTFS Y Linux el ext3

Clúster o Grupo: La unidad mínima de asignación en los discos duros en principio es un sector (512 bytes), un archivo necesitará ocupar tantos sectores como necesite según su tamaño.

Clúster, Sector, Pista

Los sectores no tienen que ser continuos cuando un archivo necesita varios, el S.O  sabe cuáles y cuántos son los sectores que ocupan cada uno de los archivos del disco duro.

Si el S.O manejase los archivos a nivel sectores, tendríamos una pérdida de rendimiento, ya que en un disco de 10 Gb serian 20 millones de sectores. En lugar de trabajar con sectores el S.O utiliza los clúster o grupos, que contienen un número de sectores continuos que pueden variar de 4 y 64 sectores, dependiendo del tamaño de disco y del implante del sistema de archivos.

Cada clúster sólo puede almacenar información de un archivo, no puede reutilizarse. Si un clúster que tiene 6 sectores (6×512=3072bytes) almacenamos un archivo que ocupa 125 bytes, tendríamos 2947 bytes desperdiciados en el clúster, ya que dos archivos no pueden compartir el mismo clúster. El último clúster de cada archivo es muy probable que tenga un espacio desperdiciado.

Fragmentación: Los clúster de un archivo no tienen que estar situados contiguamente dentro de un disco duro, por lo que es preciso conocer las direcciones físicas de cada clúster para poder acceder a la información del archivo. Al realizar operaciones con los archivos (incorporar más datos), sus clúster se van desperdigando por todo el disco duro, de forma que este aparecerá fragmentado. Canto más disperso estén los clúster, más se tardará en leer los datos del archivo, esto puede solucionarse utilizando el desfragmentador de disco del S.O, sitúa a todos los clúster de un archivo de forma contigua físicamente.

Sistema operativo fácil, fácil

5 Oct

Es un programa o un conjunto de programas que en un sistema informático gestiona los recursos de hardware y provee los servicios a los programas de aplicaciones, para ellos necesita unos componentes.

linux

Esto es la verdadera definición del SO, pero no solo es abrir Word, Cal, Base, cualquier aplicación de música o video, o guardar, pegar, copiar cualquier tipo de archivo, pueden ser algunas de las múltiples ordenes que le damos para poder operar, pero esto solo es 10 o 15% de su funcionamiento, detrás de cada una de ordenes genera múltiples ordenes que el SO necesita para poder poner en funcionamiento todo lo que el usuario le solicita.

Los componentes del sistema son: procesos, memoria, archivos, protección, intérprete de órdenes, entrada/salida, redes, llamadas al sistema y desconocimiento de la máquina.

PROCESOS: Programa en ejecución.

  • Tiempo de CPU
  • Memoria
  • Archivos
  • Dispositivo Entrada/Salida

A la finalización de un proceso el Sistema Operativo recupera los recursos que había utilizado.

El SO se encarga de las siguientes actividades relacionadas con la gestión de procesos:

  • Crear y eliminar procesos
  • Suspender y reanudar procesos
  • Proveer mecanismos para la sincronización de procesos
  • Proveer mecanismos para la comunicación de procesos
  • Proveer mecanismos para manejar bloqueos mutuos

MEMORIA: Memoria principal: almacén de datos de acceso rápido, que son compartidos por la CPU y los dispositivos de entrada/salida.

            Es el único dispositivo de almacenamiento grande que la CPU puede direccionar y acceder directamente.

            Las instrucciones deben estar en la memoria principal para que la CPU pueda ejecutarlas, es preciso cargar los programas en la memoria principal.

            El SO se encarga de las siguientes actividades relacionadas con la gestión de memoria.

  • Saber que parte de la memoria se están usando, cuáles están libres y quién las está usando.
  • Decidir qué procesos cargar en la memoria.
  • Asignar y liberar espacio de memoria.

ARCHIVOS: Conjunto de información relacionada generalmente con programas y datos. Se organizan en directorios para hacer su uso más sencillo. Cuando varios usuarios tienen acceso a los archivos, se debe controlar quién y de qué modo accede a ellos. El SO se encarga de las siguientes actividades relacionadas con la gestión de archivos.

  • Crear y eliminar archivos
  • Crear y eliminar directorios
  • Proveer las primitivas para manejo de archivos y directorios
  • Establecer la correspondencia archivo-almacenamiento secundario
  • Guardar archivos

PROTECCIÓN: Es preciso proteger a un proceso de los demás, ya que el sistema de computación admite múltiples usuarios y la ejecución concurrente de procesos.

La protección es el mecanismo para controlar el acceso de programas, procesos o usuarios a los recursos definidos por un sistema de computador. La protección mejora la confiabilidad mediante la detección de errores.

INTERPRETE DE ÓRDENES: Interfaz entre usuario y sistema operativo, para que un usuario pueda dialogar directamente con el SO, se proporciona un interface básico para:

  • Cargar programas
  • Abortar programas
  • Introducir datos
  • Trabajar con archivos
  • Trabajar con redes

ENTRADAS/SALIDAS:  Se trata de un conjunto de dispositivos muy variados y complejos de programar. El SO se encarga de las siguientes actividades relacionadas con la gestión de entrada/salida.

  • Proporcionar una interfaz uniforme para el acceso a los dispositivos.
  • Proporcionar manejadores para los dispositivos concretos
  • Tratar automáticamente los errores más típicos
  • Para los dispositivos de almacenamiento, usar cachés
  • Para los discos, planificar de forma óptima las peticiones

REDES: Colección de procesadores con sus propios recursos locales que se comunica con otros procesadores conectados mediante una red. El objetivo del SO es proporcionar el sistema de comunicación para conectarse con equipos remotos y acceder de forma controlada a sus recursos.

LLAMADAS AL SISTEMA: Interfaces con los servicios del SO

  • Para el programador las llamadas al sistema en lenguaje máquina o en alto nivel
  • Para el usuario, intérprete de órdenes y programas del sistema

El SO ofrece una gama de servicios a los programas que acceden a ellos mediante llamadas al sistema.

Son la interfaz entre el programa en ejecución y el SO

Única forma en la que un programa puede solicitar operaciones al SO

Implementación de las llamadas al sistema

  • Cómo se implementa la llamada? Mediante una instrucción especial de la máquina (syscall, trap…) la instrucción cambia automáticamente a modo privilegiado.
  • Si programamos en un lenguaje de alto nivel escribimos la llamada al sistema como una subrutina, y el compilador la sustituye por la instrucción de máquina correspondiente.

Tipos de llamadas al sistema

  • Control de procesos: Fin, abortar, carga, ejecutar, crear, finalizar, obtener y establecer atributos, espera, asignar y liberar memoria.
  • Manipulación de archivos: Crear y eliminar archivos, abrir y cerrar, leer, escribir, reposicionar, obtener y establecer atributos.
  • Manipulación de dispositivos: Solicitar y liberar, leer, escribir, reposicionar, obtener y establecer atributos, conectar y desconectar dispositivos.
  • Mantenimiento de información: Obtener y establecer hora, fecha, datos del sistema, atributos de un proceso, archivo o dispositivo.
  • Comunicaciones: Crear, eliminar conexiones, enviar y recibir mensajes….

DESCONOCIMIENTO DE LA MÁQUINA: El usuario lo mantiene aislado del conocimiento de la máquina, puede o no tener conocimiento del funcionamiento de la máquina.

Mariposas de Cris

Autora de "Dime con quién hablas y te diré si estás loca"

LA INFORMÁTICA Y YO

Aprender el mundo de la informática

Principiantes entre fogones

Recetas de Cocina para amantes de la gastronomía casera, pensando en los "españoles por el mundo" que, por primera vez, se ven solos "entre fogones" y para todos aquellos que quieren aprender a cocinar.

Remigio Sol

¡Viva la Música!

El blog de una empleada doméstica

Aventuras de una chacha

Maite Pombar Pedrosa

Ampliando horizontes en el mundo empresarial

la recacha

Una recacha es un sitio donde uno se siente a gusto, protegido. Un entorno adecuado para reflexionar sobre la vida...

VIAJES AL FONDO DEL ALSA

“Quizás viajar no sea suficiente para prevenir la intolerancia, pero si logra demostrarnos que todas las personas lloran, ríen, comen, se preocupan y mueren, puede entonces introducir la idea de que si tratamos de entendernos los unos a los otros, quizás hasta nos hagamos amigos” – Maya Angelou

A %d blogueros les gusta esto: