es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Planificación de procesos del SO: ¿Qué efecto tiene una llamada al sistema del kernel en el planificador de procesos?

Esta pregunta se refiere a las llamadas al sistema que se ejecutan cuando son realizadas por un proceso en ejecución, y cómo esto afecta al planificador.

  1. Digamos que tengo un proceso que actualmente está en estado de ejecución.
  2. Decide que necesita hacer una llamada al sistema (por ejemplo, para acceder al disco) a la API del kernel.
  3. El proceso entra en estado bloqueado. El planificador elige un proceso pendiente y lo deja correr.

Mi pregunta es: si el otro proceso está ahora en ejecución en la CPU, ¿cuándo/dónde se está ejecutando la llamada al sistema? ¿O espera el planificador a que la llamada al sistema termine antes de elegir el proceso pendiente para ejecutar?

Y una pregunta adicional: cualquiera que sea la respuesta que proporciones, ¿es ese el caso tanto para los sistemas operativos de propósito general como para los RTOS, o es diferente para estos últimos (ya que cualquier planificador de RTOS es más sensible al tiempo y busca lograr un rendimiento determinista)?

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Cuando un proceso en ejecución hace una llamada al sistema a través de la API del kernel, el sistema operativo cambia el estado del proceso a bloqueado y comienza a ejecutar el código del kernel para manejar la llamada al sistema. La llamada al sistema se ejecuta mientras el proceso está en estado bloqueado y una vez que se completa, el proceso vuelve al estado listo. El planificador luego elige un proceso pendiente para ejecutarse, que puede o no ser el que realizó la llamada al sistema.

    Este proceso es el mismo tanto para sistemas operativos de propósito general como para RTOS. Sin embargo, en un planificador RTOS, la prioridad del manejo de llamadas al sistema suele ser más alta para lograr un comportamiento determinístico, y las decisiones de planificación pueden ser más rápidas y frecuentes para cumplir con las restricciones en tiempo real.

Comments are closed.