Sistemas operativos modernos
Proceso actual Siguiente proceso Proceso actual tar 1 ms en conmutar los procesos. El 20% del tiempo de CPU se desperdiciará en gasto admi nistrativo adicional. Evidentemente, es demasiado. A fm de mejorar la eficiencia de la CPU, podríamos usar un cuanto de, digamos 100 ms. Ahora el tiempo desperdiciado es de sólo el 1%. Pero consideremos qué sucede en un sistema de tiempo compartido si diez usuarios interactivos oprimen la tecla <Enter> más o menos al mismo tiempo. Diez procesos se colocarán en la lista de procesos ejecutables. Si la CPU está inactiva, el primero se iniciará de inmediato, el segundo no podrá iniciar sino hasta 100 ms des pués, y así en forma sucesiva. El desafortunado proceso que llegó al líltimo podría tener que esperar 1 s para tener una oportunidad, suponiendo que todos los demás utilicen todo su cuan to. Un usuario típico sentirá que la respuesta de un segundo a un comando corto es demasiado lenta. Otro factor es que si el cuanto es más largo que la duración media de una ráfaga de CPU, casi nunca habrá expropiación. Más bien, la mayoría de los procesos se bloqueará antes de que expire el cuanto, lo que causará una conmutación de procesos. La eliminación de la expropia ción mejora el desempeño porque de esa manera las conmutaciones de procesos sólo se efec túan cuando son lógicamente necesarias; es decir, cuando un proceso se bloquea y no puede continuar. La conclusión puede formularse como sigue: un cuanto demasiado corto causa demasia das conmutaciones de procesos y reduce la eficiencia de la CPU, pero uno demasiado largo puede reducir la rapidez de respuesta a solicitudes interactivas cortas. Un cuanto de alrededor de 20-50 ms suele ser un término medio razonable. Calendarización por prioridades La calendarización por tumo circular tiene el supuesto implícito de que todos los procesos tie nen la misma importancia. Es común que los dueños y operadores de computadoras multiusua- rio tengan ideas distintas al respecto. En una universidad, la jerarquía podría ser: primero directores de facultades y escuelas, luego profesores, secretarias, encargados de limpieza y, por último, estudiantes. La necesidad de tomar en cuenta factores externos conduce a la caienda- rización por prioridades. La idea básica es sencilla: a cada proceso se le asigna una priori dad, y el proceso listo que tenga la prioridad más alta es el que se ejecuta. Incluso en una PC con un solo dueño, podría haber múltiples procesos, algunos más im portantes que otros. Por ejemplo, un proceso demonio que envía correo electrónico en según-
RkJQdWJsaXNoZXIy MjI4NDcx