jueves, 8 de diciembre de 2016

5.2 Noción de archivo virtual y real. / 5.7 Modelo jerarquico

Equipo 1

Noción de archivo real y virtual

Un archivo real en una unidad de almacenamiento, una característica depende entre más texto más es el espacio en la unidad de almacenamiento. Es un objetivo que contiene programas, datos, o cualquier otro elemento.
Archivo virtual: este archivo no consume tanto espacio en el disco duro, si no que se almacenan en memoria volátil. Como spontyfi, drive.



Equipo 2

Componentes de un sistema de archivos

Un archivo, está formado por aquellas rutinas encargadas de administrar todos los archivos relacionados con el manejo de archivos.

Compuestas de acceso secuencial: tiene que ser leído secuencialmente van desde el principio hasta el fin. Las operaciones más comunes son la lectura y escritura.

Acceso directo: son los discos magnéticos; se accede por medio de un apuntador.

Administración de archivos: son almacenados, y compartidos.

Almacenamiento auxiliar: son secundarios, DVD, Blu-ray.

Integridad: espacio  de bloques organizar la información.

Organización de archivos: tipo físico y tipo lógico, cada entrada el archivo es un ruta destinada.
Estructura de archivos                                                   

                                                                                       Es una serie estructurada de bytes
·         Secuencia de bytes

                                                                                           Longitud fija con su estructura interna.
·         Secuencia de registros                  
                                                                                    
·                  Secuencia por árbol                            Árbol de registros , cada registro, 

                                                 Contiene un campo key (llave de posición del registro)


Equipo 3

Organización lógica y física

Se refiere a las diferentes maneras de organizar los archivos.

Organización lógica: la mayoría las organizan en jerarquías llamadas carpetas o directorios.

Organización física: está formado por un conjunto de registros físicos y los bloques están organizados en forma consecutiva, estos registros puede contener etiquetas que permitan un mayor control de los datos almacenados.

Etiqueta de volumen: se identifica con el nombre de propietario y cualquier información general, nombre del archivo, fecha de creación.

Etiqueta de usuario: sirve para guardar información adicional de importancia para el usuario.



Equipo 4  

Mecanismo de acceso a los archivos

Existen varios mecanismos, directorios, descriptores, mecanismos de control de acceso, y procedimientos para abrir y cerrar archivos.

Descriptor de archivos: es un bloque de control de la información.
·         Datos de control de acceso
·         Tipo-disposición-fecha de creación-fecha de destrucción.

Identificador del archivo
Nombre simbólico que es la de que el usuario y el identificador interno que es asignado por el sistema.

Mecanismos de acceso: control de un sistema de información especializado en tener acceso. Open (para abrir un archivo), Close (para cerrar un archivo).


Equipo 5

Manejo de espacios en la memoria secundaria

Es el almacenamiento secundario en el espacio de los discos. Vector de bits
Lista ligada, por conteo.

Vector de bits: está representado por bits.

Lista ligada: tienen la cabecera en la que tiene la dirección.

Por conteo: conjunto de sectores continuos que están vacíos.

Métodos de asignación de espacio en el disco 
Un método de asignación de espacio en el disco de manera contigua, listada, indexada.




Equipo 6

Modelo jerárquico

Se dividen en directorios estos contienen:
·      
           Nombre 
·         Atributos
·        Las direcciones en disco donde se almacenan los datos

Otra  posibilidad es que cada entrada al directorio es por el nombre del archivo, y por un apuntador donde se encuentran los datos y las direcciones del disco.

La organización de los directorios varía de sistema a sistema:

Directorio único: el sistema de un solo directorio con todos los archivos de todos los usuarios.

Directorio por usuario: el sistema habilita un solo directorio por cada usuario.

Árbol de direcciones por usuario: el sistema permite que cada usuario tenga tantos directorios que necesite, respetando la jerarquía general.

Cuadro comparativo de los sistemas de archivo

Cuadro comparativo de los sistemas de archivo

Cuadro comparativo de los sistemas de archivos

Sistema operativo
Sistema de archivos
Características

Windows 7
Windows 8


FAT 32
·         Puede admitir tamaños de particiones hasta 2TB o 2048.
·         Padece  de una gran fragmentación
·         Es inestable.



NFTS
·         Es muy estable
·         Puede admitir tamaños hasta de 16 exabytes
·        Incorpora más funciones de seguridad.
·         Incorpora más atributos extendidas.
·         Se basa en la tabla maestra de los archivos o MTF.
·         Permite nombres extensos, y distingue entre mayúsculas y minúsculas.


EXFAT
·         Fragmentación excesiva de datos.
·         Deja fragmentos dispersos por todo el soporte de almacenamiento.

DOS
FAT 16
·         Permite trabajar con particiones de hasta 2GB.
·         No distingue entre mayúsculas y minúsculas.
MAC OS
HFS(sistema de archivos jerárquico)
·         Sectores 0y 1 del volumen son bloques de arranque.
·         Sector 2 contiene la cabecera del volumen.
El archivo de asignación mantiene un registro de bloques de los de asignación que están libres y los que están en uso.
El archivo de atributos es un nuevo árbol B*EN HFS.
MFS(sistema de archivos jerárquico)
·         Almacena archivos de disquets de 400k.
·         Introduce los folk de recurso para permitir el almacenamiento de datos.
·         Permite el almacenamiento de metadatos. 
·         Accede que los nombres tengan una longitud de hasta 255 caracteres.

IBMMAIK

JFS(sistema de archivo diario)
·         Eficiente respaldo de transacciones.
·         Eficiente administración de directorios.
·         Mejor utilización de la memoria mediante adjudicación de forma dinámica de inodes.
·         Cumple con las experiencias de entorno de su servidor de alto rendimiento en que solo cuenta el funcionamiento.

miércoles, 19 de octubre de 2016

4.4 Operadores de Entrada / Salida

DMA: Memoria de Acceso directo
El acceso directo a memoria (DMA, del inglés direct memory access) permite a cierto tipo de componentes de una computadora acceder a la memoria del sistema para leer o escribir independientemente de la unidad central de procesamiento (CPU). Muchos sistemas hardware utilizan DMA, incluyendo controladores de unidades de disco, tarjetas gráficas y tarjetas de sonido. DMA es una característica esencial en todos los ordenadores modernos, ya que permite a dispositivos de diferentes velocidades comunicarse sin someter a la CPU 

IRQ: Interrupt ReQuest=Pedido de interrupción

Como lo dice la palabra, es un pedido de interrupción de parte de la BIOS (Basic Input Output System) hacia el CPU, o sea, que deje de hacer sus tareas (pedido de interrupción) para que pase a procesar lo que necesita un hardware específico.
Siendo esto la definición de IRQ, vamos a adentrarnos un poco más en su funcionamiento.

PCI: Peripheral Component Interconnect.

* Estándar que especifica un tipo de bus de una computadora para adjuntar dispositivos periféricos a la placa madre.
Esos dispositivos pueden ser:

1. Un circuito integrado incorporado dentro de la placa madre.

           2. Una 
tarjeta de expansión que encaja en un socket(ranura) de la placa madre.

El bus PCI es común en
PCs modernas, y ha desplazado al bus ISA y al bus VESA (VLB) como buses estándares de expansión. El PCI será eventualmente reemplazado por el PCI Express, que ya es estándar en la mayoría de las nuevas computadoras





4.3 Estructura de datos para manejadores de dispositivos

Estructura simple o sistema monolitico
   
        El sistema MS-DOS es, sin duda, el mejor sistema operativo para microcomputadoras. Sin embargo, sus interfaces y niveles de funcionalidad no están bien definidos. Los programas de aplicación pueden acceder a operaciones básicas de entrada / salida para escribir directamente en pantalla o discos. Este libre acceso, hace que el sistema sea vulnerable, ya que un programa de aplicación puede eliminar por completo un disco rígido por alguna falla. Además este sistema, también esta limitado al hardware sobre el que corre.

        Otra estructura simple es la utilizada por la versión original de UNIX, esta consiste de dos partes separadas, el kernel y los programas de sistemas . El kernel fue posteriormente separado en manejadores (drivers) de dispositivos y una serie de interfaces. El kernel provee el sistema de archivos, la programación de CPU, el administrador de memoria y otras funciones del sistema operativo que responden a las llamadas del sistema enunciadas anteriormente. 

Estructura por capas (layers)
        Las nuevas versiones de UNIX se diseñaron para hardware mas avanzado. Para dar mayor soporte al hardware, los sistemas operativos se dividieron en pequeñas partes. Ahora los sistemas operativos tienen mayor control sobre el hardware y las aplicaciones que se ejecutan sobre este.
        La modularizacion de un sistema se puede presentar de varias formas, la mas utilizada es la de capas, la cual consiste en dividir al sistema operativo en un numero de capas. La capa de menor nivel es el hardware y la de mayor nivel es la interfaz con el usuario.
        La principal ventaja es que cada capa cumple con una serie de funciones y servicios que brinda a las otras capas, esto permite una mejor organización del sistema operativo y una depuración mas fácil de este. 


BUFFERING (uso de memoria interna)

Trata de mantener ocupados tanto la CPU como los dispositivos de E/S. Los datos se leen y se almacenan en un buffer, una vez que los datos se han leido y la CPU va a iniciar inmediatamente la operacion con ellos, el dispositivo de entrada es introducido para iniciar inmediatamente la siguiente lectura.

La CPU y el dispositivo de entrada permanecen ocupados. Cuando la CPU este libre para el siguiente grupo de datos, el dispositivo de entrada habra terminado de leerlos. La CPU podra empezar el proceso de los ultimos datos leidos, mientras el dispositivo de entrada iniciara la lectura de los datos siguientes.

SPOOLING

Esta forma de procesamiento de denomina spooling, utiliza el disco como un buffer muy grade para leer tan por delante como sea posible de los dispositivos de entrada y para almacenar los ficheros hasta que los dispositivos de salida sean capaces de aceptarlos.

Es una característica utilizada en la mayoría de los sistemas operativos

Problemas de los manejadores de dispositivos

Problemas de Uso Compartido

Otro problema que se presenta con frecuencia, es cuando distintas aplicaciones intentan acceder a un dispositivo (ya sea para escribir o leer datos) pero éste se encuentra en uso por otro programa, y el Sistema tiene que bloquearlo, como con el caso de la memoria protegida, para que sea utilizable hasta que un programa detenga su uso.


Problemas con Buffers

Uno de los principales problemas que se presenta es el del manejo de buffers, y consiste en determinar tan pronto como sea posible que un dispositivo de entrada y salida ha finalizado una operación. Este problema se resuelve mediante las interrupciones. Tan pronto como un dispositivo entrada y salida acaba con una operación interrumpe a la CPU, en ese momento la CPU detiene lo que está haciendo e inmediatamente transfiere el control a una posición determinada.

Problemas al momento de manejar archivos

Uno de los problemas más frecuentes en el manejo de archivos son los DEADLOCK, un deadlock es una situación no deseada de espera indefinida y se da cuando en un grupo de procesos, dos o más procesos de ese grupo esperan por llevar a cabo una tarea que será ejecutada por otro proceso del mismo grupo, entonces se produce el bloqueo. Los bloqueos se dan tanto en los sistemas operativos tradicionales como en los distribuidos, solo que en estos últimos es más difícil de prevenirlos, evitarlos e incluso detectarlos, y si se los logra detectar es muy complicado solucionarlos ya que la información se encuentra dispersa por todo el sistema.
 Una vez que un deadlock se detecta, es obvio que el sistema está en problemas y lo único que resta por hacer es una de dos cosas: tener algún mecanismo de suspensión o reanudación que permita copiar todo el contexto de un proceso incluyendo valores de memoria y aspecto de los periféricos que esté usando para reanudarlo otro día, o simplemente eliminar un proceso o arrebatarle el recurso, causando para ese proceso la pérdida de datos y tiempo.
Existen también varias causas para que los dispositivos de E/S presenten errores, como lo son drivers desactualizados y/o una mala instalación de éstos; que el sistema intente utilizar de una manera incorrecta/incompatible el dispositivo en cuestión, o daño físico del periférico.

• Controlador de periférico.

No debe confundirse con Controlador de dispositivo.
El controlador de periférico o adaptador de periférico es el componente electrónico de los periféricos de Entrada/Salida (E/S). El componente mecánico es el dispositivo en sí.
Por lo general, los periféricos de (E/S) o unidades de E/S consisten en un componente mecánico y un componente electrónico. A menudo es posible separar las dos porciones para proveer un diseño más modular y general.
En las computadoras personales, comúnmente tiene la forma de un chip en la placa base o una tarjeta de circuito integrado que se puede insertar en una ranura de expansión.

4.2 Mecanismos y funciones de los manejadores de dispositivos

Para que un Sistema Operativo sea funcional, eficaz y eficiente requiere de un sistema de Entrada/Salida de datos, por lo que el diseño de éste es un aspecto muy importante ya que para que exista la interacción usuario-máquina, o máquina-máquina es necesario un sistema de Entrada/Salida de datos, de lo contrario el sistema se consideraría incompleto.

Diseño de Entrada de Datos

Consiste en desarrollar los requerimientos y los pasos a seguir y la realizacion de los procesos necesarios para colocar los datos de forma utilizable para el procesamiento es asi como se logra instruir a la computadora. Existen cinco objetivos/requerimientos que controlan la cantidad de entrada requerida, a enviar los retrasos, controlar los errores y mantener la sencillez de los pasos necesarios, estos son:
· Control de calidad de entrada, usando registros y optimizando puertos, interfaces y controladores.
· Evitar Retrasos
· Evitar errores en los datos
· Evitar pasos adicionales
· Mantener la sencillez del proceso 

Diseño de Salida de Datos

Es todo aquello producido por el sistema, si la salida no es de calidad entonces el sistema es innecesario una de las salidas puede ser documentos o formularios dependiendo de el objetivo del sistema. Para el diseño de salida de datos también existen ciertos requerimientos como lo son:
· Que haya distintos niveles de Diseño, tanto lógico como físico
· Utilización de los datos de requerimientos, así como registros de control, estado y salida.
· Participación de los usuarios

Estructura de un sistema de Entrada/Salida: Módulos y Controladores

Las diferencias existentes entre los dispositivos periféricos han hecho que la unidad de E/S de una computadora se organice en torno a dos tipos de elementos, unos que soportan las características comunes a todos los dispositivos (módulos de E/S) y otros específicos para cada periférico que son los controladores de dispositivo:

Módulos de E/S

Un módulo de E/S permite que el procesador gestione una amplia gama de dispositivos periféricos de una forma similar, ocultando los detalles concretos de temporización, formatos de datos y principios físicos de funcionamiento. El módulo de E/S se conecta con el procesador a través de un conjunto de líneas de datos, dirección y control (un bus). Los datos que se transfieren se almacenan temporalmente en un registro de datos. El estado del módulo se refleja en los bits de un registro de estado. El registro de control permite configurar y programar diferentes funciones en el módulo. Estos dos registros (estado y control) pueden unificarse en uno sólo en módulos simples. Un módulo de E/S dispone de la lógica específica para su conexión con uno o más dispositivos periféricos. En la siguiente figura se muestra la estructura general de un módulo de E/S: 

Controladores de E/S

La estructura del controlador de un dispositivo tendrá que adaptarse en cada caso a las peculiaridades específicas del periférico. Unos tendrán que actuar sobre elementos electromecánicos (impresoras de línea), otros sobre elementos ópticos (CD-ROM), o magnéticos (discos), etc. Sin entrar en las singularidades de cada uno, podemos decir que los controladores de dispositivos periféricos presentan una estructura
Introducción

Para que un Sistema Operativo sea funcional, eficaz y eficiente requiere de un sistema de Entrada/Salida de datos, por lo que el diseño de éste es un aspecto muy importante ya que para que exista la interacción usuario-máquina, o máquina-máquina es necesario un sistema de Entrada/Salida de datos, de lo contrario el sistema se consideraría incompleto.

Diseño de Entrada de Datos

Consiste en desarrollar los requerimientos y los pasos a seguir y la realizacion de los procesos necesarios para colocar los datos de forma utilizable para el procesamiento es asi como se logra instruir a la computadora. Existen cinco objetivos/requerimientos que controlan la cantidad de entrada requerida, a enviar los retrasos, controlar los errores y mantener la sencillez de los pasos necesarios, estos son:
· Control de calidad de entrada, usando registros y optimizando puertos, interfaces y controladores.
· Evitar Retrasos
· Evitar errores en los datos
· Evitar pasos adicionales
· Mantener la sencillez del proceso 

Diseño de Salida de Datos

Es todo aquello producido por el sistema, si la salida no es de calidad entonces el sistema es innecesario una de las salidas puede ser documentos o formularios dependiendo de el objetivo del sistema. Para el diseño de salida de datos también existen ciertos requerimientos como lo son:
· Que haya distintos niveles de Diseño, tanto lógico como físico
· Utilización de los datos de requerimientos, así como registros de control, estado y salida.
· Participación de los usuarios

Estructura de un sistema de Entrada/Salida: Módulos y Controladores

Las diferencias existentes entre los dispositivos periféricos han hecho que la unidad de E/S de una computadora se organice en torno a dos tipos de elementos, unos que soportan las características comunes a todos los dispositivos (módulos de E/S) y otros específicos para cada periférico que son los controladores de dispositivo:

Módulos de E/S

Un módulo de E/S permite que el procesador gestione una amplia gama de dispositivos periféricos de una forma similar, ocultando los detalles concretos de temporización, formatos de datos y principios físicos de funcionamiento. El módulo de E/S se conecta con el procesador a través de un conjunto de líneas de datos, dirección y control (un bus). Los datos que se transfieren se almacenan temporalmente en un registro de datos. El estado del módulo se refleja en los bits de un registro de estado. El registro de control permite configurar y programar diferentes funciones en el módulo. Estos dos registros (estado y control) pueden unificarse en uno sólo en módulos simples. Un módulo de E/S dispone de la lógica específica para su conexión con uno o más dispositivos periféricos. En la siguiente figura se muestra la estructura general de un módulo de E/S: 

Controladores de E/S

La estructura del controlador de un dispositivo tendrá que adaptarse en cada caso a las peculiaridades específicas del periférico. Unos tendrán que actuar sobre elementos electromecánicos (impresoras de línea), otros sobre elementos ópticos (CD-ROM), o magnéticos (discos), etc. Sin entrar en las singularidades de cada uno, podemos decir que los controladores de dispositivos periféricos presentan una estructura general 

Dispositivos y Manejadores de Dispositovos