Volver al temario
Tema 02 · 44 páginas

El sistema operativo: una máquina virtual

Tema completo Modo estudio
TEXTO ORIGINAL · Páginas 2223 Ver PDF

4.2. Planificacion del procesador

Texto íntegro de la conversión. Las figuras y la disposición de las notas se pueden consultar en el PDF.

4.2. Planificación del procesador En un sistema operativo multiproceso existen diversos procesos que compiten para ejecutarse y hacer uso del procesador o de los procesadores disponibles en el ordenador. En este subapartado, asumimos que el ordenador dispone de un único procesador; en un momento dado se podrá estar ejecutando un único proceso y el resto de procesos tendrán que esperar para poder hacer uso del mismo.

El sistema operativo decide en cada momento qué proceso puede hacer uso del procesador; la parte del sistema operativo que lleva a cabo esta tarea es el planificador del procesador. El planificador asocia a cada proceso un estado que describe su grado de actividad.

Los estados básicos que contempla cualquier planificador del procesador son los siguientes:

  • Run (ejecución): el proceso está utilizando el procesador.

  • Ready (preparado): el proceso no está utilizando el procesador porque algún otro proceso lo está utilizando.

  • Blocked (bloqueado): el proceso no está utilizando el procesador porque el proceso está esperando que finalice una petición que se ha hecho al sistema operativo (por ejemplo, una operación de entrada/salida o la sincronización con otro proceso). Este estado también puede recibir el nombre de wait (espera).

La figura 7 muestra un diagrama con estos estados, así como las transiciones entre ellos. A continuación, detallamos las causas que provocan estas transiciones:

  • de ready a run: el planificador ha decidido que el proceso puede hacer uso del procesador.

  • de run a ready: el planificador ha decidido que el proceso tiene que dejar de hacer uso del procesador.

  • de run a blocked: el proceso ha invocado alguna llamada al sistema que no se ha podido realizar inmediatamente (por ejemplo, una lectura de te-

Notas y pies de figura de la fuente

dentro de un proceso se tratará en el módulo didáctico de procesos.

Página 23

clado). Este tipo de llamadas al sistema reciben el nombre de llamadas al sistema bloqueadoras.

  • de blocked a ready: se ha completado la ejecución de la llamada al sistema solicitado por el proceso, con lo cual el proceso está preparado para volver a utilizar el procesador.

Figura 7. Versión simplificada del diagrama de estados de los procesos desde el punto de vista del planificador del procesador

Cuando el proceso que se encuentra en el estado run deja de utilizar el procesador (ya sea voluntariamente porque ha invocado una llamada al sistema bloqueante o bien involuntariamente porque el planificador del procesador ha decidido que otro proceso haga uso del procesador), se produce un cambio de contexto. El procesador detiene la ejecución de un proceso y pasa a ejecutar otro proceso. La rutina del sistema operativo que implementa el cambio de contexto tiene que guardar toda la información necesaria para, más adelante, poder reanudar la ejecución del proceso. Básicamente, esta información está formada por los registros del procesador.

El planificador del procesador es el responsable de garantizar que los procesos en ejecución en el sistema utilicen el procesador de forma equitativa. No es objetivo de esta asignatura ver los diferentes criterios que puede utilizar un planificador para desempeñar esta tarea.

Los diagramas de estados de los planificadores del procesador de los sistemas operativos actuales tienen más estados y transiciones que los que hemos presentado en la figura 7. Estos estados adicionales pueden mostrar si el proceso está ejecutando código en modo usuario o en modo sistema o el motivo que ha provocado el bloqueo del proceso, entre otros.

Ver fragmento extraído sin normalizar
4.2.  Planificación del procesador                                                                           dentro de un proceso se trata-
                                                                                                             rá en el módulo didáctico de
                                                                                                             procesos.
En un sistema operativo multiproceso existen diversos procesos que compiten
para ejecutarse y hacer uso del procesador o de los procesadores disponibles en
el ordenador. En este subapartado, asumimos que el ordenador dispone de un
único procesador; en un momento dado se podrá estar ejecutando un único
proceso y el resto de procesos tendrán que esperar para poder hacer uso del
mismo.



    El sistema operativo decide en cada momento qué proceso puede hacer
    uso del procesador; la parte del sistema operativo que lleva a cabo esta
    tarea es el planificador￿del￿procesador. El planificador asocia a cada
    proceso un estado que describe su grado de actividad.



Los estados básicos que contempla cualquier planificador del procesador son
los siguientes:


•    Run (ejecución): el proceso está utilizando el procesador.


•    Ready (preparado): el proceso no está utilizando el procesador porque al-
     gún otro proceso lo está utilizando.


•    Blocked (bloqueado): el proceso no está utilizando el procesador porque el
     proceso está esperando que finalice una petición que se ha hecho al siste-
     ma operativo (por ejemplo, una operación de entrada/salida o la sincro-
     nización con otro proceso). Este estado también puede recibir el nombre
     de wait (espera).


La figura 7 muestra un diagrama con estos estados, así como las transiciones
entre ellos. A continuación, detallamos las causas que provocan estas transi-
ciones:


•    de ready a run: el planificador ha decidido que el proceso puede hacer uso
     del procesador.


•    de run a ready: el planificador ha decidido que el proceso tiene que dejar
     de hacer uso del procesador.


•    de run a blocked: el proceso ha invocado alguna llamada al sistema que
     no se ha podido realizar inmediatamente (por ejemplo, una lectura de te-

## Página 23

<!-- source-page: 23 -->

GNUFDL • PID_00214804                                                                                  23                                                                          El sistema operativo: una máquina virtual

     clado). Este tipo de llamadas al sistema reciben el nombre de llamadas al
     sistema bloqueadoras.


•    de blocked a ready: se ha completado la ejecución de la llamada al sistema
     solicitado por el proceso, con lo cual el proceso está preparado para volver
     a utilizar el procesador.






























Figura 7. Versión simplificada del diagrama de estados de los procesos desde el punto de vista del planificador del procesador

Cuando el proceso que se encuentra en el estado run deja de utilizar el pro-
cesador (ya sea voluntariamente porque ha invocado una llamada al sistema
bloqueante o bien involuntariamente porque el planificador del procesador
ha decidido que otro proceso haga uso del procesador), se produce un cambio
de contexto. El procesador detiene la ejecución de un proceso y pasa a ejecutar
otro proceso. La rutina del sistema operativo que implementa el cambio de
contexto tiene que guardar toda la información necesaria para, más adelante,
poder reanudar la ejecución del proceso. Básicamente, esta información está
formada por los registros del procesador.


El planificador del procesador es el responsable de garantizar que los procesos
en ejecución en el sistema utilicen el procesador de forma equitativa. No es
objetivo de esta asignatura ver los diferentes criterios que puede utilizar un
planificador para desempeñar esta tarea.


Los diagramas de estados de los planificadores del procesador de los sistemas
operativos actuales tienen más estados y transiciones que los que hemos pre-
sentado en la figura 7. Estos estados adicionales pueden mostrar si el proceso
está ejecutando código en modo usuario o en modo sistema o el motivo que
ha provocado el bloqueo del proceso, entre otros.

Descargar Markdown originalEstudiar este apartado