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 PA 1. Cola de ejecución PB Cola de preparados Pila de PA SP CPU Contexto de PB Pila de PB Alberto Lafuente, UPV/EHU, Dep ATC Se está ejecutando PA. PA Cola de ejecución BA de la Rut. de Atención PB Cola de preparados Pila de PA SP CPU Contexto de PB Pila de PB Alberto Lafuente, UPV/EHU, Dep ATC 1. Se está ejecutando PA. 2. Se produce una interrupción (externa o trap). PA Cola de ejecución BA de la Rut. de Atención BA Contexto de la Rut. de de Atención PA PB Cola de preparados Pila de PA SP CPU Contexto de PB Pila de PB Alberto Lafuente, UPV/EHU, Dep ATC 1. Se está ejecutando PA. 2. Se produce una interrupción (externa o trap). 3. Se salva el contexto de PA. PA Cola de ejecución BA de la Rut. de Atención BA Contexto de la Rut. de de Atención PA PB Cola de preparados Pila de PA SP CPU PA Contexto de PB Una cola de bloqueados (por ejemplo) Pila de PB Alberto Lafuente, UPV/EHU, Dep ATC 1. Se está ejecutando PA. 2. Se produce una interrupción (externa o trap). 3. Se salva el contexto de PA. 4. Cambio de estado de PA. PA Cola de ejecución BA de la Rut. de Atención BA Contexto de la Rut. de de Atención PA PB Cola de preparados Pila de PA SP CPU PA Contexto de PB Una cola de bloqueados (por ejemplo) Pila de PB Alberto Lafuente, UPV/EHU, Dep ATC 1. Se está ejecutando PA. 2. Se produce una interrupción (externa o trap). 3. Se salva el contexto de PA. 4. Cambio de estado de PA. 5. Scheduler: elige a PB. PBA Cola de ejecución Cola de preparados BA de la Rut. de Atención BA Contexto de la Rut. de de Atención PA Pila de PA SP CPU PA Contexto de PB Una cola de bloqueados (por ejemplo) Pila de PB Alberto Lafuente, UPV/EHU, Dep ATC 1. Se está ejecutando PA. 2. Se produce una interrupción (externa o trap). 3. Se salva el contexto de PA. 4. Cambio de estado de PA. 5. Scheduler: elige a PB. 6. Cambio de estado de PB. PBA Cola de ejecución Cola de preparados BA de la Rut. de Atención BA Contexto de la Rut. de de Atención PA Pila de PA SP CPU 1. Se está ejecutando PA. 2. Se produce una interrupción (externa o trap). 3. Se salva el contexto de PA. 4. Cambio de estado de PA. 5. Scheduler: elige a PB. 6. Cambio de estado de PB. El PCB de PB contiene el estado de su SP. PA Contexto de PB Una cola de bloqueados (por ejemplo) Pila de PB Alberto Lafuente, UPV/EHU, Dep ATC PBA Cola de ejecución Cola de preparados BA de la Rut. de Atención BA Contexto de la Rut. de de Atención PA Pila de PA SP CPU PA Contexto de PB Una cola de bloqueados (por ejemplo) Pila de PB Alberto Lafuente, UPV/EHU, Dep ATC 1. Se está ejecutando PA. 2. Se produce una interrupción (externa o trap). 3. Se salva el contexto de PA. 4. Cambio de estado de PA. 5. Scheduler: elige a PB. 6. Cambio de estado de PB. 7. Manipulación del Stack Pointer para retornar al bloque de activación de PB. PBA Cola de ejecución Cola de preparados BA de la Rut. de Atención BA Contexto de la Rut. de de Atención PA Pila de PA SP CPU PA Contexto de PB Una cola de bloqueados (por ejemplo) Pila de PB Alberto Lafuente, UPV/EHU, Dep ATC 1. Se está ejecutando PA. 2. Se produce una interrupción (externa o trap). 3. Se salva el contexto de PA. 4. Cambio de estado de PA. 5. Scheduler: elige a PB. 6. Cambio de estado de 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. PBA Cola de ejecución Cola de preparados BA Contexto de la Rut. de de Atención PA Pila de PA SP CPU PA Contexto de PB Una cola de bloqueados (por ejemplo) Pila de PB Alberto Lafuente, UPV/EHU, Dep ATC 1. Se está ejecutando PA. 2. Se produce una interrupción (externa o trap). 3. Se salva el contexto de PA. 4. Cambio de estado de PA. 5. Scheduler: elige a PB. 6. Cambio de estado de 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. PBA Cola de ejecución Cola de preparados BA Contexto de la Rut. de de Atención PA Pila de PA SP CPU 1. Se está ejecutando PA. 2. Se produce una interrupción (externa o trap). 3. Se salva el contexto de PA. 4. Cambio de estado de PA. 5. Scheduler: elige a PB. 6. Cambio de estado de 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. PA Una cola de bloqueados (por ejemplo) 10. Se ejecuta PB. Pila de PB Alberto Lafuente, UPV/EHU, Dep ATC