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
· 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
· 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 como la representada
en la siguiente figura:
Funciones de los manejadores
de dispositivos
Funciones generalmente realizadas por el
software independiente del dispositivo:
- Interfaz uniforme para los manejadores de dispositivos.
- Nombres de los dispositivos.
- Protección del dispositivo.
- Proporcionar un tamaño de bloque independiente del
dispositivo.
- Uso de buffer.
- Asignación de espacio en los dispositivos por bloques.
- Asignación y liberación de los dispositivos de uso
exclusivo.
- Informe de errores.
Las funciones básicas del software
independiente del dispositivo son:
- Efectuar las funciones de e / s comunes a todos los
dispositivos.
- Proporcionar una interfaz uniforme del software a nivel
usuario.
El software independiente del dispositivo
asocia los nombres simbólicos de los dispositivos con el nombre adecuado.
Un nombre de dispositivo determina de manera única el nodo-i de un archivo especial:
Un nombre de dispositivo determina de manera única el nodo-i de un archivo especial:
- Este nodo-i contiene el número principal del
dispositivo, que se utiliza para localizar el manejador apropiado.
- El nodo-i contiene también el número secundario de
dispositivo, que se transfiere como parámetro al manejador para
determinar la unidad por leer o escribir.
El software independiente del
dispositivo debe:
- Ocultar a los niveles superiores los diferentes tamaños
de sector de los distintos discos.
- Proporcionar un tamaño uniforme de los bloques, por ej.: considerar varios sectores físicos como un solo bloque lógico.
Al momento de estar manejando dispositivos
de Entrada/Salida pueden surgir varios problemas, algunos que se pueden
resolver, otros simplemente los tenemos que evitar.
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.
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
· 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
· 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 como la representada en la siguiente figura:
Funciones de los manejadores de dispositivos
Funciones generalmente realizadas por el software independiente del dispositivo:
- Interfaz uniforme para los manejadores de dispositivos.
- Nombres de los dispositivos.
- Protección del dispositivo.
- Proporcionar un tamaño de bloque independiente del dispositivo.
- Uso de buffer.
- Asignación de espacio en los dispositivos por bloques.
- Asignación y liberación de los dispositivos de uso exclusivo.
- Informe de errores.
Las funciones básicas del software independiente del dispositivo son:
- Efectuar las funciones de e / s comunes a todos los dispositivos.
- Proporcionar una interfaz uniforme del software a nivel usuario.
El software independiente del dispositivo asocia los nombres simbólicos de los dispositivos con el nombre adecuado.
Un nombre de dispositivo determina de manera única el nodo-i de un archivo especial:
Un nombre de dispositivo determina de manera única el nodo-i de un archivo especial:
- Este nodo-i contiene el número principal del dispositivo, que se utiliza para localizar el manejador apropiado.
- El nodo-i contiene también el número secundario de dispositivo, que se transfiere como parámetro al manejador para determinar la unidad por leer o escribir.
El software independiente del dispositivo debe:
- Ocultar a los niveles superiores los diferentes tamaños de sector de los distintos discos.
- Proporcionar un tamaño uniforme de los bloques, por ej.: considerar varios sectores físicos como un solo bloque lógico.
No hay comentarios:
Publicar un comentario