SlideShare una empresa de Scribd logo
1 de 30
Administración de procesos
y del procesador.
2.1 Concepto de proceso.
Un proceso es básicamente un programa
en ejecución.
 Consta del programa ejecutable, los
datos y la pila del programa, su contador
de programa, apuntador de pila y otros
registros, y la otra información que se
necesita para ejecutar el programa, así
como salidas y estados
Proceso - un programa en ejecución; la
ejecución del proceso debe progresar de
manera secuencial.
* Un proceso incluye:
* program counter (contador del programa)
* stack (pila)
* data section (segmento de datos)
Estados de los procesos
* Nuevo: El proceso es creado.
* Ejecución: Se ejecutan instrucciones.
* Espera: El proceso esta en espera por la
ocurrencia de algún evento.
* Listo: El proceso esta esperando a que le
asignen el procesador.
* Terminado: El proceso finaliza su ejecución.
* Diagrama de estados de los procesos.
Información asociada con cada proceso:
* Estado del proceso
* Program counter
* Registros del CPU
* Información de planificación del CPU
* Memoria
* Información para administración
* Información de estatus de E/S
 Proceso:
programa o comando en ejecución.
Características:
* Un proceso consta de código, datos y pila.
* Los procesos existen en una jerarquía de árbol (varios
Hijos, un sólo padre).
* El sistema asigna un identificador de proceso (PID) único
al iniciar el proceso.
*El planificador de tareas asigna un tiempo compartido
para el proceso según su prioridad (sólo root puede
cambiar prioridad).
2.2 Estados de un proceso y Transiciones de
estado de los procesos.
 un proceso puede pasar por 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 pueden
entender un dispositivo, un dato, etc. El proceso necesita que
ocurra algún evento que le permita poder proseguir su
ejecución.
Transiciones de estado de los procesos
 Estos colores hay que interpretarlos de forma que, el color del borde de los
estados representa a dichos estados, los colores dentro de los círculos nos
dicen las posibles alternativas de acceso hacia otro estado, y los colores
de las flechas nos representan hacia qué estado nos dirigimos si seguimos
la misma.
2.3 Procesos Ligeros (Hilos o
Hebras)
Un proceso ligero, es un programa en ejecución que comparte la imagen de memoria y
otras informaciones con otros procesos ligeros. Como muestra la Figura, un proceso
puede contener un solo flujo de ejecucion, como ocurre en los procesos clasicos, o más
de un flujo de ejecucion (procesos ligeros).
Las informaciones propias se refieren fundamentalmente al contexto de ejecucion,
pudiéndose destacar las siguientes:
• Contador de programa.
• Pila.
• Registros.
• Estado del proceso ligero (ejecutando, listo o bloqueado).
2.3 Procesos Ligeros (Hilos o Hebras)
Todos los procesos ligeros de un mismo proceso comparten la informacion del
mismo. En concreto, comparten:
 Espacio de memoria.
 Variables globales.
 Archivos abiertos.
 Procesos hijos.
 Temporizadores.
 Senales y semaforos.
 Contabilidad.
2.4 CONCURRENCIA Y
SECUENCIABILIDAD
Definición
 La concurrencia comprende un gran número de cuestiones de diseño,
incluyendo la comunicación entre procesos, comparació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.
Presentarse tres contextos
 Varias aplicaciones: La multiprogramación se creó para permitir que el
tiempo de procesador de la máquina fuese compartido dinámicamente
entre varias aplicaciones activas.
 Aplicaciones estructuradas: Como ampliación de los principios del diseño
modular y la programación estructurada, algunas aplicaciones pueden
implementarse eficazmente como un conjunto de procesos concurrentes.
 Estructura del sistema operativo: Las mismas ventajas de estructuración son
aplicables a los programadores de sistemas y se ha comprobado que
algunos sistemas operativos están implementados como un conjunto de
procesos.
Existen tres modelos de computadora en los
que se pueden ejecutar procesos
concurrentes:
Multiprogramación.
Multiprocesador.
Multicomputadora.
Tipos de procesos concurrentes.
 Proceso independiente: Es aquel que ejecuta sin requerir la ayuda o
cooperación de otros procesos.
 Procesos son cooperantes: Son aquellos que están diseñados para trabajar
conjuntamente en alguna actividad, para lo que deben ser capaces de
comunicarse e interactuar entre ellos.
Ventajas y Desventajas
 Ventajas:
Trata de evitar los tiempos muertos de la
UCP
Comparte y optimiza el uso de recursos
Permite la modularidad en las diferentes
etapas del proceso
Acelera los cálculo
Da mayor comodidad
Ventajas y Desventajas
Desventajas:
Inanición e interrupción de
procesos
Ocurrencia de bloqueos
Que dos o más procesos
requieran el mismo recurso.
2.5 Niveles, Objetivos y Criterios de
Planificación
En épocas pasadas de los sistemas de procesamiento por lotes, con una
entrada en forma de imágenes de tarjetas en una cinta magnética, el
algoritmo de planificación era sencillo: solo había que ejecutar el siguiente
trabajo en la cinta.
En los sistemas de multiusuario de tiempo compartido, que se combinaban
con un fondo de trabajos procesados en lote, el algoritmo era más complejo.
Concepto de Planificación.
La planificación hace referencia a un conjunto de políticas y mecanismos
incorporados al sistema operativo que gobiernan el orden en que se ejecutan
los trabajos que deben ser cumplimentados por el sistema informático.
Objetivo de la Planificación
El objetivo principal de la planificación es optimizar el rendimiento del
sistema y proporcionar un buen servicio a todos los procesos que se
encuentren en el. En general, la planificación trata de cubrir los
siguientes objetivos: Justicia. La planificacion debe ser lo mas justa posible con todos los procesos, sin favorecer a
unos y perjudicar a otros.
 Maxima capacidad de ejecucion. Debe dar un servicio eficiente para que todos los
trabajos se realicen lo mas rapidamente posible.
 Maximo numero de usuarios interactivos.
 Predecibilidad. La planificacion
 Minimizacion de la sobrecarga.
 Equilibrio en el uso de recursos.
 Seguridad de las prioridades.
 Evitar la postergacion indefinida. Esto se logra aumentando la prioridad de un proceso
mientras espere por un recurso.
Criterios de planificación
Para realizar los objetivos de la planificación, un
mecanismo de planificación debe considerar lo
siguiente: La limitacion de un proceso a las operaciones de Entrada / Salida: cuando un
proceso consigue la cpu, ?la utiliza solo brevemente antes de generar una
peticion de Entrada / Salida?
 La limitacion de un proceso a la cpu: cuando un proceso obtiene la cpu,
?tiende a usarla hasta que expira su tiempo?
 Si un proceso es por lote (batch) o interactivo: los usuarios interactivos deben
recibir inmediato servicio para garantizar buenos tiempos de respuesta.
 ¿Qué urgencia tiene una respuesta rápida?: por ejemplo, un proceso de
tiempo real de un sistema de control que supervise una refineria de
combustible requiere una respuesta rapida, mas rapida que la respuesta
requerida por un proceso en lotes (batch) que debera entregarse al dia
siguiente.
 La prioridad de un proceso: a mayor prioridad mejor tratamiento.
2.6 TECNICAS DE
ADMINISTRACION DEL
PLANIFICADOR
Se denomina planificador al software del sistema operativo encargado de
asignar los recursos de un sistema entre los procesos que los solicitan.
El planificador es un componente funcional muy importante de los sistemas
operativos multitarea y multiproceso y es esencial en los sistemas operativos
de tiempo real. Su función consiste en repartir el tiempo disponible de un
microprocesador entre todos los procesos para su ejecución. Todo sistema
operativo gestiona los programas mediante el concepto de proceso.
ALGORITMOS DE PLANIFICACIÓN
Los algoritmos de planificación son los que definen que política se va a seguir
para que un proceso pase al estado de ejecución.
 Planificación Round-Robin
 Planificación por prioridad
 Colas múltiples
 Primero el trabajo más corto
 Planificación garantizada
Planificación Round-Robin
 cada proceso tiene asignado un quantum de tiempo para ejecutarse y en
el caso de que no pueda terminar la ejecución en su quantum el proceso
pasa de nuevo a la cola de procesos para ser ejecutado por otro
quantum luego de recorrer la cola para asegurarse que todos los procesos
reciban ese quantum de procesamiento.
Planificación por prioridad
 En la planificación round-robin todos los procesos son tratados con la
misma prioridad. Para el caso de este tipo de planificación a cada
proceso se le asigna una prioridad y los mismos son ejecutados
Colas múltiples
 Las colas múltiples están basadas en una pila que sirve como índice de
una lista de procesos que se tienen que ejecutar.
Primero el trabajo más corto
 se usa para trabajos en batch o de procesamiento or lotes en los cuales se
puede saber cual es el tiempo de duración de la ejecución de cada
proceso y entonces se puede seleccionar primero el trabajo más corto.
Planificación garantizada
 En este modelo de planificación se tiene en cuenta la cantidad de
usuarios en el sistema y se le asigna a cada uno el tiempo de ejecución de
1/n (siendo n la cantidad total de usuarios) de esa forma el planificador
tiene que llevar cuenta del tiempo de ejecución de los procesos y
balancear el tiempo que están utilizando el procesador para cumplir con
la ecuación previa.

Más contenido relacionado

La actualidad más candente

Algoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativosAlgoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativosFernando Morales
 
Concurrencia interbloqueo e inanición
Concurrencia interbloqueo e inaniciónConcurrencia interbloqueo e inanición
Concurrencia interbloqueo e inaniciónjhonfgarcia
 
Unidad 3 administracion de la memoria
Unidad 3 administracion de la memoriaUnidad 3 administracion de la memoria
Unidad 3 administracion de la memoriacaredimaria
 
Dispositvos de entrada y salida
Dispositvos de entrada y salidaDispositvos de entrada y salida
Dispositvos de entrada y salidaitzayana bacilio
 
Gestion de memoria
Gestion de memoriaGestion de memoria
Gestion de memoriaALASBLANKS
 
GESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas OperativosGESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas Operativosadriel91
 
Estados de un proceso
Estados de un procesoEstados de un proceso
Estados de un procesoi92almaa
 
Control de concurrencias investigación
Control de concurrencias investigaciónControl de concurrencias investigación
Control de concurrencias investigaciónJhoel Dgez Garcia
 
Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)
Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)
Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)Juan Lopez
 
Diseño de entraday_salida
Diseño de entraday_salidaDiseño de entraday_salida
Diseño de entraday_salidaJorge Garcia
 
Interbloqueo sistemas operativos
Interbloqueo  sistemas operativosInterbloqueo  sistemas operativos
Interbloqueo sistemas operativosAndy Lopez
 
Sistemas Operativos I- Algoritmo de QUANTUM
Sistemas Operativos I- Algoritmo de QUANTUMSistemas Operativos I- Algoritmo de QUANTUM
Sistemas Operativos I- Algoritmo de QUANTUMMari Cruz
 
Procesos e Hilos en los Sistemas Operativos
Procesos e Hilos en los Sistemas OperativosProcesos e Hilos en los Sistemas Operativos
Procesos e Hilos en los Sistemas OperativosEmmanuel Fortuna
 

La actualidad más candente (20)

Segmentacion de memoria
Segmentacion de memoriaSegmentacion de memoria
Segmentacion de memoria
 
Algoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativosAlgoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativos
 
Gestion de memoria en Linux
Gestion de memoria en LinuxGestion de memoria en Linux
Gestion de memoria en Linux
 
Concurrencia interbloqueo e inanición
Concurrencia interbloqueo e inaniciónConcurrencia interbloqueo e inanición
Concurrencia interbloqueo e inanición
 
Unidad 3 administracion de la memoria
Unidad 3 administracion de la memoriaUnidad 3 administracion de la memoria
Unidad 3 administracion de la memoria
 
Dispositvos de entrada y salida
Dispositvos de entrada y salidaDispositvos de entrada y salida
Dispositvos de entrada y salida
 
Gestion de memoria
Gestion de memoriaGestion de memoria
Gestion de memoria
 
GESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas OperativosGESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas Operativos
 
Administración de memoria
Administración de memoriaAdministración de memoria
Administración de memoria
 
Estados de un proceso
Estados de un procesoEstados de un proceso
Estados de un proceso
 
Control de concurrencias investigación
Control de concurrencias investigaciónControl de concurrencias investigación
Control de concurrencias investigación
 
Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)
Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)
Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)
 
Gestion de Memoria
Gestion de MemoriaGestion de Memoria
Gestion de Memoria
 
Diseño de entraday_salida
Diseño de entraday_salidaDiseño de entraday_salida
Diseño de entraday_salida
 
Round robin
Round robinRound robin
Round robin
 
Implementación de hilos
Implementación de hilos Implementación de hilos
Implementación de hilos
 
Interbloqueo sistemas operativos
Interbloqueo  sistemas operativosInterbloqueo  sistemas operativos
Interbloqueo sistemas operativos
 
Sistemas Operativos I- Algoritmo de QUANTUM
Sistemas Operativos I- Algoritmo de QUANTUMSistemas Operativos I- Algoritmo de QUANTUM
Sistemas Operativos I- Algoritmo de QUANTUM
 
Procesos e Hilos en los Sistemas Operativos
Procesos e Hilos en los Sistemas OperativosProcesos e Hilos en los Sistemas Operativos
Procesos e Hilos en los Sistemas Operativos
 
Procesos e hilos- Parte 1
Procesos e hilos- Parte 1Procesos e hilos- Parte 1
Procesos e hilos- Parte 1
 

Destacado

Unidad 4: Procesos y Administracion del Procesador
Unidad 4: Procesos y Administracion del ProcesadorUnidad 4: Procesos y Administracion del Procesador
Unidad 4: Procesos y Administracion del ProcesadorUPTM
 
Administración de procesos en el S.O.
Administración de procesos en el S.O.Administración de procesos en el S.O.
Administración de procesos en el S.O.Carlos Solano
 
GESTION DE PROCESOS EN SISTEMAS OPERATIVOS
GESTION DE PROCESOS EN SISTEMAS OPERATIVOSGESTION DE PROCESOS EN SISTEMAS OPERATIVOS
GESTION DE PROCESOS EN SISTEMAS OPERATIVOSomarhcc
 
Unidad 2 AdministracióN De Procesos
Unidad 2 AdministracióN De ProcesosUnidad 2 AdministracióN De Procesos
Unidad 2 AdministracióN De ProcesosCESAR
 
SO - Administración de Memoria
SO - Administración de MemoriaSO - Administración de Memoria
SO - Administración de MemoriaLuis Eraso
 
Proceso Administrativo
Proceso AdministrativoProceso Administrativo
Proceso Administrativoguest0cdf95
 
Administración de Memoria - Sistemas Operativos
Administración de Memoria - Sistemas OperativosAdministración de Memoria - Sistemas Operativos
Administración de Memoria - Sistemas OperativosPablo Macon
 
Software de gestión de procesos
Software de gestión de procesosSoftware de gestión de procesos
Software de gestión de procesosPIBSEV
 
Linux ud7 - gestion de procesos
Linux   ud7 - gestion de procesosLinux   ud7 - gestion de procesos
Linux ud7 - gestion de procesosJavier Muñoz
 
Inventarios y bodegas
Inventarios y bodegas Inventarios y bodegas
Inventarios y bodegas seily15
 
Evolución de la calidad desde un enfoque integrado.
Evolución de la calidad desde un enfoque integrado.Evolución de la calidad desde un enfoque integrado.
Evolución de la calidad desde un enfoque integrado.NayibethLuis
 
Unidad 3 gestion de procesos en linux
Unidad 3 gestion de procesos en linuxUnidad 3 gestion de procesos en linux
Unidad 3 gestion de procesos en linuxjcfarit
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesosYoselvi
 

Destacado (20)

Unidad 4: Procesos y Administracion del Procesador
Unidad 4: Procesos y Administracion del ProcesadorUnidad 4: Procesos y Administracion del Procesador
Unidad 4: Procesos y Administracion del Procesador
 
Administración de procesos en el S.O.
Administración de procesos en el S.O.Administración de procesos en el S.O.
Administración de procesos en el S.O.
 
Administración de procesos
Administración de  procesosAdministración de  procesos
Administración de procesos
 
GESTION DE PROCESOS EN SISTEMAS OPERATIVOS
GESTION DE PROCESOS EN SISTEMAS OPERATIVOSGESTION DE PROCESOS EN SISTEMAS OPERATIVOS
GESTION DE PROCESOS EN SISTEMAS OPERATIVOS
 
Unidad 2 AdministracióN De Procesos
Unidad 2 AdministracióN De ProcesosUnidad 2 AdministracióN De Procesos
Unidad 2 AdministracióN De Procesos
 
SO - Administración de Memoria
SO - Administración de MemoriaSO - Administración de Memoria
SO - Administración de Memoria
 
Administración de Memoria
Administración de MemoriaAdministración de Memoria
Administración de Memoria
 
Proceso Administrativo
Proceso AdministrativoProceso Administrativo
Proceso Administrativo
 
Administración de Memoria - Sistemas Operativos
Administración de Memoria - Sistemas OperativosAdministración de Memoria - Sistemas Operativos
Administración de Memoria - Sistemas Operativos
 
PROCESO ADMINISTRATIVO
PROCESO ADMINISTRATIVOPROCESO ADMINISTRATIVO
PROCESO ADMINISTRATIVO
 
UNIDAD II ADMINISTRADOR DE PROCESADOR
UNIDAD II ADMINISTRADOR DE PROCESADORUNIDAD II ADMINISTRADOR DE PROCESADOR
UNIDAD II ADMINISTRADOR DE PROCESADOR
 
Introducción a los Sistemas Operativos
Introducción a los Sistemas OperativosIntroducción a los Sistemas Operativos
Introducción a los Sistemas Operativos
 
Software de gestión de procesos
Software de gestión de procesosSoftware de gestión de procesos
Software de gestión de procesos
 
Linux ud7 - gestion de procesos
Linux   ud7 - gestion de procesosLinux   ud7 - gestion de procesos
Linux ud7 - gestion de procesos
 
Inventarios y bodegas
Inventarios y bodegas Inventarios y bodegas
Inventarios y bodegas
 
Evolución de la calidad desde un enfoque integrado.
Evolución de la calidad desde un enfoque integrado.Evolución de la calidad desde un enfoque integrado.
Evolución de la calidad desde un enfoque integrado.
 
Unidad 3 gestion de procesos en linux
Unidad 3 gestion de procesos en linuxUnidad 3 gestion de procesos en linux
Unidad 3 gestion de procesos en linux
 
Operaciones Sobre Procesos
Operaciones Sobre ProcesosOperaciones Sobre Procesos
Operaciones Sobre Procesos
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesos
 
Presentacion so
Presentacion soPresentacion so
Presentacion so
 

Similar a Administración de procesos y del procesador

Similar a Administración de procesos y del procesador (20)

Grupo1
Grupo1Grupo1
Grupo1
 
Procesos de un sistema operativo
Procesos de un sistema operativoProcesos de un sistema operativo
Procesos de un sistema operativo
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesos
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesos
 
Introduccion a los procesos
Introduccion a los  procesosIntroduccion a los  procesos
Introduccion a los procesos
 
Prueba
PruebaPrueba
Prueba
 
Sistemas operativos - 6to SSI
Sistemas operativos - 6to SSISistemas operativos - 6to SSI
Sistemas operativos - 6to SSI
 
U n i d a d 2 sist oper
U n i d a d    2 sist operU n i d a d    2 sist oper
U n i d a d 2 sist oper
 
21
2121
21
 
S..O. Unidad 2
S..O. Unidad 2S..O. Unidad 2
S..O. Unidad 2
 
SO2_U2_PROCESOS, HILOS Y COMUNICACIÓN.pptx
SO2_U2_PROCESOS, HILOS Y COMUNICACIÓN.pptxSO2_U2_PROCESOS, HILOS Y COMUNICACIÓN.pptx
SO2_U2_PROCESOS, HILOS Y COMUNICACIÓN.pptx
 
3 procesos
3 procesos3 procesos
3 procesos
 
Planificación de un_proceso
Planificación de un_procesoPlanificación de un_proceso
Planificación de un_proceso
 
104842258 unidad-2-administracion-de-procesos-del-procesador
104842258 unidad-2-administracion-de-procesos-del-procesador104842258 unidad-2-administracion-de-procesos-del-procesador
104842258 unidad-2-administracion-de-procesos-del-procesador
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesos
 
So 2da unidad
So 2da unidadSo 2da unidad
So 2da unidad
 
:)Resumen
:)Resumen:)Resumen
:)Resumen
 
Servicios de los Sistemas Operativos para la Gestion de Procesos
Servicios de los Sistemas Operativos para la Gestion de ProcesosServicios de los Sistemas Operativos para la Gestion de Procesos
Servicios de los Sistemas Operativos para la Gestion de Procesos
 
Unidad 2 Sistemas Operativos
Unidad 2 Sistemas OperativosUnidad 2 Sistemas Operativos
Unidad 2 Sistemas Operativos
 
Clases procesos
Clases procesosClases procesos
Clases procesos
 

Administración de procesos y del procesador

  • 2. 2.1 Concepto de proceso. Un proceso es básicamente un programa en ejecución.  Consta del programa ejecutable, los datos y la pila del programa, su contador de programa, apuntador de pila y otros registros, y la otra información que se necesita para ejecutar el programa, así como salidas y estados
  • 3. Proceso - un programa en ejecución; la ejecución del proceso debe progresar de manera secuencial. * Un proceso incluye: * program counter (contador del programa) * stack (pila) * data section (segmento de datos)
  • 4. Estados de los procesos * Nuevo: El proceso es creado. * Ejecución: Se ejecutan instrucciones. * Espera: El proceso esta en espera por la ocurrencia de algún evento. * Listo: El proceso esta esperando a que le asignen el procesador. * Terminado: El proceso finaliza su ejecución. * Diagrama de estados de los procesos.
  • 5. Información asociada con cada proceso: * Estado del proceso * Program counter * Registros del CPU * Información de planificación del CPU * Memoria * Información para administración * Información de estatus de E/S
  • 6.  Proceso: programa o comando en ejecución. Características: * Un proceso consta de código, datos y pila. * Los procesos existen en una jerarquía de árbol (varios Hijos, un sólo padre). * El sistema asigna un identificador de proceso (PID) único al iniciar el proceso. *El planificador de tareas asigna un tiempo compartido para el proceso según su prioridad (sólo root puede cambiar prioridad).
  • 7. 2.2 Estados de un proceso y Transiciones de estado de los procesos.  un proceso puede pasar por 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 pueden entender un dispositivo, un dato, etc. El proceso necesita que ocurra algún evento que le permita poder proseguir su ejecución.
  • 8. Transiciones de estado de los procesos
  • 9.  Estos colores hay que interpretarlos de forma que, el color del borde de los estados representa a dichos estados, los colores dentro de los círculos nos dicen las posibles alternativas de acceso hacia otro estado, y los colores de las flechas nos representan hacia qué estado nos dirigimos si seguimos la misma.
  • 10. 2.3 Procesos Ligeros (Hilos o Hebras) Un proceso ligero, es un programa en ejecución que comparte la imagen de memoria y otras informaciones con otros procesos ligeros. Como muestra la Figura, un proceso puede contener un solo flujo de ejecucion, como ocurre en los procesos clasicos, o más de un flujo de ejecucion (procesos ligeros). Las informaciones propias se refieren fundamentalmente al contexto de ejecucion, pudiéndose destacar las siguientes: • Contador de programa. • Pila. • Registros. • Estado del proceso ligero (ejecutando, listo o bloqueado).
  • 11. 2.3 Procesos Ligeros (Hilos o Hebras) Todos los procesos ligeros de un mismo proceso comparten la informacion del mismo. En concreto, comparten:  Espacio de memoria.  Variables globales.  Archivos abiertos.  Procesos hijos.  Temporizadores.  Senales y semaforos.  Contabilidad.
  • 13. Definición  La concurrencia comprende un gran número de cuestiones de diseño, incluyendo la comunicación entre procesos, comparació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.
  • 14. Presentarse tres contextos  Varias aplicaciones: La multiprogramación se creó para permitir que el tiempo de procesador de la máquina fuese compartido dinámicamente entre varias aplicaciones activas.  Aplicaciones estructuradas: Como ampliación de los principios del diseño modular y la programación estructurada, algunas aplicaciones pueden implementarse eficazmente como un conjunto de procesos concurrentes.  Estructura del sistema operativo: Las mismas ventajas de estructuración son aplicables a los programadores de sistemas y se ha comprobado que algunos sistemas operativos están implementados como un conjunto de procesos.
  • 15. Existen tres modelos de computadora en los que se pueden ejecutar procesos concurrentes: Multiprogramación. Multiprocesador. Multicomputadora.
  • 16. Tipos de procesos concurrentes.  Proceso independiente: Es aquel que ejecuta sin requerir la ayuda o cooperación de otros procesos.  Procesos son cooperantes: Son aquellos que están diseñados para trabajar conjuntamente en alguna actividad, para lo que deben ser capaces de comunicarse e interactuar entre ellos.
  • 17. Ventajas y Desventajas  Ventajas: Trata de evitar los tiempos muertos de la UCP Comparte y optimiza el uso de recursos Permite la modularidad en las diferentes etapas del proceso Acelera los cálculo Da mayor comodidad
  • 18. Ventajas y Desventajas Desventajas: Inanición e interrupción de procesos Ocurrencia de bloqueos Que dos o más procesos requieran el mismo recurso.
  • 19. 2.5 Niveles, Objetivos y Criterios de Planificación En épocas pasadas de los sistemas de procesamiento por lotes, con una entrada en forma de imágenes de tarjetas en una cinta magnética, el algoritmo de planificación era sencillo: solo había que ejecutar el siguiente trabajo en la cinta. En los sistemas de multiusuario de tiempo compartido, que se combinaban con un fondo de trabajos procesados en lote, el algoritmo era más complejo. Concepto de Planificación. La planificación hace referencia a un conjunto de políticas y mecanismos incorporados al sistema operativo que gobiernan el orden en que se ejecutan los trabajos que deben ser cumplimentados por el sistema informático.
  • 20. Objetivo de la Planificación El objetivo principal de la planificación es optimizar el rendimiento del sistema y proporcionar un buen servicio a todos los procesos que se encuentren en el. En general, la planificación trata de cubrir los siguientes objetivos: Justicia. La planificacion debe ser lo mas justa posible con todos los procesos, sin favorecer a unos y perjudicar a otros.  Maxima capacidad de ejecucion. Debe dar un servicio eficiente para que todos los trabajos se realicen lo mas rapidamente posible.  Maximo numero de usuarios interactivos.  Predecibilidad. La planificacion  Minimizacion de la sobrecarga.  Equilibrio en el uso de recursos.  Seguridad de las prioridades.  Evitar la postergacion indefinida. Esto se logra aumentando la prioridad de un proceso mientras espere por un recurso.
  • 21. Criterios de planificación Para realizar los objetivos de la planificación, un mecanismo de planificación debe considerar lo siguiente: La limitacion de un proceso a las operaciones de Entrada / Salida: cuando un proceso consigue la cpu, ?la utiliza solo brevemente antes de generar una peticion de Entrada / Salida?  La limitacion de un proceso a la cpu: cuando un proceso obtiene la cpu, ?tiende a usarla hasta que expira su tiempo?  Si un proceso es por lote (batch) o interactivo: los usuarios interactivos deben recibir inmediato servicio para garantizar buenos tiempos de respuesta.  ¿Qué urgencia tiene una respuesta rápida?: por ejemplo, un proceso de tiempo real de un sistema de control que supervise una refineria de combustible requiere una respuesta rapida, mas rapida que la respuesta requerida por un proceso en lotes (batch) que debera entregarse al dia siguiente.  La prioridad de un proceso: a mayor prioridad mejor tratamiento.
  • 22. 2.6 TECNICAS DE ADMINISTRACION DEL PLANIFICADOR Se denomina planificador al software del sistema operativo encargado de asignar los recursos de un sistema entre los procesos que los solicitan.
  • 23. El planificador es un componente funcional muy importante de los sistemas operativos multitarea y multiproceso y es esencial en los sistemas operativos de tiempo real. Su función consiste en repartir el tiempo disponible de un microprocesador entre todos los procesos para su ejecución. Todo sistema operativo gestiona los programas mediante el concepto de proceso.
  • 24. ALGORITMOS DE PLANIFICACIÓN Los algoritmos de planificación son los que definen que política se va a seguir para que un proceso pase al estado de ejecución.
  • 25.  Planificación Round-Robin  Planificación por prioridad  Colas múltiples  Primero el trabajo más corto  Planificación garantizada
  • 26. Planificación Round-Robin  cada proceso tiene asignado un quantum de tiempo para ejecutarse y en el caso de que no pueda terminar la ejecución en su quantum el proceso pasa de nuevo a la cola de procesos para ser ejecutado por otro quantum luego de recorrer la cola para asegurarse que todos los procesos reciban ese quantum de procesamiento.
  • 27. Planificación por prioridad  En la planificación round-robin todos los procesos son tratados con la misma prioridad. Para el caso de este tipo de planificación a cada proceso se le asigna una prioridad y los mismos son ejecutados
  • 28. Colas múltiples  Las colas múltiples están basadas en una pila que sirve como índice de una lista de procesos que se tienen que ejecutar.
  • 29. Primero el trabajo más corto  se usa para trabajos en batch o de procesamiento or lotes en los cuales se puede saber cual es el tiempo de duración de la ejecución de cada proceso y entonces se puede seleccionar primero el trabajo más corto.
  • 30. Planificación garantizada  En este modelo de planificación se tiene en cuenta la cantidad de usuarios en el sistema y se le asigna a cada uno el tiempo de ejecución de 1/n (siendo n la cantidad total de usuarios) de esa forma el planificador tiene que llevar cuenta del tiempo de ejecución de los procesos y balancear el tiempo que están utilizando el procesador para cumplir con la ecuación previa.