Sie sind auf Seite 1von 16

Sistemas Operativos II, II Parcial

Algoritmo básico de reemplazo


 Política óptima: Esta seleccionada para reemplazar la página que tiene
que esperar la mayor cantidad de tiempo hasta que se produzca la
referencia siguiente, es posible de implementar porque requiere que el
sistema operativo tenga un conocimiento exacto de lo que ha sucedido.

 Política del usado menos recientemente (LRU – Less Recently Used)


1) Esta reemplazada la página de memoria que no ha sido
referenciada desde hace más tiempo.
2) Debido al principio de cercanía esta sería la página con menos
probabilidad de ser referenciada en un futuro cercano.
3) Una solución sería etiquetar cada página con el momento de su
única referencia.

 Política primero en entrar primero en salir (FIFO – First In First


Out)
1) Esta trata los marcos asignados a un proceso como un buffer
circular donde las páginas se suprimen de la memoria según la
técnica de turno rotatorio (Round – Robin).
2) Es la política de reemplazo más sencilla de implementar.
3) Se reemplaza la página que ha estado más tiempo en memoria,
estas páginas pueden necesitarse de nuevo en un plazo de tiempo
corto.

 Política de reloj
1) Requiere asociar un bit a cada marco denominado bit de uso.
2) Cuando se carga una página por primera vez en un marco de
memoria el bit de uso a dicho marco se pone a cero y cuando hace
referencia a la página posteriormente el bit de uso se pone a uno,
así cuando llega el momento de reemplazar a una página el primer
marco encontrado con el bit de uso a cero es reemplazo durante la
búsqueda para realizar el reemplazo a cada bit de uso que está en
uso y así cambiarlo a cero.
Figura 8.16
 Política almacenamiento intermedio de páginas: Esta es donde la pista
de la página reemplazada se asigna a una de las dos listas siguientes.
1) La lista de páginas libres si la página no ha sido modificada.
2) La lista de páginas modificadas.

 Políticas de vaciado
1) Vaciado por demanda: Es una página que se describirá en la
memoria secundaria solo cuando haya sido escogida para
reemplazarse.
2) Vaciado previo: es la que se escribe las páginas modificadas por
lotes.
3) Orientada al almacenamiento intermedio de páginas: donde el
conjunto residente es la mejor manera de incorporar las listas de
páginas reemplazadas, modificadas y no modificadas.

 Control de carga: Determina el proceso o los procesos que pueden estar


en la memoria principal, cuando hay pocos procesos residentes en la
memoria, habrán muchas ocasiones en la que todos los procesos estén
bloqueados y se gastara mucho tiempo en el intercambio, cuando hay
muchos procesos residentes el resultado será Hiperpaginación.

 Suspensión de procesos
1) Son los procesos con la prioridad más baja.
2) Los procesos con falló de páginas no tienen su conjunto de trabajo
en la memoria principal por lo que quedara bloqueada de todas
formas.
3) El último proceso activado es el proceso con menos posibilidades
de tener su conjunto de trabajo residente en la memoria principal.
4) El proceso con conjunto residente más pequeño es el proceso que
necesita menor tiempo futuro para cargar su conjunto residente.
5) El proceso mayor se obtiene porque tiene mayor cantidad de
marcos libres.
6) Los procesos con mayor ventanas de ejecución restante.
Figura 8.22

Figura 8.23
Planificación monoprocesadores
 Proceso de planificación
1) Tiempo de respuesta.
2) Productividad.
3) Eficiencia del procesador.

Tipos de planificación
 Planificación a largo plazo: esta es la decisión de añadir procesos al
conjunto de procesos a ejecutar.

 Planificación a medio plazo: esta es la decisión de añadir procesos al


conjunto de procesos que se encuentra parcial o completamente en
memoria principal.

 Planificación a corto plazo: decisión sobre que procesos disponibles


serán ejecutados en el procesador.

Figura 9.1
 Planificación de Entrada / Salida (E/S): la decisión es sobre que
solicitud de E/S pendientes será tratada por el dispositivo de entrada y
salida disponible.

Características de los tipos de planificación.

 Planificación a largo plazo:


1) Primero determina cuales son los programas emitidos en el
sistema.
2) Controla el grado de multiprogramación.
3) Cuanto más procesos se crean menor es el porcentaje de tiempo en
el que cada proceso se puede ejecutar.

 Planificación a medio plazo:


1) Forma parte de la función de intercambio.
2) Se basa en la necesidad de controlar el grado de
multiprogramación.

 Planificación de corto plazo o distribuidor (E/S):


1) Se ejecuta más frecuentemente.
2) Se ejecuta cuando ocurren sucesos como ser:
 Las interrupciones de reloj.
 Interrupciones de E/S.
 Llamadas al sistema operativo.
 Señales y replicas.

Criterios para la planificación a corto plazo:


1) Orientado al usuario: es donde tenemos un tiempo de respuesta que va
a ser el tiempo de respuesta transcurrido desde que se emite una solicitud
hasta que la respuesta llega a la salida.
2) Orientado al sistema: se refiere al uso efectivo y eficiente del
procesador.
3) Relativo al rendimiento del sistema: lo primero es lo cuantitativo y está
relacionado a cuantos procesos y trabajos voy a atender y en qué tiempo
los voy a atender, la segunda nos dice que de acuerdo al sistema operativo
pueden evaluarse fácilmente por medio del tiempo de respuesta y la
productividad.
4) Los No relativos al rendimiento del sistema: lo primero es lo
cualitativo, se refiere a la calidad de los procesos; y la segunda es la
previsibilidad, ser previsible.

Prioridades en la planificación
 Esta debe ser relativa al rendimiento del sistema donde el planificador
seleccionara siempre un proceso de mayor prioridad antes que los de
menor prioridad.
 Tiene múltiples colas de listas para representar cada nivel de prioridad.
 Los procesos de prioridad más baja pueden sufrir inanición, lo que
permitirá que un proceso cambie su prioridad en función de su edad o su
historial de ejecución.

Inanición
Problema relacionado con los sistemas multitarea donde a un proceso o un hilo
de ejecución se le deniega siempre el acceso a un recurso compartido, sin este
recurso la tarea o hilo a ejecutar no puede ser nunca finalizado.

Figura 9.3
Figura 9.4

Modos de decisión:
 No preferentes: una vez que el proceso pasa al estado de ejecución
continua ejecutando hasta que termina o se bloquea en espera de una
entrada o salida.
 Preferentes: el proceso que se está ejecutando actualmente puede ser
interrumpido y pasado al sistema de listos, por el sistema operativo,
además los preferentes permiten dar un mejor servicio ya que evita que
un proceso pueda manipular y monopolizar el procesador durante mucho
tiempo.

Primero en llegar los primeros en salir (FCFS – First Come Firts Served)
 Puede que un proceso corto tenga que esperar mucho tiempo antes que
pueda ser ejecutado.
 Cada proceso se incorpora a una cola de listos.
 Cuando un proceso actual cesa su ejecución se selecciona el proceso más
antiguo de la cola.
 Favorece a los procesos con cargo de CPU ya que los procesos con carga
de entrada y salida tienen que esperar a que completen los procesos con
carga de CPU.
 Preferencia siempre a los del sistema operativo antes del usuario.

Turno rotatorio:
 Utiliza la apropiación independiente de un reloj.
 Se determina una cantidad de tiempo que permite a un proceso utilizar el
procesador durante este periodo de tiempo.
 Periódicamente va a interrumpir el proceso o generara una interrupción
de reloj cuando se genera una petición el proceso que está en ejecución
se sitúa en la cola de listos y así selecciona el siguiente trabajo.
 Se conoce también como fracciones de tiempo.

Menor tiempo restante


Esta es una versión preferente de la política de primero el proceso más corto y
esta se debe de estimar antes de todo el tiempo de proceso, entonces será
primero el de mayor tasa de respuesta y la taza se va a estimar de la siguiente
manera:
𝑇𝑖𝑒𝑚𝑝𝑜 𝑐𝑜𝑛𝑠𝑢𝑚𝑖𝑑𝑜 𝑒𝑠𝑝𝑒𝑟𝑎𝑛𝑑𝑜 𝑎𝑙 𝑝𝑟𝑜𝑐𝑒𝑠𝑎𝑑𝑜𝑟 +
𝑡𝑖𝑒𝑚𝑝𝑜 𝑑𝑒 𝑠𝑒𝑟𝑣𝑖𝑐𝑖𝑜 𝑒𝑠𝑝𝑒𝑟𝑎𝑑𝑜
𝑇𝑎𝑧𝑎 =
𝑡𝑖𝑒𝑚𝑝𝑜 𝑑𝑒 𝑠𝑒𝑟𝑣𝑖𝑐𝑖𝑜 𝑒𝑠𝑝𝑒𝑟𝑎𝑑𝑜

Realimentación
Esta política penaliza a los trabajos que han estado ejecutándose durante más
tiempo, desventaja de esta política es que no se conoce el tiempo de ejecución
restante del proceso.

Planificación por reparto equitativo:


 Las aplicaciones de los usuarios pueden originarse en forma de varios
procesos o hilos.
 Al usuario le interesa saber cómo se comporta la aplicación.
 Es necesario poder tomar decisiones de aplicación en función de los
grupos de procesos.

Figura 9.10
Figura 9.16
Bandas: llevan un orden decreciente de prioridades y este orden se enlista de
la siguiente manera:
1) Intercambiar, es subsecuente entre memoria y ejecutado por el
procesador.
2) El control de dispositivos de entradas y salidas por bloques y este es
ejecutado y controlado por el sistema operativo de acuerdo a las
necesidades.
3) Gestión de archivos por medio de la ejecución de procesos del sistema
operativo.
4) Control de dispositivos E/S de caracteres, este es ejecutado por la
memoria cache.
5) Procesos de usuario, son ejecutados por el procesador en el orden que
entran.

Planificación de multiprocesadores en tiempo real


Clasificación de los sistemas multiprocesadores:
1) Multiprocesadores débilmente acoplados: es donde cada procesador
tiene su propia memoria principal y sus propios canales de estradas y
salidas.
2) Multiprocesador especializados funcionalmente: estos son
procesadores de entradas y salidas controlados por el procesador
principal.
3) Multiprocesadores fuertemente acoplados: es donde los procesadores
comparten una memoria en común y son controlados por el sistema
operativo.

Planificación clásica en UNIX


 Emplea realimentación multinivel usando turno – rotatorio en cada una
de sus colas de prioridad.
 La prioridad de cada proceso se calcula de acuerdo a cada segundo que
transcurre.
 La prioridad base divide los procesos en bandas fijas de prioridad donde
se utiliza un factor de ajuste para impedir que el proceso salga fuera de la
banda que tiene asignada.
Paralelismo independiente:
 Donde una aplicación o trabajo se realiza por separado no existe una
sincronización, hay más de un procesador disponible donde el tiempo de
respuesta a los usuarios será menor.

Paralelismo de grano grueso y muy gruesos:


 La sincronización de los procesos entre ellos es muy burda esto es una
ventaja para aquellos procesos concurrentes que se ejecutan en un mono-
procesador multiprogramado puede verse respaldado por un
multiprocesador con escasos cambios.

Paralelismo de grano medio:


 Un proceso paralelo o varias tareas en una única aplicación conforman
un paralelismo de grano medio dirigido a un multiprocesador.
 Una sola aplicación es un conjunto de hilos y estos hilos interactúan de
forma muy frecuente.

Paralelismo de grano fino:


 Las aplicaciones se ejecutan de manera paralela.
 Los campos de los multiprocesadores son muy especializados y
fragmentados.

Planificación de multiprocesadores
Esta será la manera de llevar y asignar los procesos a los procesadores de
acuerdo a las prioridades del sistema operativo, aquí es donde el programador
con el uso de la multiprogramación en los procesadores los efectuara
individualmente y habrá una expedición real de los procesos, con la
programación de multiprocesadores en tiempo real ocurren 3 características:
1) La asignación de procesos a los procesadores.
2) Uso de multiprogramación en los multiprocesadores individuales.
3) Salidas en tiempo real de los procesos.
Asignación de los procesos a los procesadores:
Aquí se gestionaran los procesadores como un recurso reservado y asignara a
los procesos por demanda donde se asigna un proceso a un procesador en forma
permanente y existen 3 casos que se pueden dar en esta asignación:
1) Hay sobrecargar menor.
2) Una cola de corto plazo dedicada para cada procesador.
3) Un procesador puede estar desocupado mientras otro procesador tiene
procesos o trabajos pendientes.

En cualquiera de estos 3 casos se verá asignada a la cola global, es donde los


procesos ejecutados caerán directamente de esta cola al procesador.

Arquitectura Maestro / Esclavo:


Las funciones claves del núcleo siempre ejecuta en un determinado procesador,
además el maestro es el responsable de la planificación y el esclavo solo envía
solicitud del servicio que necesita al maestro.

 Desventajas:
 Un fallo en el maestro hace caer todo el sistema,
independientemente que los procesadores en orden esclavo estén
funcionando bien.
 El maestro puede llegar a ser un cuello de botella del rendimiento.

Arquitectura simétrica:
El sistema operativo puede ejecutarse en cualquier procesador, además cada
procesador se auto planifica y como resolución complica al sistema operativo
ya que debe de asegurarse que 2 procesadores no seleccionen el mismo proceso.

Planificación de procesos:
 Tiene una cola única para todos los procesadores.
 Pueden haber varias colar pero se someterán a las prioridades.
 Todas las colas alimentan una reserva común de procesadores.
 El algoritmo especifico de planificación es mucho menos importante con
dos procesadores que con uno.
Hilos
1) La ejecución se separa del resto de la definición de un proceso cuando
una aplicación puede implementarse.
2) Como un conjunto de hilos que coopera y ejecutan concurrentemente en
el mismo espacio de dirección.
3) Los hilos que se ejecutan simultáneamente en distintos procesadores
posibilitan un aumento drástico del rendimiento del procesador.

Planificación de hilos para multiprocesadores:


 Reparto por carga: los procesos no se asignan a un procesador en
particular.
Ventajas:
1) Uniformidad, la carga se distribuye uniformemente entre los
procesadores.
2) No centralizado, no es necesario un planificador centralizado.
3) Colas globales, utiliza colas globales.
Desventajas:
1) Exclusión mutua, la cola central necesita exclusión mutua, puede
convertirse en un cuello de botella si muchos procesadores buscan
trabajos al mismo tiempo.
2) Improbabilidad, es improbable que los hilos expulsados reanuden
su ejecución en el mismo procesador ya que el uso de la cache será
menos eficiente.
3) No acceso, si todos los hilos están en la cola global de un programa
no conseguirán acceder a los procesadores al mismo tiempo.

 Planificación por grupos: Se planifica un conjunto de hilos a fines para


su ejecución en un conjunto de procesadores al mismo tiempo.
Ventajas:
1) Es útil para aplicaciones cuyo rendimiento se degrada seriamente.
2) Cuando alguna parte de la aplicación no se está ejecutando.
3) En la planificación simultánea de hilos a finos se hará para no estar
procesando hilos que no tengan la misma finalidad.
Desventajas:
1) Los hilos necesitan sincronizarse mutuamente.
 Asignación dedicada de procesadores: aquí es donde se asignan hilos
a un procesador en específico.
Ventajas:
1) Cuando se planifica una aplicación se asigna a cada uno de sus
hilos a un procesador en específico.
Desventajas:
1) Algunos procesadores pueden quedar desocupados.
2) No hay multiprogramación de procesadores.

 Planificación dinámica: el número de hilos en un programa se puede


cambiar en el curso de ejecución.
Ventajas:
1) La aplicación permite cambiar dinámicamente el número de hilos
de un proceso.
2) El sistema operativo ajusta a carga para mejorar la utilización del
procesador.
3) Asigna los procesadores desocupados.
4) Las nuevas llegadas pueden ser asignadas a un procesador.
5) Quitándosele a un proceso que tenga más de un proceso asignado.
6) Se asignara un procesador a las nuevas llegadas antes de que se den
aplicación que se estén ejecutando.
Desventajas:
1) La petición de un proceso debe estar pendiente hasta que un
procesador esté disponible.
2) No se sabe exactamente donde reside el hilo de cualquier proceso.

Sistemas a tiempo real (STR)


La exactitud de estos sistemas no depende solo del resultado lógico de un
cálculo sino también del instante en que se produzca el resultado. Las tareas o
procesos intentan controlar o reaccionar ante sucesos que tienen lugar en el
mundo exterior de estos sucesos se producen en tiempo real y el proceso a su
vez debe poder ir al paso de ellos.

Das könnte Ihnen auch gefallen