You are on page 1of 25

PLANIFICACIN DE DISCOS

1.

Introduccin

Cuando la unidad de disco est operando, el disco gira a una velocidad


constante. Para leer o escribir, la cabeza debe ponerse en la pista deseada, al
comienzo del sector pertinente. Si el sistema es de cabezas mviles hay que
mover la cabeza para elegir la pista. Si el sistema es de cabezas fijas, habr que
seleccionar electrnicamente una de ellas.
En un sistema de cabezas mviles, el tiempo que se tarda en ubicar la
cabeza en la pista de llama tiempo de bsqueda. En cualquier caso, una vez que
se ha seleccionado la pista, el controlador del disco esperar hasta que el sector
apropiado se alinee con la cabeza en su rotacin. El tiempo que tarda el comienzo
del sector en llegar hasta la cabeza se conoce como retardo de giro o latencia de
giro. La suma del tiempo de bsqueda y el retardo de giro es el tiempo de acceso,
es decir, el tiempo que se tarda en llegar a la posicin de lectura o escritura. Una
vez que la cabeza est ubicada, se puede llevar a cabo la operacin de lectura o
escritura a medida que el sector se mueve bajo la cabeza; esta es la parte de
transferencia real de datos de la operacin.
1.1 Trminos a utilizar
Tiempo de latencia: tiempo que se demora en ir de la posicin actual hasta una
posicin adyacente requerida.
Tiempo de bsqueda: tiempo en mover el brazo desde la posicin actual hasta el
nuevo cilindro.
Tiempo de transmisin: tiempo requerido para leer/escribir un registro en disco.
Tiempo de posicionamiento: del movimiento del cabezal hacia la pista.
Tiempo de transferencia: espera a que el bloque deseado pase bajo el cabezal.
Vector de bits o mapa: representa en cada bit el estado de un bloque (0 libre, 1
ocupado), si el vector es de un tamao
Lista encadenada: mantener un apuntador al primer bloque, el bloque contiene
un apuntador al siguiente bloque libre. El recorrido de la lista implica leer cada uno
de los bloques.
Primero en entrar, primero en salir (FIFO):
Las solicitudes se procesan en un orden secuencial.
Es una estrategia justa para todos los procesos.

Esta tcnica se parece mucho a la planificacin aleatoria si hay muchos procesos.


Prioridad:
No persigue la optimizacin del uso del disco, sino cumplir con otros objetivos.
Los trabajos por lotes que sean cortos tienen una prioridad ms alta.
Proporciona un buen tiempo de respuesta interactiva.
ltimo en entrar, primero en salir:
Buena poltica para los sistemas de proceso de transacciones:
El hecho de conceder el dispositivo al ltimo usuario acarrea pocos o nulos
movimientos del brazo.
Existe la posibilidad de inanicin, ya que puede que el trabajo no vuelva a ganar la
cabeza de la lnea.
2 Disco duro
Las siguientes son las principales ventajas con respecto del uso de la
memoria principal como almacenamiento:

Mucha mayor capacidad de espacio de almacenamiento.


Menor precio por bit.
La informacin no se pierde al apagar la computadora.

Un uso inapropiado de los discos puede generar ineficiencia, en especial en


sistemas con multiprogramacin.
2.1 Estructura de discos
Los discos constituyen el grueso del almacenamiento secundario en los
sistemas de computacin moderno. Las unidades de disco modernas se
direccional como grandes arreglos unidimensionales de bloques lgicos, que son
las unidades de transferencia ms pequeas. El tamao de un bloque lgico suele
ser de 512 bytes, aunque a algunos discos se les puede dar formato de bajo nivel
escogiendo un tamao de bloque lgico distinto, como 1024 bytes.
El arreglo unidimensional de bloques lgicos se hace corresponder
secuencialmente con los sectores del disco. El sector 0 es el primer sector de la
primera pista del cilindro ms exterior. La correspondencia procede en orden por
esa pista, luego por las dems pistas de ese cilindro y luego por el resto de los
cilindros desde el ms exterior hasta el ms interior.
Los discos modernos se organizan en zonas de cilindros. El nmero de
sectores por pista es constante dentro de una zona, pero a medida que se avanza
hacia las zonas internas a las externas el nmero de sectores por pista aumenta.

Las pistas de la zona ms exterior por lo regular contienen 40% ms sectores que
las de la zona ms interna.

2.2 Asignacin de espacio en disco


Consiste en asignar espacio en disco para almacenar bloques en forma
eficiente respecto de la utilizacin del espacio y posterior acceso con rapidez.
Existen tres mtodos de uso comn:
Contiguo: los bloques estn fsicamente contiguos en cada pista, siendo
necesario el desplazamiento de slo una pista cuando deba desplazarse el
cabezal. Los tiempos de acceso son mnimos.
Enlazado: cada bloque fsico tiene un apuntador al siguiente bloque.
FAT(file allocation table): es una variante del mtodo de asignacin
enlazada. La tabla contiene una entrada para cada bloque de disco, indexada por
nmero de bloque.

Figura 1 -FATIndexada: a travs de un bloque de ndices que rene a todos los


apuntadores, con el objeto de ayudar el acceso director, anlogo a un esquema de
paginacin.

Figura 2 -Indexada2.3 Optimizacin de las unidades de disco


El acceso a disco es una de las operaciones ms lentas que realiza un
sistema operativo y, del tiempo que se emplee, depende en gran medida las
prestaciones globales. Habitualmente los ordenadores utilizados en entornos
domsticos y de oficina incorporan discos duros y unidades de CD-ROM con
tecnologa IDE.
Existe gran variedad de fabricantes y tecnologas asociadas a los
dispositivos IDE y, por este motivo, es complicado crear una configuracin de
rendimiento ptimo que funcione en todas las mquinas. Por esta razn,
habitualmente Linux viene configurado con una configuracin por defecto que

funciona correctamente en todos los ordenadores pero que dista mucho de ser
ptima. En este documento vamos a estudiar las opciones disponibles para
aumentar el rendimiento de las unidades de disco.
2.3.1 Parmetros a tener en cuenta:

Capacidad: Aconsejable que sea a partir de 2,1 Gbytes en adelante.


Tiempo de acceso: Importante. Este parmetro nos indica la
capacidad para acceder de manera aleatoria a cualquier sector del
disco.
Velocidad de Transferencia: Directamente relacionada con el
interface. En un dispositivo Ultra-2 SCSI es de 80 MBytes/seg.
mientras que en el Ultra DMA/33 (IDE) es de 33,3 MBytes/seg. en el
modo DMA-2. Esta velocidad es la mxima que admite el interface, y
no quiere decir que el disco sea capaz de alcanzarla.
Velocidad de Rotacin: Tal vez el ms importante. Suele oscilar
entre las 4.500 y las 7.200 rpm (revoluciones por minuto).
Cach de disco: La memoria cach implementada en el disco es
importante, pero ms que la cantidad es importante la manera en
que sta se organiza. Por ello este dato normalmente no nos da por
si solo demasiadas pistas. Son normales valores entre 64 y 256 Kb.

2.4 Cach de disco


Muchos sistemas operativos mantienen lo que habitualmente se denomina
memoria cache de disco. Esto consiste en un conjunto de buffers de memoria,
cada uno del tamao de un bloque de disco. Cuando algn proceso de usuario
quiere acceder a un bloque de disco, el sistema de ficheros ---parte del sistema

operativo--- busca primero si existe una copia de tal bloque en la cache, en cuyo
caso devuelve al proceso el nmero del buffer correspondiente.
En caso contrario, el sistema de ficheros busca un buffer desocupado o, de
no haber espacios libres, selecciona el buffer que lleva ms tiempo sin ser usado y
lo sustituye por el bloque pedido, que habr sido ledo del disco. El buffer
reemplazado ha de ser previamente grabado a disco si es necesario. La utilidad
de este sistema a dos niveles es manifiesta: la memoria es mucho ms rpida que
el disco y el esquema garantiza que los bloques a los que se accede con ms
frecuencia van a ser ledos, salvo la primera vez, de memoria principal.

De acuerdo con esta tcnica de optimizacin, se pide desarrollar el mdulo


DISCO con las siguientes reglas de diseo:

La unidad bloque de disco va a ser el sector y la informacin en cada


buffer ser, por tanto, del tipo DISK.TipoDato.
La copia de sectores de disco en respuesta a una peticin deber
ser concurrente con la recepcin de otras peticiones.
Inicialmente ---al arrancar el sistema--- la cache estar vaca.
El tamao de la cache ser de SP sectores (el nmero de sectores
por pista).

El funcionamiento de la cach de disco se basa en dos esquemas de


operacin. La lectura adelantada ("Read-ahead") y la escritura retrasada
("Write-behind"). La primera consiste en anticipar lo que se necesitar de forma
inmediata y traerlo a la cach. or su parte, la escritura retrasada consiste en
mantener los datos en cach hasta que se producen momentos de desocupacin
del sistema de disco. En este caso la cach acta como memoria tampn o
"buffer" intermedio, y no se obliga al subsistema a realizar fsicamente ninguna
escritura, con lo que las cabezas quedan libres para nuevas lecturas.

Puesto que los cachs de disco de escritura retrasada mantienen los


datos en memoria voltil despus que "supuestamente" se han escrito en el
dispositivo, una cada accidental del sistema, por fallo de energa o apagado
intempestivo, puede producir prdidas de los datos alojados en la cach en ese
momento (es esta una de las razones por las que los sistemas Windows y Linux
exigen un proceso especial de apagado, que a veces tarda unos segundos, en los
que observamos una intensa actividad del sistema de disco).
2.4.1 Cache de disco en MS DOS y Windows
La cache de los sistemas MS DOS y de los primeros sistemas Windows se
denominaba SmartDrive. Por su parte, los nuevos Sistemas de 32 bits disponen
de un controlador virtual denominado VCACHE que utiliza un esquema de
funcionamiento de lectura adelantada y escritura atrasada para proporcionar
servicios de cache a las mquinas virtuales.
VCACHE tiene la ventaja cachear ficheros en discos de red, y de permitir
cambiar en tiempo de ejecucin la cantidad de memoria destinada a este
menester. Cuando la actividad del disco es elevada pero la ocupacin de memoria
es baja, VCACHE incrementa su tamao para realizar la mayor cantidad de
operacin en RAM, evitando de este modo accesos a disco. Por ejemplo, si la
aplicacin abre un fichero para lectura/escritura, es posible que VCACHE vuelque
la totalidad del fichero a memoria; posteriormente, quizs cuando se cierre el
fichero, la imagen de memoria sea volcada de nuevo al disco. Si por el contrario
la actividad de disco es pequea y la ocupacin de memoria es alta, VCACHE
disminuye su propio tamao con objeto de aumentar la RAM disponible para las
aplicaciones.
2.4.2 rendimiento del cache
El funcionamiento de la cach de lectura se parece al de un adivino; debe
anticipar lo que ocurrir en el futuro. Si el dispositivo que est siendo cacheado
encuentra los datos en la cach, habr un xito ("hit"), en caso contrario, un
fracaso ("miss"). Los sistemas de cach actuales son capaces de proporcionar
una tasa de xitos superior al 90%.
Como puede figurarse el lector, construir un mecanismo de cach no es una
tarea balad. Se requieren esquemas de funcionamiento que atiendan de forma
simultnea y balanceada diversos factores:

Discriminar que informacin debe ser almacenada y cual descartada.


Decidir la organizacin interna de este almacenamiento.
Manejar las peticiones de lectura. Esto exige disponer de un
mecanismo de intercepcin de las peticiones del dispositivo que est
siendo cacheado.

Manejar las peticiones de escritura. Interceptar las peticiones de


escritura del dispositivo a cachear.

2.4.3 Algoritmos usados para reemplazo en cache


2.4.3.1 Algoritmo de reemplazo de paginas segun el uso no tan reciente
Este algoritmo hace uso de los dos bits de estado que estn asociados a
cada pgina. Estos bits son: R, el cual se activa cuando se hace referencia
(lectura / escritura) a la pgina asociada; y M, que se activa cuando la pgina
asociada es modificada (escritura). Estos bits deben de ser actualizado cada vez
que se haga referencia a la memoria, por esto es de suma importancia que sean
activados por el hardware. Una vez activado el bit, permanece en ese estado
hasta que el sistema operativo, mediante software, modifica su estado.
Estos bits pueden ser utilizados para desarrollar un algoritmo de reemplazo
que cuando inicie el proceso, el sistema operativo asigne un valor de 0 a ambos
bits en todas las pginas. En cada interrupcin de reloj, limpie el bit R para
distinguir cules pginas tuvieron referencia y cules no.
Cuando ocurre un fallo de pgina, el sistema operativo revisa ambos bits en
todas las pginas y las clasifica de la siguiente manera:

Clase 0: La pgina no ha sido referenciada, ni modificada.


Clase 1: La pgina no ha sido referenciada, pero ha sido modificada.
Clase 2: La pgina ha sido referenciada, pero no ha sido modificada.
Clase 3: La pgina ha sido referenciada y tambin modificada.

Una vez obtenida la clasificacin, elimina una pgina de manera aleatoria


de la primera clase no vaca con el nmero ms pequeo. Esto porque para el
algoritmo es mejor eliminar una pgina modificada sin referencias en al menos un
intervalo de reloj, que una pgina en blanco de uso frecuente.
A pesar de que este algoritmo no es el ptimo, es fcil de implementar y de
comprender y con mucha frecuencia es el ms adecuado.
Algoritmos de reemplazo de pginas:
Algoritmo LRU (LeastRecentlyUsed):

Se sustituye la pgina menos recientemente usada. Se recuerda el


instante en que cada pgina se us por ltima vez, y en caso de
reemplazo se escoge la pgina que tiene ms tiempo sin usarse.
Se utiliza mucho y se considera de alto rendimiento respecto del
ptimo.
Requiere un hardware adicional para su implementacin:

o Contadores: Reemplazo de la pgina con un tiempo ms


largo.
o Pila: La base de la pila corresponde con la pgina LRU.
Esta implementacin resulta costosa, ya que contadores y pilas
deben actualizarse en cada referencia a la memoria, acceso ms
lento a la memoria.
Sistemas reales: implementan aproximaciones a LRU.
No presentan la Anomala de Belady.
Determina el bloque que hace ms tiempo que no se referencia, y
determina que ste debe ser el que debe abandonar la cach. Como
esta poltica es difcil de implementar en hardware normalmente se
usan versiones un poco simplificadas.

Algoritmos de aproximacin al LRU:


1. Algoritmos con bits de referencia adicionales:
o Las tcnicas basadas en LRU utilizan un bit de referencia
puesto por el hardware.
o El hardware enciende el bit de referencia (lo pone a 1) de una
pgina cada vez que se hace referencia a ella (lectura o
escritura).
o Examinando este bit no conocemos el orden de uso, pero s
sabemos cules pginas se usaron y cules no.
o Es posible obtener informacin de ordenamiento adicional si
registramos los bits de referencia a intervalos adicionales.
o Bytehistrico: Por ej.: 11000100 se us ms recientemente
que 01110111.
o LRU: pgina con el nmero ms bajo.
o Si el n de bits histricos es cero, es decir, dejamos slo el bit
de referencia Algoritmo de segunda oportunidad.
2. Algoritmo de segunda oportunidad o algoritmo del reloj.
o Sencillo y efectivo, examina la pgina ms antigua como
posible vctima.
o Comportamiento: FIFO teniendo en cuenta el bit de referencia:
o Bit de referencia a cero: Reemplazo de pgina.
o Bit de referencia a uno: Segunda oportunidad, ponemos el bit
de referencia a cero y seleccionamos la siguiente pgina
FIFO.
o Se puede implementar como una cola circular, donde un
puntero indicar cul es la pgina a reemplazar a
continuacin.
o Cuando se necesita un marco, el puntero avanza hasta
encontrar una pgina cuyo bit de referencia est apagado.

Con el avance del puntero los bits de referencia encendidos


se van apagando.
o Una vez hallada una pgina vctima, se reemplaza y la nueva
pgina se inserta en la cola circular en esa posicin.
3. Algoritmo de segunda oportunidad mejorado.
o Bit de referencia + bit de modificacin.
o Usando estos dos bits tenemos cuatro situaciones posibles:
(0, 0): No se ha usado ni modificado recientemente.
(0, 1): No se ha usado recientemente, s se ha
modificado.
(1, 0): Usada recientemente, no modificada.
(1, 1): Usada y modificada recientemente.
o Se reemplaza la pgina que encontremos de clase ms baja.
o Se da preferencia a las pginas que han sido modificadas a
fin de reducir el n de operaciones de E/S requeridas.
Algoritmos de conteo:
Tienen un contador con el n de referencias que se hacen a cada pgina.
Algoritmo LFU (Least Frequently Used):
o Reemplaza la pgina menos frecuentemente usada (cuenta
ms baja).
o Problema: pginas que se usaron mucho durante la fase
inicial del proceso y luego no se vuelven a usar.
o Solucin: desplazar las cuentas un bit a la derecha a
intervalos regulares.
o Problema serio: pginas tradas recientemente, alta
probabilidad de salir (cuenta baja).
3. Planificacin de disco
Una de las obligaciones del sistema operativo es usar el hardware de forma
eficiente. En el caso de las unidades de disco, esto implica tener un tiempo de
acceso breve y gran ancho de banda de disco. El tiempo de acceso tiene dos
componentes principales.
El tiempo de bsqueda (seek time) es el tiempo que tarda el brazo del disco
en mover las cabezas al cilindro que contiene el sector deseado. La latencia
rotacional es el tiempo adicional que el disco tarda en girar hasta que el sector
deseado queda bajo la cabeza del disco. El ancho de banda del disco es el
nmero total de bytes transferidos, dividido entre el tiempo total transcurrido entre
la primera solicitud de servicio y la finalizacin de la ltima transferencia.

Cada vez que un proceso necesita E/S de o al disco, emite una llamada al
sistema operativo. La solicitud especifica varios elementos de informacin:

Si esta operacin es de entrada o de salida


La direccin en disco para la transferencia
La direccin en memoria para la transferencia
El nmero de bytes por transferir

Si la unidad de disco y controlador deseados estn disponibles, la solicitud


puede atenderse de inmediato, si no, todas las solicitudes de servicios nuevas
tendrn que colocarse en la cola de solicitudes pendientes para esa unidad. En un
sistema multiprogramacin con muchos procesos, puede ser comn que la cola de
disco tenga varias solicitudes pendientes. As, cuando se termina de atender una
solicitud, el sistema operativo tiene oportunidad de escoger cul solicitud
pendiente atender a continuacin.
3.1 POLTICAS DE PLANIFICACIN DE DISCOS
Una forma simple de atender a las solicitudes en el disco es la primero en
llegar-primero en ser atendido. Existen adems otros criterios para evaluar las
polticas de planificacin:

Capacidad de ejecucin
Media del tiempo de respuesta
Varianza de los tiempos de respuesta

Es claro que una poltica de planificacin debe intentar maximizar la


capacidad de ejecucin, el nmero de peticiones servidas por unidad de tiempo.
Debido a la planificacin se reduce el tiempo desperdiciado en las esperas de las
bsquedas, con lo que se puede mejorar la media de los tiempos de respuesta. Si
una poltica de planeacin no intenta ms que maximizar la capacidad de
ejecucin sin minimizar al mismo tiempo la varianza, podra procesar peticiones.
(Cuanto menor es la varianza, ms predecible es el sistema).
El objetivo es reducir los tiempos de acceso en la lectura o escritura de los
datos. Adems del tiempo de acceso y del tiempo de transferencia, existen
algunos retrasos en las colas que normalmente tienen asociada una operacin de
E/S a disco. Cuando un proceso emite una solicitud de E/S, primero debe esperar
en una cola a que el dispositivo est disponible. En ese momento, el dispositivo
queda asignado al proceso. Si el dispositivo comparte un nico canal de E/S o un
conjunto de canales con otras unidades del disco, puede producirse una espera
adicional hasta que el canal est disponible. En ese punto se realizar la
bsqueda con que comienza el acceso al disco.
NOMBRE

DESCRIPCION

COMENTARIOS

Seleccin en funcin del demandante


RSS
FIFO
PRI
LIFO

Planificacin aleatoria.

Para anlisis y simulacin.

Primero en entrar, primero en


El ms justo de todos.
salir.
El control se lleva fuera de la
Prioridad del proceso.
gestin de la cola del disco.
Maximiza uso de recursos y
ltimo en entrar ltimo en salir.
cercanas.
Seleccin en funcin del elemento solicitado
Gran aprovechamiento
colas pequeas.

SSTF

Primero el ms corto.

SCAN

Recorre el disco de un lado a Mejor


otro.
servicio.

C-SCAN

Recorre el disco en un solo Menor variabilidad


sentido.
servicio.

SCAN de NScan de N registros a la vez.


pasos
F-SCAN

distribucin

y
del

en

el

Garanta de servicio.

Scan de N pasos, con N =


longitud de la cola al comienzo Sensible a la carga.
del ciclo del Scan.

3.2 Optimizacin de la Bsqueda en Discos


Las estrategias ms comunes de optimizacin de la bsqueda son las
siguientes:
3.2.1 Planificacin FCFS
La forma ms sencilla de planificacin de disco es, desde luego, el servicio
por orden de llegada (FCFS, first come, first served). No proporciona el servicio
ms rpido.
La planificacin FCFS es justa en el sentido de que una vez que llega una
peticin, se fija su lugar dentro de la cola de espera. Una peticin, se fija su lugar
dentro de la cola de espera. Una peticin no puede ser desplazada por la llegada
de otra con prioridad ms alta.
La FCFS es aceptable cuando la carga en un disco es ligera. Pero a
medida que crece la carga, la FCFS tiende a saturar el dispositivo y los tiempos de
respuesta se incrementan. La FCFS ofrece una varianza pequea, pero tiene
tiempos de espera muy grandes.

3.2.2 Planificacin SSTF


Parece razonable atender todas las solicitudes cercanas a la posicin
actual de la cabeza antes de mover la cabeza a una posicin lejana para atender
otras solicitudes. Este supuesto es la base del algoritmo de tiempo de bsqueda
ms corto primero (SSTF, shortest-seek-time-first), que selecciona la solicitud que
tiene el menor tiempo de bsqueda a partir de la posicin actual de la cabeza.
En esta poltica la peticin que da por resultado la distancia de bsqueda
ms corta (y, con esto, el tiempo de bsqueda ms corto) es la siguiente en ser
servida, aunque esa peticin no sea la primera en la cola.
Los patrones de bsqueda SSTF tienden a estar muy relocalizados, dando
como resultado que las pistas internas y externas reciban un servicio pobre, en
comparacin con las pistas del centro. La SSTF es til en sistemas de
procesamiento por lotes, en los cuales la capacidad de ejecucin es lo ms
importante. Pero la alta varianza de los tiempos de respuesta (es decir, su falta de
predecibilidad) lo hace inaceptable para los sistemas interactivos.
Este algoritmo mejora sustancialmente el desempeo.
La planificacin SSTF es en esencia una forma de planificacin de trabajo
ms corto primero (SJF) y, al igual que la planificacin SFJ, puede cause inanicin
de algunas solicitudes. Aunque el algoritmo SSTF representa una mejora
sustancial respecto al algoritmo FCFS, no es ptimo.
3.3.3 Planificacin SCAN
En el algoritmo SCAN, el brazo del disco parte de un extremo del disco y se
mueve hacia el otro, atendiendo las solicitudes a medida que llega a cada cilindro,
hasta llegar al otro extremo del disco. Ah, la direccin de movimiento de la cabeza
se invierte, y contina la atencin. La cabeza barre continuamente el disco de un
lado a otro. Esta poltica, desarrollada por Denning, opera como SSTF, excepto
que selecciona la peticin que da como resultado la distancia de bsqueda ms
corto en una direccin seleccionada. La SCAN no cambia de direccin hasta que
ha alcanzado el cilindro exterior o hasta que ya NO haya peticiones pendientes en
la direccin con preferencia.
La SCAN se comporta de manera parecida al SSTF desde el punto de vista
de la mejora en la capacidad de ejecucin y de la media de los tiempos de
respuesta, pero elimina mucha de la discriminacin inherente a los esquemas
SSTF y ofrece una varianza menor.
El algoritmo SCAN tambin se conoce como algoritmo de elevador, ya que
el brazo del disco se comporta igual que el elevador de un edificio, que atiende
primero todas las solicitudes para subir y luego cambia de direccin para atender
las solicitudes de abajo.

3.3.4 Planificacin SCAN de n-pasos


En esta estrategia, el brazo del disco se mueve de un lado a otro como en
SCAN, pero slo da servicio a aquellas peticiones que se encuentran en espera
cuando comienza un recorrido particular. Las peticiones que llegan durante un
recorrido son agrupadas y ordenadas para un servicio ptimo durante el recorrido
de regreso.
La SCAN de n-pasos ofrece un buen rendimiento de la capacidad de
ejecucin y de la media de los tiempos de respuesta. Su caracterstica ms
significativa es una menor varianza de los tiempos de respuesta que las
planeaciones SSTF y SCAN convencionales. La SCAN de n-pasos evita la
posibilidad de postergacin indefinida que tiene lugar si un gran nmero de
peticiones que llegan al cilindro que est siendo servido y guarda estas peticiones
para ser servidas durante el recorrido de regreso.
3.3.5 Planificacion C-SCAN
La planificacin SCAN circular (C-SCAN) es una variante de SCAN
diseada para dar un tiempo de espera ms uniforme. Al igual que SCAN, CSCAN mueve la cabeza de un extremo del disco al otro, atendiendo las solicitudes
en el camino, slo que ahora, cuando la cabeza llega al otro extremo, regresa de
inmediato al principio del disco sin atender solicitudes.
El algoritmo de planificacin C-SCAN bsicamente trata los cilindros como
una lista circular que contina del ltimo cilindro al primero. En la estrategia CSCAN, el brazo se mueve del cilindro exterior al interior, sirviendo a las peticiones
con menor tiempo de bsqueda. Cuando el brazo ha completado su recorrido
hacia adentro, salta a la peticin ms cercana al cilindro exterior y a continuacin
reanuda su recorrido hacia adentro procesando peticiones. La C-SCAN puede
implementarse de forma que las peticiones que llegan durante un recorrido sean
servidos en el siguiente. De esta forma C-SCAN elimina completamente la
discriminacin contra las peticiones para los cilindros exterior e interior. Tiene una
varianza de los tiempos de respuesta muy pequea.

3.3.6 Planificacin LOOK


En la prctica, ningunos de estos dos algoritmos se implementan as. Por lo
regular, el brazo slo llega hasta la ltima solicitud en cada direccin y luego
cambia de direccin inmediatamente, sin primero ir hasta el extremo del disco.
Estas versionas de SCAN y C-SCAN se llaman LOOK y C-LOOK, porque miran si
hay una solicitud antes de continuar en una direccin dada.
3.3.7 esquema Eschenbach
En esta estrategia el movimiento del brazo del disco es circular como en CSCAN, pero con varias excepciones importantes. Cada cilindro es servido
exactamente por una pista completa de informacin, haya o no peticiones para
este cilindro. Las peticiones se redondean a ser servidas dentro de un cilindro para
tomar ventaja de la posicin rotacional, pero si dos peticiones traslapan posiciones
de sectores dentro de un cilindro, solamente se sirve una en el movimiento actual
del brazo del disco.
Con carga baja, la poltica SCAN es la mejor, mientras que con cargas
medias y pesadas, la C-SCAN produce los mejores resultados. La C-SCAN con
optimizacin rotacional maneja de manera efectiva condiciones de carga muy
pesadas y ha demostrado ser mejor que el esquema Eschenbach bajo todas las
condiciones de carga.
3.4 Optimizacin rotacional en discos

En condiciones de carga pesada, la probabilidad de que ocurran referencias


al mismo cilindro aumenta y resulta til considerar la optimizacin rotacional de la
misma forma que la optimizacin de bsqueda.
Una forma paralela a la estrategia de optimizacin de la bsqueda SSTF es
la estrategia SLTF (tiempo de latencia ms corto primero) de optimizacin
rotacional. Una vez que el brazo del disco llega a un cilindro en particular, pueden
existir muchas peticiones pendientes en las distintas pistas de ese cilindro. La
estrategia SBIF examina todas estas peticiones y sirve primero a aquella que tiene
el retraso rotacional ms corto. Esta estrategia ha demostrado estar muy cerca del
ptimo terico y es relativamente fcil de implementar.
3.5 Seleccin de un algoritmo de planificacin de disco
SSTF es comn y tiene un atractivo natural. SCAN y C-SAN funcionan
mejor en sistemas en los que la carga sobre el disco es intensa, y no son
propensos al problema de inanicin. Con cualquier algoritmo de planificacin, es
desempeo depende en gran medida del nmero y los tipos de solicitudes.
El mtodo de asignacin de archivos puede influir mucho sobre las
solicitudes de servicio de disco. Un programa que lee un archivo que se asign
contiguamente generar varias solicitudes cercanas entre s en el disco, y el
movimiento de la cabeza ser limitado. Un archivo enlazado o indexado, en
cambio, podra incluir bloques muy dispersos en el disco, y el movimiento de la
cabeza sera mayor.
La colocacin de los directorios y los bloques ndice en caches de la
memoria principal puede ayudar tambin a reducir el movimiento del brazo del
disco, sobre todo para las solicitudes de lectura.
Es conveniente que el algoritmo de planificacin de disco se escriba como
mdulo independiente del sistema operativo, a fin de poder sustituirlo por un
algoritmo diferente si es necesario. SSTF y LOOK son opciones razonables para
el algoritmo por omisin.
Los algoritmos descritos slo consideran las distancias de bsqueda. En los
discos modernos, la latencia rotacional puede ser casi tan grande como el tiempo
de bsqueda promedio, pero es difcil para el sistema operativo reducir la latencia
rotacional mediante planificacin, porque los discos modernos no revelan la
ubicacin fsica de los bloques lgicos.
4. Software RAID
Con el uso de mltiples discos, existen varias formas que se pueden
organizar los datos. Dificultando el desarrollo de esquemas de bases de datos
que se pueden utilizar en mltiples plataformas y S.O. La industria a acordado un
sistema estndar para el diseo de base de datos sobre mltiples discos, llamado

RAID (Vector Redundante de Discos Independientes), este esquema consta de


siete niveles que distinguen distintas arquitecturas de diseo, compartiendo tres
caractersticas comunes:

RAID es un conjunto de unidades de disco fsicos vistas por el S.O.


como una sola unidad lgica.
Los datos estn distribuidos a travs de las unidades fsicas del
vector.
La capacidad del disco redundante se utiliza para almacenar
informacin de paridad, que garantiza la recuperabilidad de datos en
caso de fallo del disco.

La estrategia RAID reemplaza unidades de disco de gran capacidad por


mltiples discos de menor capacidad y distribuye los datos que luego son
accedidos simultneamente a ellos por mltiples discos, esto mejora el
rendimiento de las E/S y aumenta su capacidad. Para compensar la disminucin
de la fiabilidad, RAID hace uso de la informacin de paridad almacenada, que
permite la recuperacin de los datos perdidos como consecuencia de un fallo del
disco.
4.1 NIVELES RAID
NIVEL 0: Los usuarios y los datos del sistema estn distribuidos a lo largo
de todo el vector de discos, este esta dividido en bandas que pueden ser bloques
fsicos, sectores o alguna otra unidad. Al conjunto de bandas consecutivas
lgicamente, se lo denomina franja. Presenta la ventaja de que si una nica
solicitud de E/S esta formada por mltiples bandas contiguas; estas podrn
gestionarse en paralelo reduciendo la transferencia de E/S.
NIVEL 1(Espejo): La redundancia de los datos se consigue duplicando los
mismos, los datos son divididos de la misma forma que en RAID0; pero cada
banda se corresponde con dos discos fsicos independientes.
Aspectos positivos:

Una solicitud de lectura puede utilizar cualquiera de los dos discos


que contienen los datos solicitados y que suponga menor tiempo
sumando el de bsqueda y la latencia de giro.
Una solicitud de escritura requiere la actualizacin de las bandas
correspondientes a ambos discos, solo se puede hacer en paralelo.
Cuando se actualiza una sola banda, el software de gestin del
vector de disco primero debe calcular y actualizar los bits de paridad
y luego la banda real.
Cuando una unidad falla, los datos todava estn disponibles desde
la segunda unidad.

Desventaja:
Su COSTE requiere dos veces el espacio de disco del disco lgico que
soporta. Puede conseguir altas tasas de solicitudes de E/S si las mismas son de
lectura, cuyo rendimiento puede ser el doble que en RAID 0, pero si las solicitudes
son de escritura su rendimiento talvez no ser el mismo.
NIVEL 2(Redundancia mediante cdigo hamming): Este utiliza
una tcnica de acceso paralelo. Las bandas de este nivel son muy pequeas,
considerndolo como un nico byte o palabra. Se utiliza un cdigo HAMMING para
corregir errores de un solo bit y la deteccin de errores de dos bit.
Cuando se requiere una solicitud de lectura todos los discos son accedidos
simultneamente, ocurriendo lo mismo con una solicitud de escritura y n este caso
tambin son accedidos todos los discos de paridad.
RAID 2 solo ser eficiente cuando se produzcan muchos errores en el
disco.
NIVEL 3(Paridad por intercalacin de bits): Este requiere solo un
disco redundante, emplea acceso paralelo. Cuando ha ocurrido algn error, se
calcula un solo bit de paridad para el conjunto de bits en la misma posicin de
todos los discos de datos.
En el caso de un fallo de disco, se accede a la unidad de paridad y se
reconstruyen los datos desde los dispositivos restantes.
Debido a que los datos estn divididos en pequeas bandas, RAID 3 puede
conseguir una tasa de transferencia de datos muy alta. Cualquier solicitud de E/S
involucrara una transferencia de datos en paralelo desde todos los discos de datos
solo se puede ejecutar una solicitud de E/S. Disminuyendo el rendimiento en un
entorn orientado a transacciones.
NIVEL 4(Paridad por intercalacin de bloques): Utiliza una tcnica de
acceso independiente, por lo que se puede satisfacer las solicitudes de E/S
individuales. Son mas apropiados para aplicaciones que requieren tasas altas de
solicitudes de E/S, y son relativamente menos apropiados para aplicaciones que
requieren tasas altas de transferencias de datos
NIVEL 5(Paridad por intercalacin distribuida de bloques): Al igual
que el RAID 4 se diferencia en la distribucin de las bandas de paridad a travs de
todos los discos, por lo tanto evita el potencial cuello de botella en la E/S del
sistema RAID 4 que tiene solo un disco de paridad.
NIVEL 6(Redundancia dual): Se realizan dos clculos distintos de
paridad, y se almacenan en bloques independientes de diferentes discos, la
ventaja es la disponibilidad de datos son extremadamente alta. Por otro lado sufre

una importante penalizacin de escritura, porque cada escritura afecta a dos


bloques de paridad.
4.2 PRINCIPIOS DE SOFTWARE DE DISCO
El tiempo que se tarda desde que el Driver de disco programa al
controlador para realizar la lectura de un sector, hasta que la informacin de esta
en la memoria:
T. POSICIONAMIENTO + T. LATENCIA + T. TRANSFERENCIA (buffercontrolador) + T. CHECKSUM + T. TRANSFERENCIA (controlador-memoria)
Normalmente el tiempo de CHECKSUM es despreciable. En algunos casos
puede existir tiempos aadidos
si la informacin del disco esta cifrada y el
algoritmo de cifrado/ descifrado lo incrementa el controlador, despus de realizar
el CHECKSUM el controlador deber descifrar los datos.
Caractersticas genricas de los drivers de disco son:
A: MEJORA EL TIEMPO DE ACCESO.
B: TRATAMIENTO DE ERRORES.
A: MEJORA EL TIEMPO DE ACCESO
T. ACCESO = T. POSICIONAMIENTO + T. LATENCIA + T. TRANFERENCIA
De estos tres tiempos el ms significativo es el de posicionamiento. Cuando el
driver permite ir almacenando peticiones pendientes mientras se trata la actual, se
intenta reducir el tiempo medio de posicionamiento aplicando un algoritmo que
decida que peticin de las pendientes atender primero.
B: TRATAMIENTO DE ERRORES
Los discos estn sometidos a una gran variedad de errores. Cuando se producen
el controlador deber avisar al driver para que tome la decisin pertinente. Los
errores ms comunes son:
Errores de programacin: El driver le indica al controlador que una
pista, cilindro, sector que no existe o una direccin de memoria invalida. El
controlador al detectar el error lo trasmite al driver. Este avisa al SW E/S
independiente.
Errores de posicionamiento: Este error se produce por errores
mecnicos del brazo de
lectura / escritura. El controlador de disco mantiene
internamente cual es la posicin del brazo de lectura / escritura en cada momento.
Para mover el brazo a otro cilindro manda un pulso a un motor por cada
cilindro que quiera atravesar. Cuando llega al cilindro destino, lee el valor del

cilindro actual (se grabo al principio de la pista al formatear el disco). Si la posicin


actual no coincide con la que se esperaba se produce un error de
posicionamiento, este error suele corregirse recalibrando el brazo (lo manda al
cilindro 0).
Esta accin puede realizarla el controlador o, si este no puede, el driver de
disco (comando RECALIBRABLE)
Errores en el controlador de disco: puede darse la situacin que el
controlador se niegue a aceptar comandos del driver, en este caso el driver debe
recetar el controlador.
5. Manejo de E/S en Windows y Unix
5.1 Manejo de E/S en Unix
El sistema de entrada/salida se divide en dos sistemas complementarios: el
estructurado por bloques y el estructurado por caracteres. El primero se usa para
manejar cintas y discos magnticos, y emplea bloques de tamao fijo (512 o 1024
bytes) para leer o escribir. El segundo se utiliza para atender a las terminales,
lneas de comunicacin e impresoras, y funciona byte por byte.
En general, el sistema Unix emplea programas especiales (escritos en C)
conocidos como manejadores (drivers) para atender a cada familia de dispositivos
de E/S. Los procesos se comunican con los dispositivos mediante llamadas a su
manejador. Adems, desde el punto de vista de los procesos, los manejadores
aparecen como si fueran archivos en los que se lee o escribe; con esto se logra
gran homogeneidad y elegancia en el diseo.
Cada dispositivo se estructura internamente mediante descriptores
llamados nmero mayor, nmero menor y clase (de bloque o de caracteres). Para
cada clase hay un conjunto de entradas, en una tabla, que aporta a los
manejadores de los dispositivos. El nmero mayor se usa para asignar manejador,
correspondiente a una familia de dispositivos; el menor pasa al manejador como
un argumento, y ste lo emplea para tener acceso a uno de varios dispositivos
fsicos semejantes. Las rutinas que el sistema emplea para ejecutar operaciones
de E/S estn diseadas para eliminar las diferencias entre los dispositivos y los
tipos de acceso. No existe distincin entre acceso aleatorio y secuencial, ni hay un
tamao de registro lgico impuesto por el sistema. El tamao de un archivo
ordinario est determinado por el nmero de bytes escritos en l; no es necesario
predeterminar el tamao de un archivo.
El sistema mantiene una lista de reas de almacenamiento temporal
(buffers), asignadas a los dispositivos de bloques. El Kernel usa estos buffers con
el objeto de reducir el trfico de E/S. Cuando un programa solicita una
transferencia, se busca primero en los buffers internos para ver si el bloque que se
requiere ya se encuentra en la memoria principal (como resultado de una

operacin de lectura anterior). Si es as, entonces no ser necesario realizar la


operacin fsica de entrada o salida.
Existe todo un mecanismo de manipulacin interna de buffers (y otro de
manejo de listas de bytes), necesario para controlar el flujo de datos entre los
dispositivos de bloques (y de caracteres) y los programas que los requieren.
Por ltimo, y debido a que los manejadores de los dispositivos son
programas escritos en lenguaje C, es relativamente fcil reconfigurar el sistema
para ampliar o eliminar dispositivos de E/S en la computadora, as como para
incluir tipos nuevos.
5.1.1 Manejo de archivos
La estructura bsica del sistema de archivos es jerrquica, lo que significa
que los archivos estn almacenados en varios niveles. Se puede tener acceso a
cualquier archivo mediante su trayectoria, que especifica suposicin absoluta en la
jerarqua, y los usuarios pueden cambiar su directorio actual a la posicin
deseada. Existe tambin un mecanismo de proteccin para evitar accesos no
autorizados. Los directorios contienen informacin para cada archivo, que consiste
en su nombre y en un nmero que el Kernel utiliza para manejar la estructura
interna del sistema de archivos, conocido como el nodo-i.
Hay un nodo-i para cada archivo, que contiene informacin de su directorio
en el disco, su longitud, los modos y las fechas de acceso, el autor, etc. Existe,
adems, una tabla de descriptores de archivo, que es una estructura de datos
residente en el disco magntico, a la que se tiene acceso mediante el sistema
mencionado de E/S por bloques.
El control del espacio libre en el disco se mantiene mediante una lista ligada
de bloques disponibles. Cada bloque contiene la direccin en disco del siguiente
bloque en la cadena. El espacio restante contiene las direcciones de grupos de
bloques del disco que se encuentren libres. De esta forma, con una operacin de
E/S, el sistema obtiene un conjunto de bloques libres y un puntador para conseguir
ms.
Las operaciones de E/S en archivos se llevan a cabo con la ayuda de la
correspondiente entrada del nodo-i en la tabla de archivos del sistema. El usuario
normalmente desconoce los nodos-i porque las referencias se hacen por el
nombre simblico de la trayectoria. Los procesos emplean internamente funciones
primitivas (llamadas al sistema) para tener acceso a los archivos; las ms
comunes son open, creat, read, write, seek, close y unlink, aunque slo son
empleadas por los programadores, no por los usuarios finales del sistema.
Toda esta estructura fsica se maneja "desde afuera" mediante la filosofa
jerrquica de archivos y directorios ya mencionada, y en forma totalmente

transparente para el usuario. Adems, desde el punto de vista del sistema


operativo, un archivo es muy parecido a un dispositivo.
Las ventajas de tratar a los dispositivos de E/S en forma similar a los
archivos normales son mltiples: un archivo y un dispositivo de E/S se tornan muy
parecidos; los nombres de los archivos y de los dispositivos tienen la misma
sintaxis y significado, as que a un programa que espera un nombre de archivo
como parmetro puede drsele un nombre de dispositivo (con esto se logra
interaccin rpida y fcil entre procesos de alto nivel).
El sistema Unix ofrece varios niveles de proteccin para el sistema de
archivos, que consisten en asignar a cada archivo el nmero nico de
identificacin de su dueo, junto con nueve bits de proteccin, que especifican
permisos de lectura, escritura y ejecucin para el propietario, para otros miembros
de su grupo (definido por el administrador del sistema) y para el resto de los
usuarios. Antes de cualquier acceso se verifica su validez consultando estos bits,
que residen en el nodo-i de todo archivo. Adems, existen otros tres bits que se
emplean para manejos especiales, relacionados con la clave del super usuario.
Otra caracterstica de Unix es que no requiere que el conjunto de sistemas
de archivos resida en un mismo dispositivo. Es posible definir uno o varios
sistemas "desmontables", que residen fsicamente en diversas unidades de disco.
Existe una orden (mkfs) que permite crear un sistema de archivos adicional, y una
llamada al sistema (mount) con la que se aade (y otra con la que se desmonta)
uno de ellos al sistema de archivos global.
El control de las impresoras de una computadora que funciona con el
sistema operativo Unix consiste en un subsistema (SPOOL) que se encarga de
coordinar los pedidos de impresin de mltiples usuarios. Existe un proceso de
Kernel que en forma peridica revise las colas de servicio de las impresoras para
detectar la existencia de pedidos e iniciar entonces las tareas de impresin. Este
tipo de procesos, que son activados en forma peridica por el ncleo del sistema
operativo, reciben en Unix el nombre de daemons (duendes), tal vez porque se
despiertan y aparecen sin previo aviso. Otros se encargan de activar procesos en
tiempos previamente determinados por el usuario, o de escribir peridicamente los
contenidos de los buffers de memoria en el disco magntico.
5.2 Manejador de entrada y salida de Windows:
El Manejador de E/S es la parte de Windows NT ejecutivo que maneja
todas las entradas y todas las salidas del S.O.. Gran parte del rol de este
Manejador es manejar las comunicaciones entre drivers. El Manejador de E/S
soporta todos los sistemas de archivos de drivers, manejadores de dispositivos de
hardware y manejadores de redes y provee un ambiente heterogneo para ellos.
Provee una interfase formal que todos los manejadores o drivers pueden invocar.

Esta interfase uniforme le permite al Manejador de E/S comunicarse con


todos los drivers de la misma manera sin tener conocimiento de cual de los
dispositivos esta controlando actualmente. El Manejador de E/S tambin incluye
rutinas especiales designadas para soporte de manejadores de sistemas de
archivo, de dispositivos de hardware y de dispositivos de red.
El modelo de Windows NT para E/S usa una arquitectura de niveles que
permite manejadores separados para implementar cada capa lgica distinta de un
procesamiento de E/S.
Manejador de cache: la arquitectura de E/S incluye un nico Manejador de
cache que maneja la totalidad de las E/S del sistema por este mtodo. El mtodo
cache es usado por un archivo de sistema para mejorar el rendimiento.
El Manejador de cache usa un archivo mapeado estrechamente integrado
con el manejo de la memoria virtual de Windows NT. El Manejador de cache
provee sus servicios a todos los archivos de sistema y componentes de red bajo el
control del Manejador de E/S. El Manejador de cache puede hacer crecer
dinmicamente y disminuir el tamao de la memoria cache a medida que varia la
cantidad de memoria RAM disponible. Cuando un proceso abre un archivo que ya
reside en la memoria cache, el Manejador de cache simplemente copia los datos
de la cache al espacio de direcciones virtual del proceso y viceversa; la lectura y la
grabacin mejoran.
El Manejador de cache ofrece servicios como LAZY write y LAZY commit
que pueden mejorar sobre el rendimiento de todos los archivos del sistema. LAZY
WRITE es la habilidad de grabar los cambios en la estructura cache de los
archivos que es ms rpido que grabarlos sobre el disco y mas tarde cuando hay
una baja demanda de la unidad central del proceso, el Manejador cache los
cambios al disco. LAZY COMMIT es similar al LAZY WRITE. En vez de marcar
una transaccin completada exitosamente en forma inmediata, la informacin
declarada se coloca la memoria cache y luego se graba al sistema de registros de
archivos como un proceso back ground
Sistemas de manejo de archivos: en la arquitectura Windows NT de E/S, los
manejadores de sistema de archivos son dirigidos por el Manejador de E/S.
Windows NT soporta mltiples sistemas de archivos activos, incluyendo sistemas
de archivos existentes como la F.A.T. Windows NT soporta sistemas de archivos
F.A.T. y HPFS para resguardar la compatibilidad con los sistemas operativos MSDOS, Windows 3.X y OS/2. La arquitectura de Windows NT de E/S no solamente
soporta sistemas de archivos tradicionales sino que ha implementados su
redirector de redes y servidor como un sistema de manejadores de archivos.
Desde la perspectiva del Manejador de E/S no hay diferencia entre acceder
archivos almacenados en una computadora remota va red y acceder a aquellos
almacenados localmente en un disco rgido. Adems los redirectores y servidores
pueden cargarse y descargarse dinmicamente como cualquier otro Manejador, y
pueden coexistir mltiples redirectores y servidores a la misma computadora.

Manejadores de dispositivos de hardware: los manejadores de dispositivos


de hardware tambin son componentes de la arquitectura de la E/S. Todos ellos
(como manejadores de impresin, de Mouse, de disco) estn escritos en el
lenguaje de programacin C, son direccionables a 32 bits y presentan seguridad al
Multiprocesamientos.
Los manejadores de dispositivos acceden a los registros de hard de los
dispositivos perifricos a travs de rutinas de soporte que provee el sistema
operativo Windows NT. Hay un conjunto de estas rutinas para cada plataforma que
soporta Windows NT. Como los nombres de las rutinas son iguales para todas las
plataformas los manejadores de dispositivos para Windows NT son transportable
entre cualquier tipo de procesadores.
Manejadores de red: un tercer tipo de Manejador implementado como un
componente de la arquitectura de E/S es el Manejador de red. Windows NT
incluye capacidades de funcionamiento de red integradas y soporte para
aplicaciones distribuidas.
HAL (Nivel de abstraccin de hardware): virtualVirtualiza las interfaces de
hardware, haciendo las transparentes al resto del S.O. Esto le permite portabilidad
de una plataforma a otra.
KERNEL: Est en el ncleo de esta arquitectura de niveles y maneja las
operaciones mas bsicas de Windows NT. Es responsable del despacho de hilos
(thread dispaching), organizacin del multiprocesamiento y manejo de
excepciones de hard.
EJECUTIVO: Coleccin de mdulos del Kernel que provee servicios
bsicos del sistema operativo a los subsistemas del ambiente.
SUBSISTEMAS DE ENTORNO: Son servidores protegidos a modo usuario
que ejecutan y soportan aplicaciones nativas en diferentes ambientes del SO.
DESPACHADOR DE OBJETOS (Dispatcher Object): Tiene una seal de
estado (sealado no sealado) que controla el despacho y sincronizacin de las
operaciones del sistema. Incluye: eventos mutantes, mutexes (acceso
mutuamente excluido a un recurso), semforos, hilos y relojes.
OBJETOS DE CONTROL (Control Objects): Se usan para controlar la
operacin del Kernel pero no afectan el despacho. Incluyen llamadas asincrnicas
a procedimientos, interrupciones, procesos y perfiles.
HILO: Unidad mas pequea de cdigo ejecutable independiente.
SERVICIOS DEL SISTEMA: Interfase entre los subsistemas del ambiente
modo usuario y el modo Kernel.

You might also like