1. 4.- PROCESOS 4.1.- Concepto de proceso 4.1.1.- Servicios de procesos 4.1.2.- Jerarquía de proceso 4.2.- Entorno del proceso 4.3.- Multitarea 4.3.1.- Base de la multitarea 4.3.2.- Planificador Vs. Activador 4.3.3.- Ventajas de la multitarea 4.3.4.- Grado de multiprogramación y necesidades de memoria principal CAPITULO 4
2.
3.
4. MODELO Consideremos un científico de la computación con una mente culinaria, que está cocinando el pastel de cumpleaños de su hija. El tiene una receta para elaborar un pastel de cumpleaños y una cocina bien abastecida con los ingredientes necesarios: harina, huevo, azúcar, extracto de vainilla, etc. Realice una analogía con los siguientes elementos: Programa: …………………….. CPU: …………………………. Datos de entrada: ……………. Proceso: ………………………
5. RESULTADOS DE LA ANALOGÍA En esta analogía, la receta es el programa (es decir, un algoritmo expresado en cierta notación adecuada), el científico de computación es el procesador (CPU) y los ingredientes del pastel son los datos de entrada . El proceso es la actividad que consiste en leer la receta, obtener los ingredientes y hornear el pastel.
6.
7.
8.
9.
10.
11.
12. 4.2.- ENTORNO DEL PROCESO INFORMACION REGISTROS DATOS EN PILA (STACK) DATOS EN VARIABLES INSTRUCCIONES Programa en ejecución ENTORNO
13.
14.
15.
16.
17. PARALELISMO. Es la ejecución de diversas actividades simultáneamente en varios procesadores. Si sólo existe un procesador gestionando multiprogramación, se puede decir que existe PSEUDO-PARALELISMO. CONCURRENCIA. Es la existencia de varias actividades ejecutándose simultáneamente, y necesitan sincronizarse para actuar conjuntamente. Se trata de un concepto lógico, ya que sólo hace referencia a las actividades, sin importar el número de procesadores presentes.
18.
19.
20. a: A en CPU, B y C bloqueados b: A llama al SO para E/S c: Todos bloqueados (CPU idle) d: Acaba E/S de B (despierta y dispatch) e: B en ejecución f: Acaba E/S de C (despierta), B ready g: Sigue B en CPU y C ready h: B hace syscall. SO despacha C y bloquea B i: C en CPU, A y B bloqueados j: C llama al SO para E/S y A se despierta k: A en ejecución l: Una int E/S llama al SO para despertar B m: A continua en Run y B espera ready n: A se bloquea o: B pasa a ejecución (run) CPU ocupada siempre salvo en c A B C CPU Tiempo a b c d e f g h i j k l m n o