Вы находитесь на странице: 1из 2

FIFO

Algoritmo de planificacin de FIFO

Los procesos se despachan de acuerdo con su tiempo de llegada a la cola de procesos listos. Cuando un proceso tiene la CPU, se ejecuta hasta terminar. Es junto en el sentido formal, pero algo injusta en cuanto a que los trabajos largos hacen esperar a los cortos y los trabajos sin importancia hacen esperar a los importantes. FIFO ofrece variaciones relativamente pequenas en los tiempos de respuesta y por lo tanto es mas predecible que los otros esquemas. No es util en la planificacion para los usuarios interactivos porque no puede garantizar buenos tiempos de respuesta. El esquema FIFO rara vez se usa como esquema principal en los sistemas actuales, pero a menudo esta incorporado en otros sistemas. Por ejemplo, muchos esquemas de planificacion despachan los procesos de acuerdo con la prioridad, pero los procesos con la misma prioridad se despachan de acuerdo con el esquema FIFO. Este es un algoritmo que no usa apropiacion, y que consiste en atender a los procesos por estricto orden de llegada a la lista de procesos listos. Cada proceso se ejecuta hasta que termina, o hasta que hace una llamada bloqueante (de E/S). Se trata de una politica muy simple y sencilla de llevar a la practica, pero muy pobre en cuanto a su comportamiento.

Menos usada recientemente (Least Recently Used, LRU) Este algoritmo difiere del de No usada recientemente en el hecho de que aquel slo se fija en el intervalo de tiempo desde que se pusieron en 0 los bits de referencia de las pginas, mientras que el algoritmo de Menos usada recientemente intenta proveer un comportamiento casi ptimo mediante la observacin de las pginas que menos fueron usadas recientemente. Este tipo de pginas, estadsticamente son las que tienen menor probabilidad de ser usadas nuevamente. Aunque este algoritmo provee un buen comportamiento en teora, es caro de implementar, en cuanto a recursos consumidos. Hay varias implementaciones que intentan mantener bajo el costo y lograr un rendimiento considerable. Un mtodo consiste en tener una lista enlazada y ordenada de todas las pginas en memoria. En el final de la lista est la pgina menos usada recientemente, y al principio la ms usada recientemente. El costo alto de este mtodo es porque cada vez que se referencia una pgina debe ser movida en la lista, algo que consume mucho tiempo. Otra forma, que requiere soporte de hardware, consiste en tener un contador que es incrementado en cada instruccin del CPU. Cada vez que una pgina es accedida, gana el nmero del contador en ese momento. Cuando una pgina debe ser retirada de memoria, simplemente hay que buscar cul es la que tiene el menor nmero, que es la que fue usada hace ms tiempo. En el presente no existen contadores tan grandes para permitir esto.

Segmentacin: La segmentacin permite al programador contemplar la memoria como si constara de varios espacios de direcciones o segmentos. Los segmentos pueden ser de distintos tamaos, incluso de forma dinmica. Las referencias a la memoria constan de una direccin de la forma (numero de segmento, desplazamiento). Esta organizacin ofrece al programador varias ventajas sobre un espacio de direcciones no segmentado: 1. Simplifica la gestin de estructuras de datos crecientes. Si el programador no conoce a priori cuan larga puede llegar a ser una estructura de datos determinada, es necesario suponerlo a menos que se permitan tamaos de segmentos dinmicos. Con memoria virtual segmentada, a la estructura de datos se le puede asignar a su propio segmento y el S.O expandir o reducir el segmento cuando se necesite. 2. Permite modificar y recopilar los programas independientemente, sin que sea necesario recopilar o volver a montar el conjunto de programas por completo. 3. Se presta a la comparicin entre procesos. Un programador puede situar un programa de utilidades o una tabla de datos en un segmento que puede ser referenciado por otros procesos. 4. Se presta a la proteccin. Puesto que un segmento puede ser construido para albergar un conjunto de procedimientos y datos bien definido, el programador o el administrador del sistema podrn asignar los permisos de acceso de la forma adecuada.

Organizacin
En el estudio de la segmentacin simple, se llego a la conclusin de que cada proceso tiene su propia tabla de segmento y que, cuando todos los segmentos se encuentran en la memoria principal, la tabla de segmentos del proceso se crea y se carga en la memoria. Cada entrada de la tabla contiene la direccin de comienzo del segmento correspondiente de la memoria principal, as como su longitud. La misma estructura se necesitara al hablar de un esquema de memoria virtual basado en la segmentacin donde las entradas de la tabla de segmentos pasan a ser mas complejas. Puesto que solo algunos de los segmentos de un proceso estarn en la memoria principal, se necesita un bit en cada entrada de la tabla de segmentos para indicar si el segmento correspondiente esta presente en la memoria principal. Si el bit indica que el segmento esta en la memoria, la entrada incluye tambin la direccin de comienzo y la longitud del segmento. Otro bit de control necesario en la entrada de la tabla de segmentos es un bit de modificacin que indique si el contenido del segmento correspondiente ha sido modificado desde que se cargo por ltima vez en la memoria principal. Si no ha habido cambios, no ser necesario escribir en el disco el segmento cuando llegue el momento de reemplazarlo en el espacio que ocupa actualmente

Вам также может понравиться