Contexto de P B
description
Transcript of Contexto de P B
Alberto Lafuente, UPV/EHU, Dep ATC
Este documento describe gráficamente el cambio en la
ejecución de un proceso PA a otro PB en un sistema multiprogramado, en
particular el cambio de contexto y de estado de los procesos.
Alberto Lafuente, UPV/EHU, Dep ATC
Contexto de PB
1. Se está ejecutando PA.
Pila de PA
Pila de PB
Cola de ejecución
PA
Cola de preparados
PB
CPU
SP
PA
Alberto Lafuente, UPV/EHU, Dep ATC
Contexto de PB
1. Se está ejecutando PA.
Pila de PA
Pila de PB
Cola de ejecución
PA
Cola de preparados
PB
CPU
SP
PA
2. Se produce una interrupción (externa o trap).
BA de la Rut.de Atención
Alberto Lafuente, UPV/EHU, Dep ATC
Contexto de PB
1. Se está ejecutando PA.
Pila de PA
Pila de PB
Cola de ejecución
PA
Cola de preparados
PB
CPU
SP
PA
2. Se produce una interrupción (externa o trap).
BA de la Rut.de Atención
3. Se salva el contexto de PA.
BA de la Rut.de Atención
Contexto de PA
Alberto Lafuente, UPV/EHU, Dep ATC
Contexto de PB
1. Se está ejecutando PA.
Pila de PA
Pila de PB
Cola de ejecución
PA
Cola de preparados
PB
CPU
SP
2. Se produce una interrupción (externa o trap).
BA de la Rut.de Atención
3. Se salva el contexto de PA.
BA de la Rut.de Atención
Contexto de PA
4. Cambio de estado de PA.
Una cola de bloqueados (por
ejemplo)
PA
Alberto Lafuente, UPV/EHU, Dep ATC
Contexto de PB
1. Se está ejecutando PA.
Pila de PA
Pila de PB
Cola de ejecución
PA
Cola de preparados
PB
CPU
SP
2. Se produce una interrupción (externa o trap).
BA de la Rut.de Atención
3. Se salva el contexto de PA.
BA de la Rut.de Atención
Contexto de PA
4. Cambio de estado de PA.
Una cola de bloqueados (por
ejemplo)
PA
5. Scheduler: elige a PB.
Alberto Lafuente, UPV/EHU, Dep ATC
Contexto de PB
1. Se está ejecutando PA.
Pila de PA
Pila de PB
Cola de ejecución
PA
Cola de preparados
CPU
SP
2. Se produce una interrupción (externa o trap).
BA de la Rut.de Atención
3. Se salva el contexto de PA.
BA de la Rut.de Atención
Contexto de PA
4. Cambio de estado de PA.
Una cola de bloqueados (por
ejemplo)
PA
5. Scheduler: elige a PB.
6. Cambio de estado de PB.
PB
Alberto Lafuente, UPV/EHU, Dep ATC
Contexto de PB
1. Se está ejecutando PA.
Pila de PA
Pila de PB
Cola de ejecución
PA
Cola de preparados
CPU
SP
2. Se produce una interrupción (externa o trap).
BA de la Rut.de Atención
3. Se salva el contexto de PA.
BA de la Rut.de Atención
Contexto de PA
4. Cambio de estado de PA.
Una cola de bloqueados (por
ejemplo)
PA
5. Scheduler: elige a PB.
6. Cambio de estado de PB.
El PCB de PB contiene el estado de su SP.
PB
Alberto Lafuente, UPV/EHU, Dep ATC
Contexto de PB
1. Se está ejecutando PA.
Pila de PA
Pila de PB
Cola de ejecución
PA
Cola de preparados
CPU
SP
2. Se produce una interrupción (externa o trap).
BA de la Rut.de Atención
3. Se salva el contexto de PA.
BA de la Rut.de Atención
Contexto de PA
4. Cambio de estado de PA.
Una cola de bloqueados (por
ejemplo)
PA
5. Scheduler: elige a PB.
6. Cambio de estado de PB.
PB
7. Manipulación del Stack Pointer para retornar al bloque de activación de PB.
Alberto Lafuente, UPV/EHU, Dep ATC
Contexto de PB
1. Se está ejecutando PA.
Pila de PA
Pila de PB
Cola de ejecución
PA
Cola de preparados
CPU
SP
2. Se produce una interrupción (externa o trap).
BA de la Rut.de Atención
3. Se salva el contexto de PA.
BA de la Rut.de Atención
Contexto de PA
4. Cambio de estado de PA.
Una cola de bloqueados (por
ejemplo)
PA
5. Scheduler: elige a PB.
6. Cambio de estado de PB.
PB
7. Manipulación del Stack Pointer para retornar al bloque de activación de PB.
8. Se carga el contexto de PB en la CPU.
Alberto Lafuente, UPV/EHU, Dep ATC
Contexto de PB
1. Se está ejecutando PA.
Pila de PA
Pila de PB
Cola de ejecución
PA
Cola de preparados
CPU
SP
2. Se produce una interrupción (externa o trap).
BA de la Rut.de Atención
3. Se salva el contexto de PA.
Contexto de PA
4. Cambio de estado de PA.
Una cola de bloqueados (por
ejemplo)
PA
5. Scheduler: elige a PB.
6. Cambio de estado de PB.
PB
7. Manipulación del Stack Pointer para retornar al bloque de activación de PB.
8. Se carga el contexto de PB en la CPU.
9. Retorno de la interrupción.
Alberto Lafuente, UPV/EHU, Dep ATC
1. Se está ejecutando PA.
Pila de PA
Pila de PB
Cola de ejecución
PA
Cola de preparados
CPU
SP
2. Se produce una interrupción (externa o trap).
BA de la Rut.de Atención
3. Se salva el contexto de PA.
Contexto de PA
4. Cambio de estado de PA.
Una cola de bloqueados (por
ejemplo)
PA
5. Scheduler: elige a PB.
6. Cambio de estado de PB.
PB
7. Manipulación del Stack Pointer para retornar al bloque de activación de PB.
8. Se carga el contexto de PB en la CPU.
9. Retorno de la interrupción.
10. Se ejecuta PB.