sistemas operativos tp2

Upload: alejandro-cayssials

Post on 05-Jul-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/16/2019 Sistemas Operativos Tp2

    1/7

  • 8/16/2019 Sistemas Operativos Tp2

    2/7

    /) Particiones fjas

    l primer intento para posibilitar la multiprogramación !ue la creación de particiones fjas ;o

    particiones estáticas) en la memoria principal: una partición para cada tarea" ible que el de usuario nico porque permite que $arios

    programas est?n en memoria al mismo tiempo" Sin embargo& aun as%& requiere que se

    almacene el programa por completo de manera contigua y en la memoria desde el principio

    @asta el fn de su ejecución" ' fn de asignar espacios de memoria a tareas& el administrador

    de la memoria del sistema operati$o debe mantener una tabla mostrando el tama5o de cada

    partición de memoria& su dirección restricciones de acceso y estado actual ;libre u ocupado)

    para el sistema"

    l esquema de partición fja !unciona bien si todas las tareas que se ejecutan en el sistema

    son del mismo tama5o o si los tama5os se conocen por anticipado y no $ar%an entre

    reconfguraciones" l tama5o de las particiones se determina de manera arbitraria y pueden

    resultar demasiado peque5as o grandes para las tareas que lleguen"

    .) l algoritmo para almacenar tareas requiere pasos adicionales al utilizado en el sistema de

    un solo usuario& porque el tama5o de la tarea debe coincidir con el tama5o de la partición

    para asegurarse que quepa" uando se localiza un bloque de tama5o sufciente& debere$isarse el estado de la partición para $er si está disponible"

    2

     4ama5o de memoria solicitado por

    .,

    /, o @ay una partición disponible en este momento& coloque la tarea en la

     

    *,

    (,

    2,

    1,

    Aol$er al paso 1

    ambie el estado

    de partición de

    memoria ;ont")

     

    arga la tarea en

    la partición de

    memoria

    ont" 8 ont"

     

    Be@ace tarea

    Censaje operador

    Siguiente tarea

    0D

    ont" 8 ont"

     

    Si estado partición memoria 8

    Si tama5o tarea 3 tama5o partición

    Cientras cont" G8 numero de particiones en

    ont" 8 1

    Si tama5o partición 3 partición más

  • 8/16/2019 Sistemas Operativos Tp2

    3/7

    -) Fragmentación Interna

    l !enómeno del uso parcial de las particiones fjas y la creación coincidente de espacios sin

    utilizar en la partición se conoce como !ragmentación interna y es uno de los incon$enientes

    más importantes del esquema de asignación de memoria en particiones fjas"

    +) Si el tama5o de las particiones es demasiado peque5o las tareas más grandes seránrec@azadas o tendrán que esperar si las particiones grandes están ocupadas" Por otro lado& si

    las particiones son demasiado grandes se desperdicia memoria"

    ) Particiones Dinámicas

    on las particiones dinámicas& la memoria disponible an se conser$a en bloques contiguos&

    pero a las tareas nada más se les da la memoria que solicitan cuando se cargan para su

    procesamiento" 'unque es una mejor%a signifcati$a en relación a las particiones fjas ;porque

    no se desperdicia memoria en la partición) no elimina el problema"

    11) n un esquema de partición dinámica se utiliza toda la memoria al cargar las primerastareas" Pero con!orme entran nue$as tareas en el sistema& que no son del mismo tama5o de

    las que acaban de salir de la memoria& se acomodan en los espacios disponibles de acuerdo a

    su prioridad" Por lo tanto& la asignación subsecuente de la memoria crea !ragmentos de

    memoria libre entre bloques de memoria asignada" stos problemas se conocen como

    ragmentación externa& que dan lugar al desperdicio de memoria"

    12) Para los sistemas de asignación fja y de memoria dinámica& el sistema operati$o debe

    mantener listas de cada localidad de memoria& anotando cuales están libres y cuales están

    ocupadas" #uego& con!orme entran nue$as tareas en el sistema& las particiones libres se

    deben asignar"

    1() #as particiones de memoria se pueden asignar segn la t?cnica del primer ajuste ;la

    primera partición que llena los requisitos) o del mejor ajuste ;la partición más peque5a que

    llena los requisitos)" Para ambos esquemas el administrador de la memoria organiza las listas

    de participaciones libres y utilizadas ;libresIocupadas) ya sea por tama5o o localidad" #a

    asignación del mejor ajuste mantiene las listas libresIocupadas en orden por tama5o& desde la

    más peque5a a la más grande" l m?todo del primer ajuste organiza las listas libresIocupadas

    por localidades de memoria& de bajo orden @asta alto orden"

    (

    1, ont" 8

    (,

    2,

    0in

    oloque latarea en la cola

    de espera

    arga trabajo en el tama5o de la

    memoria& ajuste las listas libre y

    ocupada de la memoria

    ont" 8 cont"

     

    Si tama5o bloque 3 tama5o de la

    Cientras cont" G8 nmero de bloques en

  • 8/16/2019 Sistemas Operativos Tp2

    4/7

    Algoritmo de primer ajuste

    l algoritmo de primer ajuste asume que el administrador de memoria mantiene dos listas&

    uno para los bloques de memoria libres y otra para los bloques de memoria ocupados" #a

    operación consiste en comparar el tama5o de cada tarea con el tama5o de cada bloque de

    memoria& @asta @allar un bloque lo sufcientemente grande para la tarea" ' continuación& está

    se almacena en ese bloque de memoria y el administrador de la memoria sale del ciclo paratomar la siguiente tarea y repetir el proceso"

    Algoritmo de mejor ajuste

    7no de los problemas del algoritmo de mejor ajuste es que debe buscar toda la tabla antes de

    poder e!ectuar la asignación& porque los bloques de memoria están almacenados en

    secuencia& de acuerdo a su ubicación en la memoria ;y no en !unción a tama5os de bloques

    de memoria)"

    l administrador de memoria utiliza este algoritmo de mejor ajuste para buscar en toda la

    lista a partir de la parte superior de la misma a fn de localizar el bloque más peque5o pero lobastante grande para aceptar el trabajo" #a elección de este bloque minimiza el espacio

    desperdiciado"

    1*) Desasignación

    ste es el proceso de liberar o desasignar el espacio de memoria"

    Para un sistema de partición fja& el proceso es sencillo" uando se termina la tarea& el

    administrador de memoria restablece el estado del bloque de memoria donde se asigno la

    tarea como libre"

    n un sistema de partición dinámica& se utiliza un algoritmo más complicado& ya que este

    trata de combinar áreas libres de memoria siempre que sea posible& por lo que el sistema

    tiene que estar preparado para tres posibles situaciones:

     

    Cuando el loque que se !a lierar o desasignar esta junto a otro loque lirel sistema usa el algoritmo de desasignación anterior y $e que la memoria por liberar

    esta junto a un bloque de memoria libre" ntonces debe modifcar la lista para re=ejar

    la dirección de inicio del nue$o bloque libre& usando la dirección de la primera

    instrucción de la tarea que acaba de liberarlo" 'demás el tama5o del bloque de

    memoria para este nue$o espacio libre se debe modifcar para mostrar su nue$o

    tama5o que es el total combinado de las dos particiones libres"Eunión de dos bloquesF

  • 8/16/2019 Sistemas Operativos Tp2

    5/7

    -/.J 2J #ibre-.JJ 2J/ #ibre1J2/J *J/J libre#ista libre despu?s de la designación& el L indica la localidad donde se e!ectuaron

    cambios en el bloque de memoria libre"

      Cuando el loque por lierar se encuentra entre dos loques liresl sistema utiliza el algoritmo de desasignación y descubre que la memoria que se $a

    liberar está entre dos bloques libres de memoria" Por lo tanto de combinar el tama5o

    de las tres particiones libres y el total se almacena con la dirección de inicio de la más

    peque5a"E7nión de tres bloques libresF

  • 8/16/2019 Sistemas Operativos Tp2

    6/7

      ;entrada nula)1J2/J *J/J libre#ista libre antes de la designación

  • 8/16/2019 Sistemas Operativos Tp2

    7/7

    l !actor crucial es la periodicidad de la compactación: cuando y con qu? !recuencia debe

    e!ectuarse" Hay tres opciones:

    • 7na opción es realizarla cuando cierto porcentaje de la memoria queda ocupado&

    digamos un -/ por ciento" #a des$entaja es que el sistema incurrir%a en una carga

    general innecesaria si no @ay tareas esperando utilizar ese 2/ por ciento restante"• 7n segundo procedimiento es compactar la memoria solo cuando @aya tareas en

    espera de entrar" sto signifcar%a una re$isión constante de la cola de entrada& lo que

    puede resultar en una carga general innecesaria y en la reducción de la $elocidad del

    procesamiento de las tareas incluidas en el sistema"• #a tercera opción es compactar despu?s de un lapso preestablecido" Si el periodo

    elegido es demasiado bre$e& el sistema utilizara más tiempo en la compactación que

    en procesamiento" Si es demasiado grande& se acumularan demasiadas tareas en la

    cola de espera y se perderán las $entajas de las compactación"

    2J) l E$iguiente ajuste% es un algoritmo de asignación que lle$a el seguimiento de la

    ltima partición asignada y cuando llega una nue$a tarea empieza a buscar a partir de dic@o

    punto"

    #a $entaja de este algoritmo es que disminuye el tiempo para encontrar un bloque de

    memoria libre porque no recorre la lista de bloques desde el principio"

    21) #as * t?cnicas de asignación de memoria tienen ( puntos en comn: requiere que la

    totalidad del programa 1N quede cargado en memoria 2N pueden almacenar juntos (N

    permanezca en la memoria @asta que se complete la tarea"

    -