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