Sop U-3 Planificación de procesos Flashcards

1
Q

Tipos de planificación

A

Planificación a largo plazo → Determina cuándo se acepta un nuevo proceso en el sistema.
Se controla el grado de multiprogramación.
Es el planificador que se ejecuta con menor frecuencia.
✓Planificación a mediano plazo → Relacionada con la función de intercambio (swapping)
Decide en qué momento se deben suspender y activar los procesos
✓Planificación a corto plazo → Seleccionar el proceso que está en estado de listo
Es el planificador que se ejecuta con mayor frecuencia

→ Se ejecuta ante los siguientes sucesos:Interrupciones de relojInterrupciones de entrada-salidaLlamadas al sistema

Imagina una fábrica de juguetes:

Fábrica: Es el sistema operativo.
Juguetes: Son los procesos.
Líneas de producción: Son los diferentes estados de un proceso (listo, en ejecución, bloqueado).
Tipos de planificación:

Planificación a largo plazo (aceptación de trabajos): Es como decidir qué juguetes se van a producir en la fábrica. Se decide qué pedidos (procesos) se aceptan y cuándo se empezarán a fabricar. Es una decisión que se toma con menos frecuencia, como planificar la producción de un nuevo tipo de juguete.
Planificación a mediano plazo (swapping): Es como decidir qué juguetes se quedan en la línea de producción y cuáles se guardan en un almacén. Si hay muchos juguetes en producción y la fábrica se satura, algunos juguetes se guardan en el almacén para liberar espacio y poder continuar fabricando otros. Más tarde, cuando haya espacio, se sacan los juguetes del almacén y se vuelven a poner en la línea de producción.
Planificación a corto plazo (despacho): Es como decidir qué juguete se fabrica en cada momento. Se elige el juguete que está listo para ser fabricado y se asigna a una línea de producción libre. Esta decisión se toma muy a menudo, ya que los juguetes van terminándose y se necesitan asignar nuevos a las líneas de producción.
¿Cuándo se toman estas decisiones?

Interrupciones de reloj: Es como un reloj que marca el tiempo y que cada cierto tiempo hace una pausa en la producción para revisar si todo va bien y si hay que tomar alguna decisión, como cambiar de juguete o guardar alguno en el almacén.
Interrupciones de entrada-salida: Es como cuando una máquina de la fábrica se rompe y hay que esperar a que la reparen. Mientras tanto, se puede aprovechar para fabricar otro juguete en otra línea de producción.
Llamadas al sistema: Es como cuando un trabajador de la fábrica necesita pedir herramientas o materiales para continuar con su trabajo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Criterios de planificación

A

oEquidad
oEquilibrio → mantener ocupadas todas las partes del sistema
oUtilización del procesador
oMinimizar el tiempo de respuesta → procesos interactivos
oMinimizar el tiempo de retorno → procesos por lotes
oPrevisibilidad → independencia con respecto a la carga del sistema
oMaximizar el rendimiento

Imagina una fábrica de pizzas:

Fábrica: Es el sistema operativo.
Pizzas: Son los procesos.
Horno: Es el procesador.
Cocineros: Son los planificadores.
Criterios de planificación:

Equidad: Cada pizza (proceso) debe tener la oportunidad de ser cocinada (ejecutada). Es como si cada cliente tuviera el mismo derecho a que su pizza sea preparada.
Equilibrio: Todos los cocineros (procesadores) deben estar ocupados cocinando pizzas. No queremos que un cocinero esté ocioso mientras otro está sobrecargado.
Utilización del procesador: El horno (procesador) debe estar funcionando la mayor parte del tiempo. Es como si la fábrica quisiera maximizar la producción de pizzas.
Minimizar el tiempo de respuesta: Para las pizzas que se comen en el momento (procesos interactivos), es importante que estén listas lo antes posible. Es como cuando pides una pizza para llevar y quieres que esté lista en 15 minutos.
Minimizar el tiempo de retorno: Para las pizzas que se encargan con anticipación (procesos por lotes), es importante que estén listas en la fecha acordada. Es como cuando pides una pizza para una fiesta y quieres que esté lista a tiempo.
Previsibilidad: El tiempo que tarda en cocinarse una pizza debe ser más o menos el mismo, independientemente de cuántas pizzas haya en la fábrica.
Maximizar el rendimiento: La fábrica debe producir la mayor cantidad de pizzas posibles en el menor tiempo.
¿Cómo se aplican estos criterios en la fábrica de pizzas?

Equidad: Se puede rotar a los cocineros para que cada uno cocine un poco de cada pizza.
Equilibrio: Se puede asignar una cantidad similar de pizzas a cada cocinero.
Utilización del procesador: Se puede utilizar un horno más grande o agregar más hornos si es necesario.
Minimizar el tiempo de respuesta: Se pueden priorizar las pizzas que se piden para llevar.
Minimizar el tiempo de retorno: Se pueden programar las pizzas que se piden con anticipación para que estén listas a tiempo.
Previsibilidad: Se pueden utilizar recetas estandarizadas y tiempos de cocción fijos.
Maximizar el rendimiento: Se pueden utilizar ingredientes de alta calidad, optimizar las recetas y mejorar la organización de la fábrica.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Tipos de algoritmos de planificación

A

✓No apropiativo: Escoge al proceso que se ejecutará, y luego simplemente le permite ejecutarse hasta que se bloquee, o hasta que termine de ejecutarse.
✓Apropiativo: el proceso se ejecuta durante un tiempo establecido (quantum). Si al término de este tiempo el proceso continúa en ejecución, se le suspende y el planificador escoge otro proceso para que se ejecute. Este tipo requiere que haya unainterrupción de reloj al término del intervalo de tiempo.
Algoritmos de Planificación
→Por lotes: Primero en entrar, primero en salir.
Primero el trabajo más corto.
Menor tiempo restante.

magina una cola en una pastelería:

Cola: Representa la lista de procesos esperando para ser ejecutados.
Pastelero: Representa el procesador.
Pasteles: Representan los procesos.
Tipos de algoritmos de planificación:

No apropiativo: Es como si el pastelero atendiera a cada cliente (proceso) en el orden en que llegan. Una vez que empieza a preparar un pastel (proceso), lo termina antes de pasar al siguiente. No importa cuánto tarde el pastel en estar listo, el pastelero no lo interrumpe.
Apropiativo: Es como si el pastelero tuviera un reloj que suena cada cierto tiempo. Cada vez que suena el reloj, el pastelero deja de preparar el pastel que está haciendo y empieza a preparar el siguiente en la cola. Si el pastel anterior aún no está listo, se vuelve a la cola y se continúa más tarde.
Algoritmos de planificación específicos:

Primero en entrar, primero en salir (FIFO): Es como si los clientes fueran atendidos por orden de llegada. El primer cliente en hacer el pedido es el primero en recibir su pastel.
Primero el trabajo más corto (SJF): Es como si el pastelero priorizara los pasteles más pequeños (procesos más cortos). Si hay un pastel muy pequeño y otro muy grande, el pastelero preparará primero el pequeño.
Menor tiempo restante: Es como si el pastelero siempre estuviera trabajando en el pastel que le falta menos para estar listo. Si tiene dos pasteles a medio hacer, se centrará en el que esté más avanzado.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

First Come, First Served (FCFS, Primero en llegar, primero en ser atendido)

A

Este algoritmo es no apropiativo, fácil de entender y programar.
La CPU se asigna a los procesos en el orden que la solicitan.
Cuando el primer trabajo entra al sistema, se le inicia de inmediato y se le permite ejecutar todo el tiempo que desee.
A medida que llegan otros trabajos, se les coloca al final de la cola.
Cuando se bloquea el proceso en ejecución, se ejecuta el primer proceso de la cola. Si un proceso bloqueado vuelve a estar listo, se le coloca al final de la cola

Imagina una taquilla de cine:

Taquilla: Representa el procesador.
Personas: Representan los procesos.
Comprar una entrada: Representa solicitar la CPU.
¿Cómo funciona el algoritmo FCFS en la taquilla?

Primero en llegar, primero en ser atendido: La primera persona que llega a la taquilla es la primera en comprar su entrada.
No hay interrupciones: Una vez que una persona está siendo atendida, el taquillero no la interrumpe para atender a otra.
Cola de espera: Si hay más personas esperando, forman una fila. La siguiente persona en ser atendida es la que está al frente de la fila.
Si alguien se va y vuelve: Si una persona se va de la fila y luego regresa, se coloca al final de la fila.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Shortest Job First (SJF, Trabajo más corto primero)

A

Algoritmo no apropiativo.
Si hay varios trabajos de la misma importancia en la cola de entrada, el planificador escoge el trabajo más corto primero.
Si se ejecutan primero los más cortos, el tiempo de espera promedio de los procesos es el menor posible.
El SO puede ejecutar este proceso solo si estos procesos han sido ejecutados previamente, así se conoce el tiempo a emplear.

Imagina una imprenta:

Imprenta: Representa el procesador.
Trabajos de impresión: Representan los procesos.
Tamaño del trabajo: Representa la duración de un proceso.
¿Cómo funciona el algoritmo SJF en la imprenta?

Trabajo más corto primero: El impresor siempre elige imprimir primero el trabajo más pequeño (que requiera menos tiempo).
No hay interrupciones: Una vez que el impresor empieza a imprimir un trabajo, lo termina antes de pasar al siguiente.
Cola de espera: Si hay varios trabajos esperando, se forman en una cola. El siguiente trabajo en ser impreso es el más corto de la cola.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Shortest Remaining Time First (SRTF, Tiempo restante más corto a continuación)

A

Esta es una versión apropiativa.
Cuando llega un trabajo nuevo, su tiempo total se compara con el tiempo que resta para que el proceso actual termine de ejecutarse.
Si es menor, el proceso actual se suspende y se pone en marcha el trabajo recién llegado.
La ventaja de este esquema es que permite que trabajos cortos nuevos obtengan un buen servicio.
→ Interactivos: Planificación Round Robin
Planificación por prioridad
Colas múltiples
Planificación garantizada

Imagina una peluquería:

Peluquero: Representa el procesador.
Clientes: Representan los procesos.
Corte de pelo: Representa la ejecución de un proceso.
Tiempo de espera: Representa el tiempo restante de un proceso.
¿Cómo funciona el algoritmo SRTF en la peluquería?

Cliente con menos tiempo: El peluquero siempre atiende primero al cliente que tiene menos tiempo de espera para terminar su corte de pelo.
Interrupciones: Si llega un nuevo cliente que necesita un corte de pelo muy rápido, el peluquero puede interrumpir al cliente que está siendo atendido (si el nuevo cliente necesita menos tiempo para terminar).
Cola de espera: Los clientes esperan en una cola hasta que el peluquero esté disponible.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Round Robin

A

Método más antiguo, sencillo y equitativos muy utilizado.
A cada proceso se le asigna un quantum. Cuando un proceso consume su quantum, se le coloca al final de la lista.
Unquantum demasiado corto reduce la eficiencia de la CPU, pero uno demasiado largo puede reducir la rapidez de respuesta a solicitudes interactivas cortas.

Imagina una rueda de la fortuna:

Rueda de la fortuna: Representa el procesador.
Cabinas: Representan los procesos.
Vuelta completa: Representa un quantum de tiempo.
¿Cómo funciona el algoritmo Round Robin en la rueda de la fortuna?

Todos suben: Cada cabina (proceso) tiene la oportunidad de dar una vuelta completa (ejecutarse durante un quantum).
Vuelta por vuelta: Una vez que una cabina termina su vuelta, pasa al final de la fila y espera su siguiente turno.
Velocidad de la rueda: Si la rueda gira muy rápido (quantum muy corto), las cabinas no tendrán mucho tiempo para disfrutar del paseo (los procesos no se ejecutarán mucho). Si la rueda gira muy lento (quantum muy largo), las cabinas que están al final de la fila tendrán que esperar mucho para subir (los procesos interactivos tendrán que esperar mucho).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Planificación por prioridades

A

A cada proceso se le asigna una prioridad, y el proceso listo que tenga mayor prioridad es el que se ejecuta.
Puede ser apropiativo o no.
Las razones para asignar la prioridad dependen de si son:
→ Procesos de tiempo real:No deben sufrir demoras porque afectan su funcionamiento normal.
→ Procesos normales: Interesa la tarea que se realice, sin importar el tiempo.

Imagina una sala de emergencias en un hospital:

Médicos: Representan el procesador.
Pacientes: Representan los procesos.
Prioridad: La gravedad de la enfermedad del paciente.
¿Cómo funciona la planificación por prioridades en la sala de emergencias?

Paciente más grave primero: El médico siempre atiende primero al paciente más grave, es decir, al que tiene mayor prioridad.
Prioridades: Los pacientes se clasifican según la gravedad de su enfermedad: críticos, urgentes, no urgentes.
Interrupciones: Si llega un paciente crítico, el médico puede interrumpir la atención a otro paciente para atender al nuevo paciente.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Multi Level Queues (MLQ, colas múltiples)

A

Colas de diferentes números de prioridad.
Un proceso de una lista no se puede pasar a otra.
Hay que definir la cantidad de niveles, la prioridad de los niveles, y porque un proceso entra a una lista y no a otra, y qué algoritmo se usa para cada cola.
Su objetivo es reducir el intercambio

Imagina un hospital con diferentes salas de espera:

Hospital: Representa el sistema operativo.
Salas de espera: Representan las diferentes colas de prioridad.
Pacientes: Representan los procesos.
Médicos: Representan el procesador.
¿Cómo funciona el sistema de colas múltiples en el hospital?

Diferentes niveles de urgencia: Hay salas de espera para pacientes críticos (alta prioridad), pacientes urgentes (media prioridad) y pacientes no urgentes (baja prioridad).
No se cambia de sala: Una vez que un paciente es asignado a una sala, no puede cambiar a otra.
Prioridad de atención: El médico siempre atiende primero a los pacientes de la sala con mayor prioridad.
Algoritmo por sala: Cada sala puede tener su propio sistema de atención (por ejemplo, FIFO, SJF).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Planificación garantizada

A

Si hay N usuarios trabajando, el SO me garantiza que me va a asignar 1/N porcentaje de microprocesador.
Se implementa en los sistemas de tiempo real.

Cada cierto tiempo calcula la relación existente entre la CPU utilizada y la prometida, para saber cuál priorizo.

Imagina una pizza y un grupo de amigos:

Pizza: Representa el procesador.
Amigos: Representan los procesos.
Porciones: Representan el tiempo de CPU asignado a cada proceso.
¿Cómo funciona la planificación garantizada con la pizza?

Porciones iguales: Si hay 4 amigos, cada uno tiene derecho a 1/4 de la pizza (25%).
Control de las porciones: A medida que los amigos van comiendo, se verifica que cada uno esté recibiendo su porción justa. Si alguien se está comiendo más de lo que le corresponde, se le reduce la cantidad de pizza que puede tomar en el futuro.
Ajustes: Si llega un nuevo amigo, se recalculan las porciones para que todos tengan la misma cantidad.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly