Entradas

Mostrando entradas de octubre, 2017

UNIDAD 2.2 ADMINISTRACIÓN DE PROCESOS Y DEL PROCESADOR

Imagen
ADMINISTRACIÓN DE PROCESOS Y DEL PROCESADOR Un  proceso  es una instancia de ejecución de un programa, caracterizado por su contador de programa, su  palabra de estado , sus  registros  del procesador, su segmento de texto,  pila  y datos, etc. Un programa es un concepto estático, mientras que un proceso es un concepto dinámico. Es posible que un programa sea ejecutado por varios usuarios en un sistema  multiusuario , por cada una de estas ejecuciones existirá un proceso, con su contador de programa, registros, etc. Durante su vida, un proceso puede pasar por una serie de estados discretos, algunos de ellos son:  En ejecución : El proceso ocupa la CPU actualmente, es decir, se está ejecutando.  Listo  o  preparado : El proceso dispone de todos los recursos para su ejecución, sólo le falta la CPU.  Bloqueado:  Al proceso le falta algún recurso para poder seguir ejecutándose, además de la CPU. Por recurso se pue...

2.1 Concepto de Procesos

Imagen
CONCEPTO DE PROCESOS U n proceso no es más que un programa en ejecución, e incluye los valores actuales del contador de programa, los registros y las variables. Conceptualmente cada unos de estos procesos tiene su propia CPU virtual. Desde luego, en la realidad la verdadera CPU conmuta de un proceso a otro. Un proceso es un concepto manejado por el sistema operativo que consiste en el conjunto formado por: Las instrucciones de un programa destinadas a ser ejecutadas por el microprocesador. Su estado de ejecución en un momento dado, esto es, los valores de los registros de la CPU para dicho programa. Su memoria de trabajo, es decir, la memoria que ha reservado y sus contenidos. Otra información que permite al sistema operativo su planificación. Esta definición varía ligeramente en el caso de sistemas operativos multihilo, donde un proceso consta de uno o más hilos, la memoria de trabajo (compartida por todos los hilos) y la información de planificación. Cada hilo consta de i...

2.2 Estados y Transiciones de los Procesos

Imagen
ESTADOS Y TRANSICIONES DE LOS PROCESOS Estados de un  proceso: Un proceso pasa de un estado a otro desde su creación hasta su destrucción. Los estados por los cuales puede pasar un proceso son los siguientes: • Nuevo:              Cuando el proceso se está creando. • Ejecución:              Es cuando se están ejecutando instrucciones. • Bloqueado:              Es cuando el proceso está esperando que ocurra un evento. • Listo:             Es cuando un proceso está a la espera de ser asignado a un procesador . • Terminado:             Es cuando el proceso ha terminado su ejecución.   Transiciones de un proceso: Cuando un proceso se crea, ...

2.3 Procesos ligeros: Hilos y Hebras

Imagen
Procesos ligeros: Hilos y Hebras El concepto de proceso engloba dos conceptos separados y potencialmente independientes: uno relativo a la propiedad de recursos y otro que hace referencia a la ejecución. Unidad que posee recursos: A un proceso se le asigna un espacio de memoria y, de tanto en tanto, se le puede asignar otros recursos como dispositivos de E/S o ficheros. Unidad a la que se le asigna el procesador: Un proceso es un flujo de ejecución (una traza) a través de uno o más programas. Esta ejecución se entremezcla con la de otros procesos. De tal forma, que un proceso tiene un estado (en ejecución, listo, etc) y una prioridad de expedición u origen. La unidad planificada y expedida por el sistema operativo es el proceso. En la mayoría de los sistemas operativos, estas dos características son, de hecho, la esencia de un proceso. Sin embargo, son independientes, y pueden ser tratadas como tales por el sistema operativo. Esta distinción ha conducido en los sistemas operati...

2.4 Concurrencia y Secuencialidad

Imagen
CONCURRENCIA Y SECUENCIALIDAD La concurrencia comprende un gran número de cuestiones de diseño, incluyendo la comunicación entre procesos, comparición y competencia por los recursos, sincronización de la ejecución de varios procesos y asignación del tiempo de procesador a los procesos y es fundamental para que existan diseños como Multiprogramación, Multiproceso y Proceso distribuido. Los procesos son  concurrentes si existen simultáneamente. Los procesos concurrentes pueden funcionar en forma totalmente   independiente unos de otros, o pueden ser asíncronos, lo cual significa que en ocasiones requieren cierta sincronización o cooperación. La concurrencia puede presentarse en tres contextos diferentes: Varias aplicaciones:  La multiprogramación se creó para permitir que el tiempo de procesador de la máquina fuese compartido dinámicamente entre varios trabajos o aplicaciones activas. Aplicaciones estructuradas:  Como ampliación de los principios de...

2.5 Niveles Objetivos

Imagen
NIVELES OBJETIVOS La planificación es el proceso por el cual el sistema operativo selecciona que proceso ejecutar. La selección del proceso se basa en alguno de los algoritmos de planificación. La planificación de la CPU, en el sentido de conmutarla entre los distintos procesos, es una de las funciones del sistema operativo. Este despacho es llevado a cabo por un pequeño programa llamado planificador a corto plazo o dispatcher (despachador). La misión del dispatcher consiste en asignar la CPU a uno de los procesos ejecutables del sistema, para ello sigue un determinado algoritmo. Los acontecimientos que pueden provocar la llamada al dispatcher dependen del sistema (son un subconjunto de las interrupciones), pero son alguno de estos: El proceso en ejecución acaba su ejecución o no puede seguir ejecutándose (por una E/S, operación WAIT, etc). Un elemento del sistema operativo ordena el bloqueo del proceso en ejecución El proceso en ejecución agota su cuantum ...