Diferencia entre la programación preventiva y no preventiva en el sistema operativo

Tabla de contenido:

Diferencia entre la programación preventiva y no preventiva en el sistema operativo
Diferencia entre la programación preventiva y no preventiva en el sistema operativo

Video: Diferencia entre la programación preventiva y no preventiva en el sistema operativo

Video: Diferencia entre la programación preventiva y no preventiva en el sistema operativo
Video: ✅Tipos de mantenimiento, definición e importancia.👁‍🗨 Preventivo, correctivo, predictivo. 2024, Mes de julio
Anonim

Diferencia clave: programación preventiva frente a no preventiva en el sistema operativo

Un proceso es un programa en ejecución. Una computadora debe realizar muchas tareas al mismo tiempo. Por lo tanto, la CPU debe obtener procesos y ejecutarlos. A veces es necesario ejecutar algunos procesos que los otros procesos. En ese momento, el proceso en ejecución se interrumpe y la CPU se asigna al nuevo proceso. Una vez completada la tarea, la CPU se vuelve a asignar al proceso anterior. La programación según este mecanismo se conoce como programación preventiva. Si el proceso en ejecución no se puede interrumpir y es obligatorio ejecutar el proceso en ejecución, entonces se conoce como programación no preventiva. Este artículo analiza la diferencia entre la programación preventiva y no preventiva en un sistema operativo. La programación preventiva es el mecanismo de programación de procesos mediante el cual un proceso puede ser interrumpido por otro proceso en medio de su ejecución. La programación no preventiva es el mecanismo de programación de procesos a través del cual un proceso comienza a ejecutarse solo después de que finaliza el proceso anterior. Esa es la diferencia clave entre la programación preventiva y no preventiva en el sistema operativo.

¿Qué es la programación preventiva en el sistema operativo?

Round Robin Scheduling es un ejemplo de programación preventiva. Cada proceso obtiene una pequeña cantidad de tiempo de CPU. Suele ser de 10 a 100 milisegundos. Esta pequeña unidad de datos también se conoce como cuanto de tiempo. Una vez transcurrido este tiempo, el proceso se reemplaza y se agrega al final de la cola de procesos listos. Suponga que hay 4 procesos como P1, P2, P3 y P4. Los tiempos de ráfaga de CPU en milisegundos son los siguientes. El cuanto de tiempo es 20.

Diferencia entre la programación preventiva y no preventiva en el sistema operativo
Diferencia entre la programación preventiva y no preventiva en el sistema operativo
Diferencia entre la programación preventiva y no preventiva en el sistema operativo
Diferencia entre la programación preventiva y no preventiva en el sistema operativo

Figura 01: Ejemplo de programación Round Robin

El proceso P1 se ejecuta hasta las 20. Quedan otros 33ms. Luego se ejecuta el P2. Como el cuanto de tiempo es 20 y el tiempo requerido P2 es 17 ms, P2 se ejecutará durante 17 ms. Entonces, el proceso P2 se completa. Entonces la oportunidad se le da a P3. Se ejecutará durante 20 ms. El resto son 48ms. Luego, el P4 se ejecutará durante 20 ms. Tiene 4ms para completar el proceso total. Nuevamente, el P1 se ejecutará durante 20 ms. Tiene otros 13ms para completar el proceso. El cambio se da a P3. Se ejecutará durante 20 ms, y tiene otros 28 ms para terminar por completo. El P4 se ejecuta. Solo tiene 4ms. Por lo tanto, P4 completa la ejecución. P2 y P4 ya han terminado. Los procesos restantes son P1 y P3. La oportunidad se le da a P3. Tenía 13 ms para completarse, por lo que se completa. Ahora el único proceso restante es P3. Tiene 28ms para completar. Entonces P3 se ejecutará durante 20 ms. El resto son 8ms. Todos los demás procesos ya han completado la ejecución. Por lo tanto, nuevamente se ejecutará el resto de 8ms de P3. Del mismo modo, cada proceso tiene la oportunidad de ejecutarse.

¿Qué es la programación no preventiva en el sistema operativo?

La programación por orden de llegada (FCFS) se puede tomar como un ejemplo de programación no preventiva. El proceso que solicita primero se asigna primero a la CPU. Esta programación se gestiona fácilmente mediante la cola Primero en entrar, primero en salir (FIFO). Si hay procesos que llegaron en orden como P1, P2 y P3, entonces la oportunidad se le da primero a P1. Una vez completado, P2 se ejecutará. Cuando P2 se completa, el P3 se ejecutará. Suponga que hay 3 procesos como P1, P2 y P3 con tiempos de ráfaga de CPU en milisegundos de la siguiente manera.

Diferencia clave entre la programación preventiva y no preventiva en el sistema operativo
Diferencia clave entre la programación preventiva y no preventiva en el sistema operativo
Diferencia clave entre la programación preventiva y no preventiva en el sistema operativo
Diferencia clave entre la programación preventiva y no preventiva en el sistema operativo

Figura 02: Ejemplo de programación FCFS

Según lo anterior, se ejecutará P1. Una vez completado, el proceso P2 se ejecuta durante 3ms. Ahora el proceso restante es P3. Entonces se ejecutará. El tiempo de espera para P1 es cero. El proceso P2 tuvo que esperar 24 ms y el proceso P3 tuvo que esperar 27 ms. Si los procesos llegaron en orden P2, P3 y P1, entonces P2 se completará primero. El próximo P3 se completará y, finalmente, se completará el P1.

¿Cuál es la similitud entre la programación preventiva y no preventiva en el sistema operativo?

Tanto la programación preventiva como la no preventiva en el sistema operativo son mecanismos para programar procesos en una computadora

¿Cuál es la diferencia entre la programación preventiva y no preventiva en el sistema operativo?

Programación preventiva frente a no preventiva en OS

La programación preventiva es el mecanismo de programación de procesos mediante el cual un proceso puede ser interrumpido por otro proceso en medio de su ejecución. La programación no preventiva es el mecanismo de programación de procesos a través del cual un proceso comienza a ejecutarse solo después de que finaliza el proceso anterior.
Interrupción del proceso
En la programación preventiva, los procesos pueden interrumpirse. En la programación no preventiva, los procesos pueden interrumpirse.
Uso de CPU
En la programación preventiva, la utilización de la CPU es mayor que en la programación no preventiva. En la programación no preventiva, la utilización de la CPU es mínima en comparación con la programación preventiva.
Flexibilidad
La programación preventiva es flexible. La programación no preventiva no es flexible.

Resumen: programación preventiva frente a no preventiva en OS

Hay múltiples procesos ejecutándose en una computadora. Cuando se ejecuta cada proceso, la CPU se asigna a ese proceso específico. A veces, es necesario detener la ejecución del proceso actual y dar prioridad a otro proceso. Los mecanismos de programación de procesos pueden ser preventivos o no preventivos. La programación preventiva es el mecanismo de programación de procesos a través del cual un proceso puede ser interrumpido por otro proceso en medio de su ejecución. La programación no preventiva es el mecanismo de programación de procesos a través del cual un proceso comienza a ejecutarse solo después de que finaliza el proceso anterior. Esta es la diferencia entre la programación preventiva y no preventiva en OS.

Descargue el PDF de la programación preventiva frente a la no preventiva en OS

Puede descargar la versión en PDF de este artículo y usarla sin conexión según la nota de la cita. Descargue la versión en PDF aquí: Diferencia entre la programación preventiva y no preventiva en OS

Recomendado: