Tabla de Contenido
PLANIFICACIN DE DISCOS1. 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 utilizarTiempo 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 -FAT-
Indexada: 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 -Indexada-
2.3 Optimizacin de las unidades de discoEl 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 WindowsLa 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:
Contadores: Reemplazo de la pgina con un tiempo ms largo.
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: Las tcnicas
basadas en LRU utilizan un bit de referencia puesto por el
hardware.
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).
Examinando este bit no conocemos el orden de uso, pero s sabemos
cules pginas se usaron y cules no.
Es posible obtener informacin de ordenamiento adicional si
registramos los bits de referencia a intervalos adicionales.
Bytehistrico: Por ej.: 11000100 se us ms recientemente que
01110111.
LRU: pgina con el nmero ms bajo.
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.
Sencillo y efectivo, examina la pgina ms antigua como posible
vctima.
Comportamiento: FIFO teniendo en cuenta el bit de
referencia:
Bit de referencia a cero: Reemplazo de pgina.
Bit de referencia a uno: Segunda oportunidad, ponemos el bit de
referencia a cero y seleccionamos la siguiente pgina FIFO.
Se puede implementar como una cola circular, donde un puntero
indicar cul es la pgina a reemplazar a continuacin.
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.
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.
Bit de referencia + bit de modificacin.
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.
Se reemplaza la pgina que encontremos de clase ms baja.
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):
Reemplaza la pgina menos frecuentemente usada (cuenta ms
baja).
Problema: pginas que se usaron mucho durante la fase inicial del
proceso y luego no se vuelven a usar.
Solucin: desplazar las cuentas un bit a la derecha a intervalos
regulares.
Problema serio: pginas tradas recientemente, alta probabilidad
de salir (cuenta baja).
3. Planificacin de discoUna 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 respuestaEs 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.NOMBREDESCRIPCIONCOMENTARIOS
Seleccin en funcin del demandante
RSSPlanificacin aleatoria.Para anlisis y simulacin.
FIFOPrimero en entrar, primero en salir.El ms justo de
todos.
PRIPrioridad del proceso.El control se lleva fuera de la gestin
de la cola del disco.
LIFOltimo en entrar ltimo en salir.Maximiza uso de recursos y
cercanas.
Seleccin en funcin del elemento solicitado
SSTFPrimero el ms corto.Gran aprovechamiento y colas
pequeas.
SCANRecorre el disco de un lado a otro.Mejor distribucin del
servicio.
C-SCANRecorre el disco en un solo sentido.Menor variabilidad en
el servicio.
SCAN de N-pasosScan de N registros a la vez.Garanta de
servicio.
F-SCANScan de N pasos, con N = longitud de la cola al comienzo
del ciclo del Scan.Sensible a la carga.
3.2 Optimizacin de la Bsqueda en Discos Las estrategias ms
comunes de optimizacin de la bsqueda son las siguientes:3.2.1
Planificacin FCFSLa 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
SSTFParece 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 SCANEn 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-pasosEn 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-SCANLa planificacin SCAN circular (C-SCAN)
es una variante de SCAN diseada para dar un tiempo de espera ms
uniforme. Al igual que SCAN, C-SCAN 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 C-SCAN, 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 LOOKEn 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 EschenbachEn esta estrategia el movimiento del
brazo del disco es circular como en C-SCAN, 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 discosEn 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 discoSSTF 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 RAIDCon 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 RAIDNIVEL 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 datosNIVEL 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 DISCOEl 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
(buffer-controlador) + 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 ACCESOT. 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
ERRORESLos 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 Unix5.1 Manejo de E/S en UnixEl
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 archivosLa 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
groundSistemas 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 MS-DOS,
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.