UNIDAD1(1).pdf
Document Details
Uploaded by HonorableBauhaus
UNCuyo
Tags
Full Transcript
UNIDAD 2 2-Procesos Es un programa en ejecución. Se refiere al conjunto de ejecución de instrucciones de maquina Programa: es estático, no tiene contador de programa, existe desde que se edita hasta que se borra Proceso: es dinámico, tiene contador de programa, su ciclo de vida comprende d...
UNIDAD 2 2-Procesos Es un programa en ejecución. Se refiere al conjunto de ejecución de instrucciones de maquina Programa: es estático, no tiene contador de programa, existe desde que se edita hasta que se borra Proceso: es dinámico, tiene contador de programa, su ciclo de vida comprende desde que se lo dispara hasta que termina PROGRAMAS Aplicación o software de aplicación: o Programas o grupos de programas diseñados para ser usados directamente por los usuarios (también llamados usuarios finales) Software de sistemas: o Son los programas que interactúan de forma más directa con el SO, tales como compiladores, depuradores y emsambladores Hilos: o Asociados a un proceso encontramos su código, sus datos, los recursos operativos asignados a el y uno o mas “hilos”(threads) de ejecución o Es un flujo de ejecución a lo largo del código del proceso, con su propio contador de programa, registros y pila. Pueden compartir el mismo espacio de direcciones CLASIFICACION DE LOS SISTEMAS OPERATIVOS: De un único proceso con un único hilo De varios procesos con un único hilo De múltiples procesos con varios hilos ESTADO DE UN PROCESO: un proceso es dinámico, cambia su estado a medida que se ejecuta. Como mínimo un proceso puede estar en uno de los siguientes 3 estados: Ejecutándose (running): un proceso que está ejecutando en un CPU, si un sistema tiene n CPUs puede tener como máximo n proceso en ese estado Bloqueado (blocked): el proceso está esperando que ocurra algún evento, como por ejemplo la finalización de una operación de E/S Listo (ready): un proceso que no está asignado a la CPU pero está listo para ejecutar. Un proceso listo podría ejecutar si se lo asigna a una CPU Nuevo (new): también llamado “creado”, espera admisión al estado “listo” Listo (ready): también llamado “esperando”, ha sido cargado en memoria principal y espera que el despachador lo ponga a ejecutar. Puede haber varios procesos en este estado Bloqueado (blocked): un proceso que esta esperando que ocurra un evento antes de que pueda continuar. Con frecuencia, este evento es la finalización de una operación de E/S. No requieren servicios de la CPU Terminado (terminated): un proceso que ha detenido su ejecución pero el SO aun mantiene un registro de el (en UNIX, a estos procesos se les llama “zombie”) Podemos definir dos estados mas en los sistemas que cuentan con memoria virtual: Intercambiado y esperando: o “suspendido y esperando”, fue sacado de la memoria principal y almacenado en memoria secundaria Intercambiado y bloqueado: o “suspendido y bloqueado”, un proceso que estaba bloqueado también puede pasar a residir en el área de swap ESTADOS DE UN PROCESO EN LINUX Uninterruptible sleep (D): espera ininterrumpible, generalmente el proceso se encuentra esperando una operación de E/S con algún dispositivo Interruptible sleep (S): espera interrumpible. El proceso se encuentra esperando a que se cumpla algún evento, por ej., que el planificador de procesos del nucleo lo planifique para su ejecución Running (R): corriendo. El proceso se encuentra corriendo en el procesador Stopped (T): Trazado o detenido: un proceso que ha sido detenido mediante el envío de alguna señal generalmente. «