Sistemas operativos modernos

Un mejor modelo es ver el aprovechamiento de la CPU desde un punto de vista probabi­ listico. Supongamos que un proceso pasa una fracción p de su tiempo esperando a que termi­ nen operaciones de E/S. Si hay n procesos en la memoria a la vez, la probabilidad de que todos estén esperando E/S (en cuyo caso la CPU estará inactiva) es p". Así pues, el aprovechamien­ to de la CPU está dado por la fórmula Aprovechamiento de CPU = 1 - p" La figura 4-3 muestra el aprovechamiento de la CPU en función de n, que se denomina grado de multiprogramación. Grado de multiprogramación Figura 4-3. Aprovechamiento de la CPU en función dei número de procesos en la memoria. En la figura es evidente que si los procesos pasan el 80% del tiempo esperando E/S, deberá ha­ ber al menos 10 procesos en la memoria a la vez para que el desperdicio de CPU esté por debajo del 10%. Si pensamos en que un proceso interactivo que espera a que un usuario teclee algo en una terminal está en estado de espera de E/S, deberá quedarnos claro que los tiempos de espera de E/S del 80% o más no son algo inusitado. Pero incluso en los sistemas de procesamiento por lotes, los procesos que efectúan mucha E/S de disco a menudo alcanzan este porcentaje o lo rebasan. En aras de la exactitud, debemos señalar que el modelo probabilístico recién descrito no es más que una aproximación; se basa en la suposición implícita de que los n procesos son inde- pendientes, lo que implica que es perfectamente aceptable que un sistema con cinco procesos en memoria tenga tres en ejecución y dos esperando. Sin embargo, con una sola CPU no es po­ sible tener tres procesos ejecutándose al mismo tiempo, por lo que un proceso que pase al es­ tado listo mientras la CPU está ocupada, tendrá que esperar. Por lo tanto, los procesos no son independientes. Puede construirse un modelo más exacto con base en la teoría de colas, pero lo que nos interesa destacar—que la multiprogramación permite a los procesos usar la CPU cuando de otra manera estaría inactiva— sigue siendo, desde luego, válido, aunque las curvas reales de la figura 4-3 sean un poco diferentes. Si bien el modelo de la figura 4-3 es simplista, puede servir para hacer predicciones espe­ cíficas, aunque aproximadas, acerca del desempeño de la CPU. Por ejemplo, supongamos que

RkJQdWJsaXNoZXIy MjI4NDcx