0% encontró este documento útil (0 votos)
38 vistas13 páginas

Presentacion

El documento aborda la administración de procesos y del procesador en sistemas operativos, definiendo un proceso como una tarea en ejecución que incluye instrucciones y estados como ejecución, bloqueado y listo. Se discuten los procesos ligeros o hilos, su funcionamiento y características, así como la concurrencia y la sincronización entre procesos. Además, se detallan los niveles de planificación, objetivos y criterios que guían la asignación de recursos en un sistema operativo.

Cargado por

morenasanta369
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
38 vistas13 páginas

Presentacion

El documento aborda la administración de procesos y del procesador en sistemas operativos, definiendo un proceso como una tarea en ejecución que incluye instrucciones y estados como ejecución, bloqueado y listo. Se discuten los procesos ligeros o hilos, su funcionamiento y características, así como la concurrencia y la sincronización entre procesos. Además, se detallan los niveles de planificación, objetivos y criterios que guían la asignación de recursos en un sistema operativo.

Cargado por

morenasanta369
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

lOMoARcPSD|52510077

Presentacion

Sistemas Operativos (Universidad Autónoma de Santo Domingo)

Escanea para abrir en Studocu

Studocu no está patrocinado ni avalado por ningún colegio o universidad.


Descargado por Santa Luis Morel (santaluisamorel1234@[Link])
lOMoARcPSD|52510077

Asignatura : Sistemas Operativos - INF 3240


Sección : 06
Profesor : Servio Quevedo Rosario
Tema : Administración de Procesos y del Procesador
Estudiante Administración
: Víctor Manuel de
García
Procesos y del Procesador
Matricula : 100450033
Fecha : 25/10/2021
Proceso
Un proceso es una tarea, actividad, procedimiento o programa que
está en ejecución. Este proceso contiene instrucciones de un
programa que estarán destinadas a ser ejecutadas por el
microprocesador. Los procesos son creados y destruidos por el
sistema operativo, así como también este se debe hacer cargo de la
comunicación entre procesos, pero lo hace a petición de otros
procesos. El mecanismo por el cual un proceso crea otro proceso se
denomina bifurcación. Los nuevos procesos son independientes y no
comparten memoria (es decir, información) con el proceso que los ha
creado. Además de incluir al programa en ejecución, un proceso
incluye a los valores activos del contador, registros y variables del
mismo. Cada proceso tiene su propia CPU virtual, pero si esta se
alterna entre ellos, la velocidad a la que se ejecutan dichos procesos
no será uniforme.

Estados y transiciones de los procesos


Un proceso pasa por una serie de estados discretos a los cuales les
afectan diferentes circunstancias para lograr que estos cambien de

Descargado por Santa Luis Morel (santaluisamorel1234@[Link])


lOMoARcPSD|52510077

estado. Cada proceso es una entidad independiente pero


frecuentemente debe interactuar con otros procesos.

Estado del proceso son: Ejecución, Bloqueado y listo.


 Ejecución, es un proceso que está haciendo uso del
procesador.

 Bloqueado, No puede ejecutarse hasta que un evento externo


sea llevado a cabo.

 Listo, ha dejado disponible al procesador para que otro


proceso pueda ocuparlo.

Las posibles transiciones son 4. La primera se realiza cuando el


sistema operativo determina que el proceso no puede continuar justo
en ese momento, en algunos sistemas se puede hacer una llamada al
sistema "pause" para pasar al estado bloqueado.
Las transiciones 2 y 3 son llevadas a cabo por el planificador de
procesos, siendo que el proceso no tiene conocimiento de este.
La transición 2 se da cuando el planificador de procesos decide que el
proceso ya estuvo el tiempo suficiente en ejecución y debe dar paso a
la ejecución de otros procesos.
La transición 3 se realiza cuando todos los procesos han ocupado
tiempo del procesador y debe retomarse el primer proceso.
La transición 4 ocurre cuando se produce un evento externo por el que
un proceso estaba en espera, por ejemplo, introducir datos desde la
terminal. Si no hay otro proceso en ejecución en ese instante, la
transición 3 se activa y el proceso comienza a ejecutarse, también
podría pasar al estado de "listo" y esperar un momento para iniciar la
ejecución.

Descargado por Santa Luis Morel (santaluisamorel1234@[Link])


lOMoARcPSD|52510077

Procesos ligeros: hilos o hebras


Un proceso ligero o thread, es un programa en ejecución que
comparte la imagen de la memoria y otras informaciones con otros
procesos ligeros. Son una unidad básica de utilización de la CPU que
consiste en un juego de registros y un espacio de pila. Estos pueden
estar en tres estados: ejecutando, listo o bloqueado.

Algunas de las características de estos procesos son las siguientes:


 Se comparten recursos. La compartición de la memoria permite
a las hebras pares comunicarse sin usar ningún mecanismo de
comunicación inter-proceso del SO.

 La conmutación de contexto es más rápida gracias al extenso


compartir de recursos.

 No hay protección entre las hebras. Una hebra puede escribir en


la pila de otra hebra del mismo proceso.

 La sobrecarga debida a su creación y comunicación es menor


que en los procesos pesados.

 Cada hilo pertenece a un proceso pesado.

 Todos los hilos comparten su espacio de direccionamiento.

 Cada hilo dispone de su propia política de planificación, pila y


contador de programa.

Un hilo de ejecución o hebra o es la unidad de procesamiento más


pequeña que puede ser planificada por un sistema operativo.
Al crearse un hilo permite a una aplicación ejecutar varias tareas a la
vez, o sea, de manera concurrente.

Descargado por Santa Luis Morel (santaluisamorel1234@[Link])


lOMoARcPSD|52510077

Cuando un hilo modifica un dato en la memoria, los otros hilos


acceden a ese dato modificado inmediatamente, lo que quiere decir
que comparte los mismos recursos, es por esto que en conjunto se les
denomina como un proceso.
Los hilos poseen un estado de ejecución y pueden sincronizarse entre
ellos para evitar problemas de compartimiento de recursos. Por lo
general cada hilo tiene una tarea específica y determinada, como
forma de aumentar la eficiencia del uso del procesador. Sus
principales estados son ejecución, listo y bloqueado.

 Creación: Cuando se crea un proceso se crea un hilo para ese


proceso. Luego, este hilo puede crear otros hilos dentro del
mismo proceso, proporcionando un puntero de instrucción y los
argumentos del nuevo hilo.

 Bloqueo: Cuando un hilo necesita esperar por un suceso, se


bloquea, y cuando esto suceda el procesador podrá pasar a
ejecutar otro hilo que esté al final mientras el anterior permanece
bloqueado.

 Desbloqueo: Cuando el suceso por el que el hilo se bloqueó se


produce, el mismo pasa al final.

 Terminación: Cuando un hilo finaliza se liberan tanto su contexto


como sus columnas.

Concurrencia y Secuenciabilidad

La concurrencia es una propiedad de los sistemas en la cual los procesos


de un cómputo se hacen simultáneamente y pueden interactuar entre

Descargado por Santa Luis Morel (santaluisamorel1234@[Link])


lOMoARcPSD|52510077

ellos, es decir, es la ejecución de varias tareas al mismo tiempo.


A la secuenciabilidad también se le puede llamar sincronización, y esto
significa provocar que 2 o más procesos trabajen secuencialmente de una
forma que, cuando se necesite que se realicen 2 o más tareas en un
orden específico, no interfieran una con la otra y altere su funcionamiento.
Los procesos concurrentes pueden funcionar de forma independiente
unos de otros o puede ser que en ocasiones requieran cierta
sincronización. Existen tres formas modelos de computadora en los que
se puede pueden ejecutar procesos concurrentes:

 Multiprogramación con un único procesador.


En este modelo todos los procesos concurrentes ejecutan sobre un único
procesador. El sistema operativo se encarga de ir repartiendo el tiempo
del procesador entre los distintos procesos, intercalando la ejecución de
los mismos para dar así una apariencia de ejecución simultánea.

 Multiprocesador.
Un multiprocesador es una maquina formada por un conjunto de
procesadores que comparten memoria principal. En este tipo de
arquitecturas, los procesos concurrentes no solo pueden intercalar su
ejecución sino también superponerla. En este caso si existe una
verdadera ejecución simultanea de procesos, al coincidir las fases de
procesamiento de distintos procesos. En un instante dado se pueden
ejecutar de forma simultanea tantos procesos como procesadores haya.

 Multicomputadora.
Una multicomputadora es una máquina de memoria distribuida, en
contraposición con el multiprocesador que es de memoria compartida.
Está formada por una serie de computadoras completas con su UCP,
memoria principal y, en su caso, periferia. Cada uno de estos
procesadores completo se denomina nodo. Los nodos se encuentran
conectados y se comunican entre sí a través de una red de interconexión,

Descargado por Santa Luis Morel (santaluisamorel1234@[Link])


lOMoARcPSD|52510077

empleando el método de paso de mensajes. En este tipo de arquitecturas


también es posible la ejecución simultanea de los procesos sobre los
distintos procesadores.

Existen dos tipos de procesos concurrentes, y se pueden clasificar como:


 Proceso independiente: Es aquel proceso que se ejecuta o trabaja
por sí solo, sin requerir la ayuda o cooperación de otros procesos.

 Procesos cooperantes: Son aquellos que están diseñados para


trabajar conjuntamente en alguna actividad, por lo que deben ser
capaces de comunicarse e interactuar entre ellos.

La sincronización entre procesos es necesaria para prevenir y/o corregir


errores de sincronización debidos al acceso concurrente a recursos
compartidos. Sin una sincronización adecuada entre procesos, la
actualización de variables compartidas puede inducir a errores de tiempo
relacionados con la concurrencia que algunas veces son difíciles de
depurar.

Para que los procesos puedan sincronizarse es necesario contar con


servicios que permitan bloquear o suspender la ejecución de un proceso
en caso de que se requiera. Los principales mecanismos de
sincronización que ofrecen los sistemas operativos son:
 Señales
 Tuberías
 Semáforos
 Mutex y variables condicionales
 Paso de mensajes
Niveles, objetivos y criterios de planificación

Cuando más de un proceso es ejecutable, el sistema operativo debe


decidir cuál de ellos debe ejecutarse en primer término. Aquí es donde

Descargado por Santa Luis Morel (santaluisamorel1234@[Link])


lOMoARcPSD|52510077

entra el planificador, que es la porción del sistema operativo que decide, y


el algoritmo de planificación, que es el utilizado.

Se consideran tres niveles de la planificación se definen a continuación:

 Planificación de alto nivel: también denominado planificación de


trabajos. Este determina a qué trabajos se les va a permitir competir
activamente por los recursos del sistema.

 Planificación de nivel intermedio: este determina a qué procesos se


les puede permitir competir por la CPU, ayuda a alcanzar ciertas
metas en el rendimiento total del sistema, responde a fluctuaciones
a corto plazo en la carga del sistema y efectúa suspensiones y
reanudaciones de procesos.

 Planificación de bajo nivel: determina a qué proceso listo se le


asigna la CPU cuando esta queda disponible y asigna la CPU al
mismo.

Los objetivos que tiene la planificación son los siguientes:

 Ser justa: significa que todos los procesos son tratados de igual
manera y ningún proceso es postergado indefinidamente.

 Maximizar el número de procesos servidos por unidad de tiempo, p


sea, maximizar la capacidad de ejecución.

 Maximizar el número de usuarios interactivos que reciban unos


tiempos de respuesta aceptables.

 Ser predecible: quiere decir que un trabajo dado debe ejecutarse


aproximadamente en la misma cantidad de tiempo
independientemente de la carga del sistema.

Descargado por Santa Luis Morel (santaluisamorel1234@[Link])


lOMoARcPSD|52510077

 Minimizar la sobrecarga.

 Equilibrar el uso de recursos, lo que favorecerá a los procesos que


utilizarán recursos infrautilizados.

 Equilibrar respuesta y utilización: la mejor manera de garantizar


buenos tiempos de respuesta es disponer de los recursos
suficientes cuando se necesitan.

 Evitar la postergación indefinida: mientras un proceso espera por un


recurso, su prioridad debe aumentar, así la prioridad llegará a ser
tan alta que el proceso recibirá el recurso esperado.

 Asegurar la prioridad.

 Dar preferencia a los procesos que mantienen recursos claves: un


proceso de baja prioridad podría mantener un recurso clave que
puede ser requerido por un proceso de más alta prioridad.
 Dar mejor tratamiento a los procesos que muestren un
comportamiento deseable.

 Degradarse suavemente con cargas pesadas: esto quiere decir que


un mecanismo de planificación no debe colapsar con una carga
exigente del sistema, y para evitar esto no se permite que se creen
nuevos procesos cuando la carga ya es pesada y se le da servicio a
la carga más pesada al proporcionar un nivel moderadamente
reducido de servicio a todos los procesos.

Los principales criterios de planificación son la equidad, la eficacia, el


tiempo de respuesta, el tiempo de regreso y el rendimiento.
 Equidad: garantiza que cada proceso obtiene su proporción justa de
la CPU.

 Eficacia: significa mantener ocupada la CPU el 100 % del tiempo.

Descargado por Santa Luis Morel (santaluisamorel1234@[Link])


lOMoARcPSD|52510077

 Tiempo de respuesta: minimizar el tiempo de respuesta para los


usuarios interactivos.

 Tiempo de regreso: minimizar el tiempo que deben esperar los


usuarios por lotes para obtener sus resultados.

 Rendimiento: maximizar el número de tareas procesadas por hora.

Técnicas de administración del planificador

 Planificación FIFO
Los procedimientos son atendidos de acuerdo con el orden de llegada.
FIFO, por sus siglas en inglés, quiere decir First In, First Out, o sea,
primero en entrar es el primero en salir. Una vez que un proceso tenga
la CPU, se ejecuta hasta su terminación. Esta planificación es un poco
injusta, debido a que los grandes procesos hacen esperar a trabajos
pequeños, y los trabajos sin importancia hacen esperar a los trabajos
importantes. Además, no se pueden garantizar buenos tiempos de
espera.

 Planificación por Prioridad al más corto (SJF, Short Job First)


El proceso con tiempo estimado de ejecución hasta terminación más
corto es el siguiente en ser ejecutado. Esta planificación reduce el
tiempo de espera de los procesos, no obstante, tiene una varianza
mayor que en FIFO, pues favorece a los procesos cortos a costa de
los procesos largos, debido a que su tiempo de espera promedio es
menor.
Además, se requiere un conocimiento preciso del tiempo de ejecución
de un proceso, lo que por lo general se desconoce.

Descargado por Santa Luis Morel (santaluisamorel1234@[Link])


lOMoARcPSD|52510077

 Planificación por Prioridad al Tiempo Restante más Corto (SRTF,


Short Remaining Time First)
A diferencia del anterior, este sí es útil en sistemas de tiempo
compartido, los trabajos largos tienen un promedio y una varianza de
los tiempos de espera aún mayor, pero tiene mayor sobrecarga.
Consiste en que el proceso con tiempo estimado de ejecución menor
para analizar es el siguiente en ser ejecutado.

 Planificación el Siguiente con Relación de Respuesta Máxima


(HRN)
Esta planificación corrige el exceso de perjuicio hacia los procesos
largos y el exceso de favoritismo hacia los nuevos trabajos cortos que
tiene el SJF como debilidad. Para darle prioridad a cada proceso
influye el tiempo de servicio del trabajo y la cantidad de tiempo que el
trabajo ha estado esperando ser atendido o servido. Cuando un
proceso ha obtenido la CPU, entonces este corre hasta terminar.

 Planificación del tiempo restante más corto primero (SRT)


El proceso con el tiempo estimado de ejecución menor para llegar a su
terminación es el siguiente en ser ejecutado, incluyendo las nuevas
llegadas. Un proceso en ejecución puede ser apropiado por un nuevo
proceso con un tiempo estimado de ejecución menor. Además, testa
planificación tiene una sobrecarga mayor que la SJF, por lo que debe
mantener un registro del tiempo de servicio transcurrido del trabajo en
ejecución y controlar las apropiaciones ocasionales.

 Planificación el siguiente con relación de respuesta máxima


(HRT)
Esta corrige algunas debilidades de SJF como lo son el favoritismo por
los tamaños pequeños, dándole prioridad a los trabajos que estén en

Descargado por Santa Luis Morel (santaluisamorel1234@[Link])


lOMoARcPSD|52510077

función del tiempo de servicio del trabajo y del tiempo en que un


proceso ha estado esperando ser servido. Cuando el trabajo obtiene la
CPU, este se ejecuta hasta su terminación. Fue desarrollada por
Brinch Hansen en 1971.

 Planificación Round Robin (RR)


Los procesos se despachan en FIFO, pero se les otorga una cantidad
limitada de tiempo de CPU que se llama división de tiempo o cuánto.
Si un proceso no termina antes de que se termine su tiempo de CPU,
este será apropiado y asignado al siguiente proceso en espera y se
colocará al final de la lista.

Conclusión

Podemos concluir, entonces, que la administración de procesos se


utiliza para proporcionar información sobre estos y sobre los
programas que se están activos en la computadora. Su importancia
radica en que los resultados se alcanzan con más eficiencia cuando
las actividades y los recursos relacionados se gestionan como un
proceso. También es importante conocer la planificación de dichos
procesos, pues así sabemos cuál es más conveniente para cada uno
de ellos y cómo funciona su ejecución

Descargado por Santa Luis Morel (santaluisamorel1234@[Link])


lOMoARcPSD|52510077

Bibliografías
[Link]
[Link]
[Link]
[Link]
proceso/[Link]
[Link]
[Link]
administrador-del-proceso-y-del-procesador/2-3-procesos-ligeros-hilos-
o-hebras
[Link]
administrador-del-proceso-y-del-procesador/2-4-concurrencia-y-
secuenciabilidad
[Link]
administrador-del-proceso-y-del-procesador/2-5-niveles-objetivos-y-
criterios-de-planificacion

Descargado por Santa Luis Morel (santaluisamorel1234@[Link])

También podría gustarte