Vous êtes sur la page 1sur 12

ASGINACION ES ESPACIO DE DISCO Un mtodo de asignacin de espacio libre que determina la manera en que un Sistema Operativo por medio

del sistema de archivos controla los lugares del disco que no estn siendo ocupados. Para el control del espacio libre se puede utilizar como base alguno de los mtodos tericos: Asignacin adyacente. Asignacin por listas ligadas. Asignacin por bloques con tabla de ndice. ASIGNACION ADYACENTE Corresponde a la asignacin de una sola rea de disco contigua a un archivo, de tal manera que las direcciones de todos los bloques correspondientes a un archivo definen un orden lineal. por razones de sencillez fue adoptada por los primeros sistemas operativos. Ej. CP/M El sistema operativo solo tendr que tener un directorio donde se referenciara cada espacio. Ventajas Fcil implantacin ya que el registro de la localizacin de un archivo solo implica guardar la direccin donde este inicia y su longitud. El rendimiento es muy bueno puesto que el archivo se puede leer en una sola operacin. Desventajas Requiere de un proceso que proporcione un tamao estimado del archivo, lo cual conduce a fragmentacin tanto interna como externa. Dificulta que los archivos puedan variar de tamao con el tiempo ASIGNACION POR LISTAS LIGADAS Un archivo se representa por una lista ligada de bloques de disco. Cada uno de estos contiene: Data (datos) Control info (apuntador) Cada archivo es referencia la cabeza de la lista por medio de Loc info (Informacin local). El espacio libre en disco se representa por medio de un free List Ventajas: No produce fragmentacin externa. Admite de manera eficaz archivos secuenciales. Desventajas: La cabeza de lectura se puede mover demasiado en la lectura de un archivo. Si una liga se pierde, se perder el archivo completo. Es ineficiente para la implementacin de archivos directos. Se necesita un campo extra para el apuntador. ASIGNACION POR BLOQUES CON TABLA DE INDICE Es una variante de la asignacin ligada que almacena los datos de control en forma separada de los datos del archivo, por lo tanto Un archivo se representa por: Una lista de bloques de disco *Data (datos) *Control info (apuntador) Una tabla de asignacin de archivos. Un directorio *Loc info(informacin local) Ventajas: El uso de la FAT proporciona mayor confiabilidad que la asignacin ligada clsica. Facilita el acceso directo o aleatorio. Desventajas: Es un sistema de archivos muy vulnerable. Es necesario mantener a la FAT en memoria durante el procesamiento del archivo.

PLANIFICACION EN DISCO
En los sistemas de computacin multiprogramada, muchos procesos pueden estar generando solicitudes de L/E de registros en el disco, en ocasiones dichos procesos realizan peticiones mucho ms rpido de lo que pueden ser atendidas por los discos de cabeza mvil, formndose colas de espera para cada dispositivo, razn por la cual se hace necesario la implementacin de una poltica de planificacin que permita una distribucin adecuada de las peticiones. El rendimiento de un disco puede ser muy distinto dependiendo del orden en que se escriban las peticiones de E/S. La razn principal es que el disco tiene una geometra que forza a las cabezas de unas posiciones del disco a otras. Por ello es fundamental usar polticas de planificacin que minimicen el movimiento de las cabezas para poder obtener un buen movimiento medio del disco. El manejador de discos es el responsable de llevar a cabo la poltica de planificacin adecuada teniendo en cuenta algunos aspectos que afectan el rendimiento de disco. Sin embargo, es responsabilidad del diseador elegir la poltica o polticas de planificacin. Las polticas de planificacin ms populares son: FCFS, SSF, SCAN, CSCAN y LOOK. FCFS (First Come First Served): Primero que llega, Primero que se atiende. Este mtodo es justo para asignar servicio, pero cuando la tasa de solicitud (es decir, la carga) llega a ser pesada puede dar lugar a tiempos de espera muy largos y saturar al dispositivo. EJEMPLO 1: Consideremos una cola de disco ordenada con requerimientos que envuelven los tracks: 98; 183; 37; 122; 4; 124; 65 y 67, En orden del 98 al 67. Si el cabezal de lectura/escritura esta inicialmente en el track 53, se mover primero del 53 al 98 luego al 183,37, 122,4, 124, 65 y finalmente al 67; con un total de movimiento de cabezal de 660 tracks.

EJEMPLO 2: Considere que las cabezas del disco estn en el cilindro 6 y que hay encoladas peticiones para los cilindros 20, 2, 56 y 7. El nmero de desplazamientos necesarios para servir todas las peticiones sera: Desplazamientos = (20-6)+(20-2)+(56-2)+(56-7) =14+18+54+49 = 135

SSF SSTF (Shortest Seek First): Esta poltica elige la solicitud de E/S que utilice el menor movimiento posible del brazo del disco desde su posicin actual. De este modo siempre se elige el menor tiempo de bsqueda. Como el brazo puede moverse en ambos sentidos, se puede usar un algoritmo aleatorio que se utilice para resolver los casos de igualdad de distancias. EJEMPLO 1: Consideremos la cola del disco ordenada con requerimientos que envuelven los tracks: 98; 183; 37; 122; 4; 124; 65 y 67. Este mtodo de planificacin da como resultado un movimiento total del cabezal de solamente 256 tracks. De este algoritmo resultara un sustancial mejoramiento en el promedio del servicio de discos.

EJEMPLO 2: Considere que las cabezas del disco estn en el cilindro 6 y que hay encoladas peticiones para los cilindros 20, 2, 56 y 7. Con esta poltica las peticiones se atendera en el siguiente orden: 7, 2, 20 y 56. El nmero de desplazamientos necesarios para servir todas las peticiones sera: Desplazamientos= (7-6)+(7-2)+(20-2)+(56-20) = 1+5+18+36 = 60

SCAN O DEL ASCENSOR: El cabezal de lectura/escritura comienza en un extremo del disco y se mueve hacia el otro extremo haciendo el servicio de los requerimientos al llegar a cada track, hasta que llega al otro extremo del disco. En el otro extremo, se revierte la direccin del movimiento del cabezal y contina el servicio. El cabezal continuamente examina el disco de un extremo al otro. Si llega un requerimiento en la cola justo en frente del cabezal, ser servido casi inmediatamente, mientras que un requerimiento llegado justo detrs del cabezal deber esperar hasta que el cabezal se mueva hasta el final del disco, revierta su direccin y vuelva, antes de ser servido. EJEMPLO 1: Considere que las cabezas del disco estn en el cilindro 6 con movimiento ascendente y que hay encoladas peticiones para los cilindros 20, 2, 56 y 7. Causara los siguientes desplazamientos, asumiendo un disco de 70 cilindros. Desplazamientos = (7-6)+(20-7)+(56-20)+(70-56)+(70-2) = 1+13+36+14+68 = 132 EJEMPLO 2: Consideremos la siguiente cola del disco ordenada con requerimientos que envuelven los tracks: 67; 4; 98; 124; 183; 37; 65; 122. Si el cabezal se estaba moviendo hacia 0, el movimiento del mismo hara el servicio 37 y el 14 mientras se mueve hacia 0. En el track 0 el cabezal se revertira y se movera al otro extremo del disco, haciendo el servicio de 65, 67, 98, 122, 124, y 183. Resultado de 236 tracks

C-SCAN: mueve el cabezal de un extremo del disco al otro, haciendo el servicio de los requerimientos, cuando llega al final vuelve al comienzo del disco, sin servir ningn requerimiento en su viaje de vuelta, C-SCAN trata al disco esencialmente como si fuera circular, con el ultimo track adyacente al primero. EJEMPLO 1: Consideremos la siguiente cola del disco ordenada con requerimientos que envuelven los tracks: 124; 37; 98; 183; 122; 4; 65; 67. Si el cabezal se estaba moviendo hacia los tracks superiores empezando desde el track 53. Resultado 382 tracks. .

EJEMPLO 2: Considere que las cabezas del disco estn en el cilindro 6 con movimiento ascendente y que hay encoladas peticiones para los cilindros 20, 2, 56 y 7. Causara los siguientes desplazamientos, asumiendo un disco de 70 cilindros. Desplazamientos = (7-6)+(20-7)+(56-20)+(70-56)+70+(2-0) = 1+13+36+14+70+2 = 136

En la prctica ningn algoritmo se implementa del modo SCAN Y C-SCAN, comnmente el cabezal se mueve solamente hasta el ltimo requerimiento en cada direccin. Tan pronto como no hay requerimientos en esa direccin, el movimiento del cabezal se revierte. Estas versiones de SCAN y C-SCAN se llaman LOOK (bsqueda) y C-LOOK ("buscar" un requerimiento antes de moverse en esa direccin). SCAN de N pasos Divide la cola de solicitudes del disco en subcolas de longitud N. Las subcolas se procesan una a una mediante un SCAN. Mientras se procesa una cola, se aadirn nuevas solicitudes a las otras. FSCAN Emplea dos subcolas. Una de las colas permanece vaca en espera de nuevas solicitudes. ESQUEMA DE ESCHENBACH: El movimiento del brazo del disco es circular como en C-SCAN, pero con varias diferencias importantes. En cada cilindro se atiende toda una pista de informacin sin importar si existen o no peticiones para ese cilindro. Las peticiones dentro de un cilindro se reordenan para atenderlas aprovechando su posicin rotacional, pero si existen dos peticiones traslapadas dentro de un cilindro se atender solo a una en ese barrido del brazo del disco.

SELECCIN DE UN ALGORITMO DE PLANIFICACION


La responsabilidad de elegir la poltica o polticas de planificacin del sistema es del diseador, quien debe conocer las ventajas y desventajas de cada una de ellas. Despus de elegidas las polticas de planificacin, es responsabilidad del Manejador de Disco llevar a cabo la poltica ms adecuada dependiendo del tipo de peticin, de las posicin de las cabezas del disco y de la posicin del las peticiones a realizar, teniendo en cuenta fundamentalmente el tiempo de bsqueda en el disco. Teorey y Pinkerton (1972) compararon varios algoritmos usando simulaciones y recomendaron el uso ya sea de SCAN o C-SCAN, dependiendo de la carga. Con cualquier algoritmo de planificacin, sin embargo, la performance depende grandemente del nmero y tipo de requerimientos. En particular, si la cola rara vez tiene ms de un requerimiento sobresaliente, entonces todos los algoritmos de planificacin son efectivamente equivalentes. Algunos estudios han sugerido (Lynch, 1972) que la cola normalmente tendr solo un requerimiento. En este caso FCFS es tambin un algoritmo razonable. Ntese tambin que los requerimientos para el servicio de discos puede estar grandemente influenciado por el mtodo de ubicacin de archivos. Un programa que lee un archivo que tiene ubicacin contigua generara un nmero de requerimientos que estn juntos en el disco, lo cual resulta en un movimiento limitado del cabezal. SISTEMAS DE ARCHIVOS Relativo a la perduracin de la informacin, un SO 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. El 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. ESTRUCTURA: Los archivos internamente pueden ser estructurados o libres. Libres Los archivos son simplemente secuencia de bytes. Permite la mayor versatilidad, dado que cada usuario puede establecer como desea almacenar los datos. Estructurados Los archivos tienen una organizacin interna a travs de la cual deben ser accedidos los datos. til cuando el sistema de archivos maneja siempre los datos en estructuras rgidas, dado que acelera el proceso, pero poco conveniente porque amarra al usuario a dicha estructura.

EJECUTABLES: La estructura de los archivos ejecutables vara dependiendo del sistema en el que sea compilado y linkeado el programa. Una estructura ejemplo de un archivo ejecutable puede ser:

ATRIBUTOS: Los 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:

DITECTORIOS: De 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 (..).

IMPLEMENTACION: En sistemas de archivos de discos, se considera la estructura bsica: particiones o volmenes. Particin: divisin lgica de una unidad de disco, tambin denominada volumen 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. Fsicamente podemos 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. Cada 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. Asignacin Contigua Se entrega espacio continuo en el disco a los archivos. Su ventaja es la implementacin simple y el buen desempeo en lectura. La desventaja es la fragmentacin excesiva y compleja dada 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. Asignacin por Lista Enlazada Los archivos se mantienen como una lista enlazada de bloques en el disco. Permite que un archivo no deba estar contiguo en el disco y elimina la fragmentacin del disco dado que se pueden utilizar todos los bloques. Su mayor problema es el acceso aleatorio, pues el S.O. debe ir buscando nodo por nodo la direccin del siguiente, hasta llegar al que necesita. Por otra parte ahora la cantidad de datos almacenada en un bloque ya no es potencia de 2, complicando el panorama para la implementacin de pgina, por ejemplo. Asignacin por Lista Enlazada empleando tabla en la memoria Toma el apuntador que antes estaba dentro del bloque en disco, y lo traslada a una tabla exclusivamente para ese efecto. De esta forma el bloque se llena de datos y poder acceder aleatoriamente al archivo es ms simple pues no requiere de accesos a disco dado que todos los datos estn juntos en memoria A esto se le conoce como FAT, File Allocation Table. Nodos-i Consiste en asociar a cada archivo una estructura de datos llamada i-node (nodo ndice). Esta estructura contiene las direcciones de los bloques en disco que componen al archivo. La mayor ventaja es que solo es necesario tener en memoria las estructuras de los archivos abiertos, pues estas son las nicas que se necesitan para el acceso aleatorio. Para solucionar el problema de que la cantidad de bloques de un archivo no queda en un solo i-node, se agrega al final de este la posibilidad de enlazar en la ltima posicin a un bloque que contenga ms direcciones (solo direcciones)

Listas Enlazadas Libres Se utiliza una lista enlazada de bloques de disco que contienen nmeros de bloques libres. Se almacenan tantos nmeros como se pueda en cada bloque. Para agilizar el proceso de bsqueda de un bloque libre, se mantiene uno o ms bloques en memoria, dejando el resto en disco. La desventaja es que cuando el bloque esta por llenarse puede provocar muchas operaciones de I/O al buscar otro bloque, producto de una seguidilla de creaciones y eliminaciones de archivos y directorios. Mapas de bits Se crea un mapa donde se representa a cada bloque disponible con 1 bit. Es muy eficiente en espacio dado que utiliza 1 bit en lugar de 1 palabra, excepto cuando el disco est lleno, caso en el cual la lista es ms pequea. Al igual que la lista, se puede dejar solo una porcin del mapa en memoria y el resto en disco; teniendo una ventaja adicional, puesto que las asignaciones realizadas con el bloque en memoria sern a bloques cercanos, reduciendo el overhead de acceso a disco.

NTFS o New Technology File System, es el sistema de archivos de la lnea NT de los sistemas MS Windows. Fue diseado desde cero, pensado para reemplazar a la familia de FAT eliminando todas las limitaciones de este, y pensando en poder extenderlo fcilmente en el futuro. Conceptualmente NTFS ve todo en el sistema como un archivo, incluyendo a los metadatos. El corazn de tal esquema es la MFT (Master File Table) que contiene la informacin de donde estn los archivos y sus atributos. Aunque esta respaldada en un %, si se daa los datos de todo el volumen se perdern. Utiliza bitmaps para determinar los bloques (clusters) libres en el disco, e indexa los directorios a travs de rboles B+.
ESQUEMA NTFS: Boot Partition Record: En 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 tambin un puntero a la MFT. MFT Master File Table: La Tabla Maestra de archivos contiene el donde y como estn almacenados los archivos, junto con todos los atributos asociados a estos. Archivos de Sistema: Contienen la informacin sobre los datos y operaciones que se realizan sobre el sistema de archivos: espacio libre, log de transaccionalidad, etc. rea de archivos: Donde realmente se almacenan los datos del usuario. La MFT contiene la informacin sobre todos los archivos dentro del volumen. Mantiene la direccin en disco donde est el archivo, sus atributos, informacin de cmo securizar los datos, etc. Las primeras 16 posiciones corresponden a entradas a archivos que implementan el sistema de archivos y estn reservadas. Desde la 11 a la 15 no se utilizan y estn para provisin. Desde el #16 en adelante se pueden tener entradas para archivos de usuario.

E/S
Los mecanismos de E/S de la computadora tiene por objetivo el intercambio de informacin entre los perifricos y la memoria a los registros del Procesador. En las operaciones de E/S intervienen los siguientes componentes: el Perifrico y la interfase. EL PERIFRICO: El perifrico est compuesto por: Controlador: Es el puente que permite al perifrico comunicarse con la interfaz adecuadamente. Posee una serie de registros incluidos en el mapa de E/S de la computadora, por lo que se pueden acceder mediante instrucciones de mquina de E/S. Estos registros son: Registro de Datos: Sirve para el intercambio de datos, en l ir cargando el controlador los datos para su escritura en el perifrico. Registro de Estado: Sirve para indicar que el controlador puede transferir una palabra. En las operaciones de lectura esto significa que ha cargado en el registro de datos un nuevo valor, mientras que en la escritura significa que necesita un nuevo valor. Otro bit de este registro sirve para que el controlador indique los problemas que ha encontrado en la ejecucin de la ltima operacin de E/S. Registro de Control: sirve para indicarle al controlador las operaciones que ha de realizar en el perifrico. Dispositivo: es el componente mecnico que se conecta a la Unidad Central de Procesos a travs de las unidades de E/S. Para el Sistema Operativo el perifrico ms importante es el Disco Duro, puesto que sirve de espacio de intercambio a la memoria virtual y sirve de almacenamiento permanente par los programas y los datos.

LA INTERFASE Maneja la comunicacin entre el Bus (lnea de comunicacin) y el Controlador con el fin de que la informacin llegue en la forma esperada por el Bus. Una funcin tpica de la Interfase es la de recibir informacin agrupada del Bus, enviarla individualmente al controlador bit por bit, o recibir la informacin en serie y transmitirla en paralelo. La Concurrencia de la E/S con el Procesador: Los perifricos son sensiblemente ms lentos que el Procesador, razn por la cual es conveniente que mientras se est esperando a que se complete una operacin de E/S el Procesador est ejecutando un programa til y no un bucle de espera. Los computadores presentan tres modos bsicos de realizar operaciones de E/S: E/S programada, E/S por interrupciones y E/S por DMA (direct memory access). La E/S programada exige que el Procesador est ejecutando un programa de E/S, por lo que no existe ninguna concurrencia entre la E/S y el Procesador. Caso contrario ocurre con los otros dos casos en los cuales el Procesador no tiene que estar atendiendo directamente la E/S, por lo que puede estar ejecutando otro programa, en este caso se dice que existe

concurrencia entre el Procesador y la E/S. La concurrencia permite optimizar el uso del Procesador, pero exige que unidades de control de los perifricos sean ms inteligentes y por consiguiente ms complejas y ms costosas. El Sistema de E/S es la parte del Sistema Operativo que se ocupa de facilitar el manejo de los dispositivos de E/S, ofreciendo una visin lgica y simplificada de los mismos que pueda ser utilizada por otros componentes del Sistema Operativo (como el Sistema de Archivos) o incluso por el usuario. Mediante esta visin lgica se ofrece a los usuarios un mecanismo de abstraccin que oculta todos los detalles relacionados con los dispositivos fsicos, as como el funcionamiento real de los mismos. El Sistema Operativo debe controlar el funcionamiento de todos los dispositivos de E/S para alcanzar los siguientes objetivos: Facilitar el manejo de los dispositivos de E/S. Para ello debe ofrecer una interfaz entre los dispositivos y el resto del sistema que se a sencilla y fcil de usar Optimizar la E/S del sistema, proporcionado mecanismos de incremento de prestaciones donde sea necesario. Proporcionar dispositivos virtuales donde que permitan conectar cualquier tipo de dispositivo fsico sin que sea necesario remoldear el sistema de E/S del Sistema Operativo. Permitir la conexin de dispositivos nuevos de E/S, solventando de forma automtica su instalacin utilizando mecanismos del tipo plug&play.

Vous aimerez peut-être aussi