procesos e hilos

Páginas: 12 (2998 palabras) Publicado: 14 de noviembre de 2014
2: procesos e hilos
2.1 Procesos
Un proceso es un programa en ejecución, una unidad de actividad que se caracteriza por la ejecución de una secuencia de instrucciones, un estado actual, y un conjunto de recursos del sistema asociados.
2.1.1 El modelo del proceso
Se organiza en varios procesos secuenciales. Cada proceso tiene su CPU virtual. La CPU real conmuta de un proceso a otro.Multiprogramación: la técnica que permite que dos o más procesos ocupen la misma unidad de memoria principal y sean ejecutados al "mismo tiempo" en una CPU (en realidad estamos ante un pseudo-paralelismo, dado que en una única CPU sólo puede haber un proceso ejecutándose a la vez).
La diferencia entre un proceso y un programa es sutil pero crucial. Un proceso es una actividad de cierto tipo. Variosprocesos pueden compartir un solo procesador mediante el uso de un algoritmo de planificación para detener el trabajo.
Si un programa se está ejecutando por duplicado cuenta como dos procesos, son procesos distintos.
2.1.2 Creación de un proceso
Hay cuatro eventos principales para crear procesos:
Arranque del sistema.
La ejecución, desde un proceso, de una llamada al sistema.
Una petición deusuario para crearlo.
El inicio de un trabajo por lotes.
Cuando se arranca un SO se crean varios procesos. Algunos de ellos son procesos en 1er plano (interactúan con los usuarios y realizan trabajos para ellos). Otros son en 2º plano (no asociados a los usuarios, sino con una función específica).
En Windows la llamada a una función de Win32 (createProcess) maneja la creación de procesos ycarga el programa correcto. Tiene 10 parámetros que incluyen el programa a ejecutar, los parámetros de la line de comandos, varios atributos de seguridad, información de prioridad, etc. Win32 tiene 100 funciones más para administrar y sincronizar procesos.
En UNIX, el espacio de direcciones inicial de hijo es una copia del padre. En Windows los espacios de direcciones de padre e hijo son distintosdesde el principio.
2.1.3 Terminación de procesos
Las condiciones de un proceso son:
1. Salida normal (voluntaria)
2. Salida por error (voluntaria)
3. Error fatal (involuntaria)
4. Eliminado por otro proceso (involuntaria)
La primera razón de que termine un proceso puede ser por una llamada al sistema.
Exit (UNIX), exitprocess (Windows): cuando un compilador ha compilado el programa querecibe, ejecuta una llamada al sistema para indicar al sistema operativo que ha terminado.
La segunda razón de que un proceso termine es que el proceso descubra un error.
La tercera razón de que termine un proceso es un error fatal producido por el proceso, debido a un error del programa. En algunos sistemas como UNIX un proceso puede indicar al SO que desea manejar ciertos errores por si mismo queinterrumpe en vez de finalizar.
La cuarta razón de que termine un proceso puede ser la eliminación de un proceso a través de una llamada al sistema. En UNIX, kill. En Win32 es TerminateProcess. En ambas el proceso eliminador tiene que tener la suficiente autorización.
2.1.4 Jerarquías de procesos
En UNIX los procesos con sus hijos y sus siguientes sucesores, hacen un grupo de procesos. Demanera individual, cada proceso puede atrapar, ignorar o tomar una acción predeterminada que es eliminada por una señal.
En Windows no hay concepto de jerarquía de procesos. Todos los procesos son iguales. Cuando se crea un proceso, el padre recibe un indicador especial (token, manejador) que puede utilizar para controlar al hijo. Pero puede utilizarla con otros procesos. Así invalida la jerarquía.2.1.5 Estados de un proceso
Un proceso puede generar cierta salida que otro proceso utiliza de entrada. En comando Shell: cat capitulo1 capitulo2 capitulo3 | grep árbol
El primer proceso, Cat, concatena 3 archivos que los envía como salida. El 2º proceso, grep, selecciona las líneas que contengan la palabra árbol. Puede que grep este preparado antes que la misma entrada, entonces debe...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Proceso de hilado
  • PROCESOS E HILOS
  • Procesos e hilos
  • Procesos e hilos
  • HILOS VS PROCESOS
  • Hilo Procesado En Fibra De Alpaca
  • Proceso De Electroerosi N Con Hilo
  • Diferencia entre un proceso y un hilo

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS