12.10.2014 Views

TEMA 2. GESTIÓN DE PROCESOS - Universidad de Almería

TEMA 2. GESTIÓN DE PROCESOS - Universidad de Almería

TEMA 2. GESTIÓN DE PROCESOS - Universidad de Almería

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Diseño <strong>de</strong> Sistemas Operativos<br />

Tema <strong>2.</strong> Gestión <strong>de</strong> Procesos<br />

No se consi<strong>de</strong>ra cambio <strong>de</strong> contexto.<br />

• No se consi<strong>de</strong>ra cambio <strong>de</strong> contexto el cambio en el modo <strong>de</strong> ejecución <strong>de</strong> un proceso ⇒ cuando<br />

un proceso cambia su modo <strong>de</strong> ejecución, <strong>de</strong>l modo usuario al modo kernel, el kernel guarda<br />

información para cuando el proceso tenga que volver a modo usuario. Este cambio <strong>de</strong> modo<br />

usuario a modo kernel y viceversa no se consi<strong>de</strong>ra un cambio <strong>de</strong> contexto.<br />

Des<strong>de</strong> el punto <strong>de</strong> vista formal el contexto <strong>de</strong> un proceso es la unión <strong>de</strong>:<br />

• Su contexto <strong>de</strong>l nivel <strong>de</strong> usuario.<br />

• Su contexto <strong>de</strong>l nivel <strong>de</strong> registros.<br />

• Su contexto <strong>de</strong>l nivel <strong>de</strong> sistema.<br />

Contexto <strong>de</strong>l nivel <strong>de</strong> usuario.<br />

• El contexto <strong>de</strong>l nivel <strong>de</strong> usuario se compone <strong>de</strong>:<br />

– Segmento <strong>de</strong> Texto (código) <strong>de</strong>l proceso.<br />

– Segmento <strong>de</strong> Datos <strong>de</strong>l proceso.<br />

– Segmento <strong>de</strong> Pila <strong>de</strong>l proceso.<br />

– Espacio <strong>de</strong> direcciones virtuales compartidas <strong>de</strong>l proceso (<strong>de</strong> usuario) que se encuentran en<br />

su zona <strong>de</strong> direcciones virtuales.<br />

– Las partes <strong>de</strong>l espacio <strong>de</strong> direcciones virtuales que periódicamente no resi<strong>de</strong>n en memoria<br />

principal <strong>de</strong>bido al swapping.<br />

Contexto <strong>de</strong>l nivel <strong>de</strong> registros.<br />

• Contenido <strong>de</strong> los registros hardware.<br />

– El contador <strong>de</strong> programa (PC) ⇒ que contiene la dirección <strong>de</strong> la siguiente instrucción que<br />

<strong>de</strong>be ejecutar la CPU ⇒ Esta dirección es una dirección virtual tanto en modo kernel como<br />

en usuario.<br />

– Registro <strong>de</strong> estado <strong>de</strong>l procesador (PS), que especifica el estado <strong>de</strong>l hardware <strong>de</strong> la máquina.<br />

El PS normalmente contiene campos para indicar que el resultado <strong>de</strong> la última operación <strong>de</strong><br />

cálculo ha sido cero, positiva, negativa, si ha habido overflow, acarreo, etc. Las operaciones<br />

que causan la modificación <strong>de</strong>l PS son realizadas en un <strong>de</strong>terminado proceso, por lo tanto el<br />

PS contiene el estado <strong>de</strong>l hardware en relación a ese proceso. Otros campos importantes son<br />

los que indican el nivel <strong>de</strong> ejecución actual <strong>de</strong>l procesador (en relación con las<br />

interrupciones) y el modo <strong>de</strong> ejecución (kernel o usuario). El campo que indica el modo <strong>de</strong><br />

ejecución <strong>de</strong>termina si un proceso pue<strong>de</strong> ejecutar instrucciones privilegiadas y si un proceso<br />

pue<strong>de</strong> acce<strong>de</strong>r al espacio <strong>de</strong> direcciones <strong>de</strong>l kernel.<br />

– Puntero <strong>de</strong> pila (SP), que contiene la dirección <strong>de</strong> la siguiente entrada en la pila <strong>de</strong> usuario o<br />

<strong>de</strong> kernel. La arquitectura <strong>de</strong> la máquina dicta si el puntero <strong>de</strong> pila <strong>de</strong>be apuntar a la<br />

siguiente entrada libre o a la última entrada utilizada. De la misma forma, es la arquitectura<br />

<strong>de</strong> la máquina la que impone si la pila crece hacia direcciones altas o bajas <strong>de</strong> memoria.<br />

– Registros <strong>de</strong> propósito general, que contienen datos generados por el proceso durante la<br />

ejecución.<br />

Departamento <strong>de</strong> Lenguajes y Computación. <strong>Universidad</strong> <strong>de</strong> Almería Página <strong>2.</strong>19

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!