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 />

Parte estática <strong>de</strong>l contexto<br />

Contexto nivel usuario<br />

Texto <strong>de</strong>l proc.<br />

Datos<br />

Pila<br />

Mem. compart.<br />

Parte estática <strong>de</strong>l<br />

contexto <strong>de</strong>l nivel <strong>de</strong><br />

sistema<br />

Entrada tabla procs.<br />

U-area<br />

Tabla reg. por proc.<br />

Capa 3<br />

puntero lógico a<br />

capa <strong>de</strong> contexto<br />

actual<br />

Capa 2<br />

Capa 1<br />

Capa 0<br />

Parte dinámica <strong>de</strong>l contexto<br />

Pila kernel para capa 3<br />

Contexto <strong>de</strong> Registro<br />

salvado para capa 2<br />

Pila kernel para capa 2<br />

Contexto <strong>de</strong> Registro<br />

salvado para capa 1<br />

Pila kernel para capa 1<br />

Contexto <strong>de</strong> Registro<br />

salvado para capa 0<br />

(Nivel usuario)<br />

Figura <strong>2.</strong>10. Componentes <strong>de</strong>l contexto <strong>de</strong> un proceso.<br />

Ejecución <strong>de</strong> un proceso.<br />

• Un proceso se ejecuta <strong>de</strong>ntro <strong>de</strong> su capa <strong>de</strong> contexto actual.<br />

• El número <strong>de</strong> capas <strong>de</strong> contexto está limitado por el número <strong>de</strong> niveles <strong>de</strong> interrupción que soporta<br />

la máquina.<br />

– Por ejemplo, si una máquina soporta 5 niveles <strong>de</strong> interrupción (interrupciones software, <strong>de</strong><br />

terminales, <strong>de</strong> disco, <strong>de</strong> varios periféricos y <strong>de</strong> reloj), un proceso podrá tener al menos 7<br />

capas <strong>de</strong> contexto: Una por cada nivel <strong>de</strong> interrupción, una para las llamadas al sistema y<br />

otra para el nivel <strong>de</strong> usuario. Estas 7 capas son suficientes para contener todas las capas<br />

posibles, incluso si las interrupciones se dan en la secuencia más <strong>de</strong>sfavorable, ya que las<br />

interrupciones <strong>de</strong> un nivel <strong>de</strong>terminado son bloqueadas (la CPU no las atien<strong>de</strong>) mientras que<br />

le kernel está atendiendo una interrupción en un nivel igual o superior.<br />

• Ejecución <strong>de</strong>l kernel siempre en contexto <strong>de</strong> proceso, pero la función en ejecución pue<strong>de</strong> no<br />

pertenecer a ese proceso.<br />

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

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

Saved successfully!

Ooh no, something went wrong!