RESUMEN UNIDAD 2: Administración de Procesos y del procesador.
Summary
TLDREl guion trata sobre conceptos fundamentales de procesos y hilos en sistemas operativos. Se explica que un proceso es un programa en ejecución con su propia CPU virtual, y los hilos son líneas de ejecución dentro de un proceso. Se discuten los estados de los procesos, como 'nuevo', 'listo', 'ejecutándose' y 'finalizado', y las transiciones entre ellos. Además, se exploran temas como la concurrencia, la planificación de procesos y los objetivos y criterios de la planificación, como la eficiencia y el cumplimiento de plazos. El guion también menciona técnicas de planificación, como la planificación a plazo fijo y la planificación primero en llegar, primero en salir.
Takeaways
- 💻 Un proceso es un programa en ejecución, considerado una entidad con su propia CPU virtual, aunque en la realidad la CPU se comparte entre procesos.
- 🔄 Los procesos son manejados por el sistema operativo, que se encarga de la comunicación entre ellos y el mecanismo de bifurcación para la creación de nuevos procesos.
- 🆔 Cada proceso tiene un identificador único, un estado que indica si está en ejecución, bloqueado, listo o finalizado, y otros elementos como la prioridad y contador del programa.
- 🧩 Los procesos pueden ser independientes o compartir el espacio de memoria con el proceso padre, dependiendo de cómo sean creados.
- 🔄 Las transiciones de estado en un proceso, como de 'listo' a 'ejecutado' o de 'ejecutado' a 'listo', son gestionadas por el sistema operativo y registradas en el PCB (Plan de Control de Proceso).
- 🧵 Un hilo o hebra es una línea de ejecución dentro de un proceso, siendo una estructura más ligera que permite una menor sobrecarga en la creación y comunicación.
- 🔄 Los hilos tienen estados como creación, bloqueo, desbloqueo y terminación, y pueden ejecutarse en paralelo en múltiples CPUs si están en un proceso multihilo.
- 🤝 La concurrencia se refiere a la ejecución simultánea de actividades que pueden necesitar sincronizarse, y puede ocurrir en sistemas con o sin múltiples procesadores.
- 📈 La planificación de procesos es un proceso crítico en el sistema operativo que decide qué proceso se ejecutará, y se basa en algoritmos y objetivos como eficiencia y equidad en el uso del tiempo de CPU.
- 📊 Los algoritmos de planificación varían, desde planificación a plazo fijo, que requiere un compromiso de tiempo específico, hasta planificación primero en llegar, que simplemente ejecuta los procesos en el orden de llegada.
Q & A
¿Qué es un proceso en el contexto de la informática?
-Un proceso es un programa que se está ejecutando, considerado como una actividad asincrónica sin bloqueo, o una entidad a la cual se le asignan recursos de procesamiento.
¿Qué es una CPU virtual y cómo se relaciona con los procesos?
-Una CPU virtual es un concepto por el cual cada proceso tiene su propia CPU dedicada, aunque en la realidad física, una CPU puede cambiar de proceso a proceso.
¿Cuál es la función del sistema operativo en la gestión de procesos?
-El sistema operativo es responsable de crear y destruir procesos, gestionar la comunicación entre ellos y administrar la asignación de recursos como la CPU.
¿Qué es la bifurcación en el contexto de los procesos?
-La bifurcación es el mecanismo por el cual un proceso crea otro proceso. Los nuevos procesos pueden ser independientes o compartir el espacio de memoria con el proceso padre.
¿Cuáles son los elementos que caracterizan a un proceso durante su ejecución?
-Los elementos que caracterizan a un proceso incluyen un identificador único, su estado, prioridad, contador del programa, punteros de memoria, datos de contexto y información de estado de entradas y salidas.
¿Cuáles son los estados que puede experimentar un proceso durante su vida?
-Los estados que puede experimentar un proceso son: nuevo, listo, ejecutado, bloqueado y finalizado.
¿Qué es un hilo y cómo se diferencia de un proceso?
-Un hilo, también conocido como hebra, es una línea de ejecución dentro de un proceso. Es una estructura más ligera que un proceso y permite la ejecución paralela dentro del mismo proceso.
¿Qué ventajas ofrecen los hilos en comparación con los procesos?
-Los hilos ofrecen una menor sobrecarga en la creación y comunicación, mejor tiempo de respuesta, compartir recursos del proceso al que pertenecen y una gestión más eficiente.
¿Qué es la concurrencia y cómo se relaciona con los procesos?
-La concurrencia es la existencia de varias actividades ejecutándose simultáneamente, que pueden necesitar sincronizarse. Los procesos son concurrentes si existen actividades que se ejecutan de forma simultánea.
¿Cuáles son los niveles de planificación en un sistema operativo?
-Los niveles de planificación en un sistema operativo son: planificador a corto plazo (despacho), planificación a medio plazo y planificación a largo plazo.
¿Qué son los objetivos y criterios de planificación en un sistema operativo?
-Los objetivos y criterios de planificación incluyen el reparto equitativo del tiempo de procesador, eficiencia en el uso de los procesadores, menor tiempo de respuesta y cumplir plazos de ejecución en sistemas en tiempo real.
Outlines
💻 Concepto de Procesos y Estados
Este párrafo introduce el concepto de procesos en informática, describiendo un proceso como un programa en ejecución, una actividad asincrónica o una entidad con una CPU virtual asignada. Se explica que los procesos son manejados por el sistema operativo, que es responsable de la comunicación entre ellos y la creación y destrucción de procesos. Se menciona la bifurcación como el mecanismo de creación de nuevos procesos y se detallan los elementos que caracterizan a un proceso en ejecución, como su identificador, estado, prioridad, contador de programa, punteros de memoria, datos de contexto, información de E/S y auditoría. Además, se describen los estados por los que pasa un proceso durante su vida, como 'nuevo', 'listo', 'ejecutado' y 'finalizado', y se explican las transiciones de estado que ocurren entre ellos.
🧵 Procesos y Hilos
En este párrafo se aborda la diferencia entre procesos y hilos, con énfasis en que un hilo es una línea de ejecución dentro de un proceso. Se describen los hilos como estructuras lógicas de programación que se ejecutan secuencialmente y se comparan con los procesos en términos de sobrecarga, creación y comunicación. Se mencionan las ventajas de los hilos, como una mejor respuesta y la capacidad de compartir recursos y memoria con otros hilos del mismo proceso. También se discuten los estados de los hilos, incluyendo la creación, listo, bloqueo, desbloqueo y terminación, y se explica cómo estos estados afectan la ejecución de un programa.
🔄 Concurrencia y Secuencialidad
Este segmento explora la concurrencia como la existencia de múltiples actividades ejecutándose simultáneamente, y cómo estas actividades pueden necesitar sincronizarse. Se definen los procesos concurrentes y se discute la relación entre concurrencia y multiprogramación en sistemas con un solo procesador. Además, se menciona la importancia de la concurrencia en sistemas multiprocesadores y se describen las razones para permitir la ejecución concurrente, como compartir recursos físicos y lógicos.
📈 Niveles y Técnicas de Planificación
Este párrafo se centra en la planificación de procesos por parte del sistema operativo, explicando los tres niveles de planificación: corto plazo (despacho), medio plazo y largo plazo. Se describen los objetivos y criterios de la planificación, como el equitativo reparto del tiempo de CPU, la eficiencia en el uso de procesadores y el cumplimiento de plazos de ejecución. Se introducen técnicas de planificación, como la planificación a plazo fijo y la planificación primero en llegar, primero en salir (FIFO), y se discuten los desafíos y consideraciones asociados con cada técnica, incluyendo la complejidad y la sobrecarga que pueden generar.
Mindmap
Keywords
💡Proceso
💡Estado de ejecución
💡Bifurcación
💡Identificador de proceso
💡Planificador
💡Transición de estado
💡Hilo
💡Concurrencia
💡Planificación a plazo fijo
💡Tiempo de respuesta
Highlights
Un proceso es un programa que se está ejecutando o una entidad asignada a los procesadores.
Los procesos tienen su propia CPU virtual, aunque en la realidad la CPU computa de un proceso a otro.
El estado de ejecución de un programa incluye valores de registros del CPU y su memoria de trabajo.
Los procesos son creados y destruidos por el sistema operativo, que también gestiona la comunicación entre ellos.
La bifurcación es el mecanismo por el cual un proceso crea otro proceso.
Los nuevos procesos pueden ser independientes o compartir el espacio de memoria con el proceso que los creó.
Un proceso se caracteriza por su identificador único, estado, prioridad, contador del programa y punteros de memoria.
Los datos de contexto incluyen los registros del procesador cuando el proceso se está ejecutando.
La información de estado de entradas y salidas relaciona con las peticiones y asignaciones de dispositivos de E/S.
La información de auditoría registra el tiempo de procesador y el tiempo del reloj utilizados por un proceso.
Los estados de un proceso incluyen: nuevo, listo, ejecutado, bloqueado y finalizado.
Las transiciones de estado son cambios de un estado a otro, como de listo a ejecutado.
Los hilos o hebras son líneas de ejecución de un proceso que se ejecutan secuencialmente.
Los hilos son ligeros y tienen menor sobrecarga en creación y comunicación que los procesos.
Los hilos comparten la memoria y recursos del proceso al que pertenecen, lo que mejora la economía y eficiencia.
Los hilos también tienen estados como creación, bloqueo, desbloqueo y terminación.
La concurrencia es la existencia de varias actividades ejecutándose simultáneamente y que necesitan sincronizarse.
La planificación es el proceso por el cual el sistema operativo selecciona qué proceso ejecutar.
Los objetivos de la planificación incluyen el reparto equitativo del tiempo de procesos y la eficiencia en el uso de los procesadores.
Las técnicas de administración del planificador incluyen planificación a plazo fijo y planificación primero en llegar primero en salir.
Transcripts
[Música]
tema 2.1 concepto de procesos un proceso
o trabajo es un programa que se está
ejecutando una actividad asincrónica sin
bloqueo o bien una entidad lo cual son
asignados los procesadores
conceptualmente cada uno de estos
procesos tienen su propia cpu virtual
desde luego en la realidad la cpu
computa de un proceso a otro
un procesador es un concepto manejado
por el sistema operativo que consiste en
el conjunto formado por las
instrucciones de un programa que son
destinadas a ser ejecutadas por el
microprocesador su estado de ejecución
de un momento dado que esto es los
valores de los registros del cpu para el
dicho programa y su memoria de trabajo
es decir la memoria que ha reservado
todos sus contenidos
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 le denomina bifurcación
los nuevos procesos pueden ser
independientes y no compartir el espacio
de memoria con el proceso que los ha
creado o ser creados en el mismo espacio
de memoria
cuando un proceso se esté ejecutando se
puede caracterizar por una serie de
elementos y estos son los siguientes
identificador un identificador único
asociado a este proceso para
distinguirlo del resto un estado si el
proceso está actualmente corriendo se
encuentra en ejecución la prioridad
nivel relativo al resto de procesos
contador del programa es la dirección de
la siguiente instrucción del programa
que se ejecutará punteros de memoria
incluye los punteros al código del
programa y los datos asociados a dicho
proceso además de cualquier bloque de
memoria compartido con nuestros procesos
datos de contexto son datos que están
presentes en los registros del
procesador cuando el proceso se está
ejecutando información de estado de
entradas y salidas son peticiones de
entradas
las pendientes de dispositivos de
entradas y salidas asignados a dichos
procesos o una lista de los ficheros en
uso por el mismo información de
auditoría incluye la cantidad de tiempo
de procesador y de tiempo del reloj
utilizados límite de tiempos y registros
contables
tema 2 punto 2 procesos y transiciones
de las cosas el estado de un proceso
define su actividad actual durante su
existencia un proceso pasa por una serie
de estados discretos los cuales son los
siguientes nuevo cuando un proceso es
creado y ejecutado el proceso tiene
asignado un procesador y se está
ejecutando sus instrucciones bloqueado
el procesador está esperando por un
evento que se complete un pedido de
entrada o salida o una señal listo el
proceso está listo para ejecutar solo
necesita del recurso procesador
finalizado el proceso finalizó su
ejecución
cuando un proceso se crea pasa a la cola
de procesos listos se dice que existe
una transición de estado cuando un
proceso cambia de un estado a otro a
realizar un proceso una transición de
estado el sistema operativo registra el
nuevo estado en el pcb ahora veamos
algunas de las transacciones de estados
la transición de nuevo a listo se
obtiene al crearse un proceso y pasa
inmediatamente al estado listo la
transición de listo a ejecutado se logra
porque el estado de listo el procesador
solo espera para que se le asigne un
procesador para ejecutar se tiene en
cuenta que puede existir más de un
procesador en el sistema al liberarse un
procesador el planificador selecciona el
próximo proceso según algún criterio
definido a ejecutar
de ejecutado a listo se produce ya que
ante una interrupción que se genere el
proceso perderá el recurso procesador y
pasará al estado de listo el
planificador será el encargado de
seleccionar el próximo proceso ejecuta
estas son algunas de las transiciones de
los procesos
[Música]
tema 2 punto 3 procesos y los hilos o
hebras un hilo o hebra es una línea de
ejecución de un proceso es la menor de
las estructuras lógicas de programación
que se ejecuta de forma secuencial por
parte del planificador del sistema
operativo pero de forma secuencial no
quiere decir que no haya bucles solo que
es una línea secuencial de ejecución o
una sentencia después de otro
todo el proceso parte inicialmente como
un único hilo principal la sobrecarga
debido a su creación y comunicación es
menor que en los procesos pesados el
sistema operativo también ofrece
llamadas al sistema que permiten al
programador crear y destruir hilos
los procesos ligeros también tienen
ventajas que son muy importantes para
cualquier proceso y algunas de ellas son
la respuesta el tiempo de respuesta
mejora ya que el programa puede
continuar ejecutándose aunque parte de
él esté bloqueado compartir sus recursos
los hilos comparten la memoria y los
recursos del proceso al que pertenecen
por lo que se puede tener varios siglos
de ejecución dentro del mismo espacio de
direcciones su economía es más fácil la
creación cambio de contexto y gestión de
hilos que de procesos la utilización de
múltiples de cpu permite que hilos de un
mismo procesador ejecuten en diferentes
cpu a la vez en un proceso mono y lo un
proceso ejecuta en una única cpu
independientemente de cuántos tengas
disponible
los hilos también tienen estados que
permiten al programador manipularlos
según la necesidad de los estados más
comunes en los silos algunos de éstos
son los siguientes creación cuando se
crea un proceso se crea un hilo para
este proceso luego este hilo puede crear
otros siglos dentro del mismo proceso el
hilo tendrá su propio contexto y su
propio espacio de piel y pasará a la
cola de listo bloqueo cuando un hilo
necesita esperar por un suceso se
bloquea salvando sus registros ahora el
procesador podrá pasar a ejecutar otro
hilo que esté en la cola de listos
mientras el anterior permanece bloqueado
desbloqueo cuando el suceso por el que
el hilo se bloqueó se produce el mismo
pasa a la cola del listo
terminación cuando el hilo finaliza se
libera tanto su contexto como sus pilas
[Música]
tema 2.4 concurrencia y secuencialidad
la concurrencia es la existencia de
varias actividades ejecutándose
simultáneamente y necesitan
sincronizarse para actuar conjuntamente
se trata en este caso de un concepto
lógico ya que sólo se hace referencia a
las actividades sin importar el número
de procesadores presentes
para que dos actividades sean
concurrentes es necesario que tengan
relación entre sí como puede ser la
cooperación en un trabajo determinado o
el uso de información compartida los
procesos son concurrentes si existe
simultáneamente los procesos
concurrentes pueden funcionar en forma
totalmente independiente uno de otro o
pueden ser asíncronos lo cual significa
que en ocasiones requiere cierta
sincronización o cooperación
en un sistema mundo procesador la
existencia de multiprogramación es
condición necesaria pero no
suficientemente para que exista
concurrencia ya que los procesos pueden
ejecutarse independientemente si un
sistema es multi procesador también
pueden presentarse situaciones de
concurrencia siempre y cuando las
actividades necesiten actuar entre sí
bien por utilizar información común o
por cualquier otra causa los
procesadores del sistema pueden
ejecutarse concurrentemente puede haber
múltiples tareas en el cpu con varios
procesos existen varias razones para
permitir la ejecución concurrente y
algunas de ellas son éstas
compartir recursos físicos ya que los
recursos del cat guard de la computadora
son limitados nos podemos ver obligados
a compartirlos en un entorno
multiusuario
compartir recursos lógicos puesto que
varios usuarios pueden interesarse en el
mismo elemento de información por
ejemplo un archivo compartido pueden
proporcionar un entorno que permita el
acceso concurrente a estos tipos de
recursos
[Música]
tema 2.5 niveles objetivos y criterios
de planificación la planificación es el
proceso por el cual el sistema operativo
selecciona qué proceso ejecutar la
selección de procesos se basa en algunos
de los algoritmos de planificación la
planificación de la cpu en el sentido de
conmutar la entre los distintos procesos
es una de las funciones del sistema
operativo está en tres niveles de sauber
link y son los siguientes planificador a
corto plazo o despacho la misión del
despacho consiste en asignar al cpu a
uno de los procesos ejecutables del
sistema para ello se siguió un
determinado de loreto
hay que destacar el hecho de que cuanto
menos se llame al despertar menos tiempo
ocupa al cpu un programa del sistema
operativo y por tanto se dedica más
tiempo a los procesos del usuario
planificación a medio plazo y
planificación a corto o largo plazo
se puede definir el set tuve algunas
veces traducido como planificación como
el conjunto de políticas y mecanismos
construidos dentro del sistema operativo
que gobiernan la forma de conseguir que
los procesos a ejecutar lleguen a
ejecutarse entendemos que también
tenemos objetivos y criterios de nuestra
planificación y estos son el reparto
equitativo del tiempo de procesos la
eficiencia en el uso de los procesadores
el menor tiempo de respuesta en ocio
interactivo y el cumplir plazos de
ejecución en los sistemas en tiempo real
aquí
[Música]
tema 2.6 técnicas de administración del
planificador de los siguientes sub
apartados vamos a estudiar ciertos
algoritmos utilizados para planificar la
cpu la elección de uno o de la mezcla de
varios depende de decisiones de diseño
antes de exponer los algoritmos vamos a
explicar datos de medidas que se
utilizan para evaluar
el porcentaje de utilización de la cpu
por procesos de usuario la cpu es un
recurso caro que necesita ser explotado
los valores reales suelen estar entre un
40% y un 90% el rendimiento
número de ráfagas por unidades de tiempo
se define una ráfaga como el periodo de
tiempo en el que el proceso necesita la
cpu un proceso durante su vida alterna
ráfagas con bloqueos por extensiones
también se definen como el número de
trabajos por unidad de tiempo
tiempo de espera tiempo en el que una
ráfaga ha permanecido en estado listo
tiempo de finalización es igual al
tiempo transcurrido desde que una ráfaga
comienza a existir hasta que finaliza su
fórmula sería efe igual a master que te
es igual al tiempo del cpu en la rafa la
penalización p es igual a la fórmula de
más de 20 igual a efe sobre t es una
medida dimensional que se puede aplicar
homogéneamente a las ráfagas
independientes de su longitud
planificación a plazo fijo en la
planificación a plazo fijo ciertos
trabajos se planifican para ser
terminados en un período específico
estos trabajos tienen un alto valor se
entregan a tiempo y pueden carecer de
valor se entregan después del límite la
planificación a plazo fijo es compleja
por muchas razones los usuarios deben
proporcionar por adelantado y en forma
precisa las necesidades de recursos de
su trabajo está la información rara vez
está disponible el sistema debe ejecutar
el programa de plazos fijos y en una
severa degradación de servicios para los
otros usuarios el sistema debe
planificar cuidadosamente las
necesidades de recursos permitiendo un
libre tránsito de plazo fijo esto puede
ser difícil debido a la llegada de
programas nuevos con demandas
impredecibles
si se activan muchos trabajos de plazo
fijo la planificación puede llegar a ser
tan compleja que necesita métodos de
optimización sofisticados para asegurar
que el plazo fijo se cumpla el manejo
intenso de recursos requeridos por la
planificación de plazo fijo puede
generar una sobrecarga sustancial
planificación primero en llegar primero
en salir los procedimientos son
despachados de acuerdo al orden de
llegada a la cola de listos una vez que
el proceso tiene el cpu se ejecuta hasta
su terminación esta planificación no es
apropiada es justa en el sentido formal
pero algo injusta porque los grandes
procesos hacen esperar a trabajos
pequeños y los trabajos sin importancia
hacen esperar a los trabajos importantes
la planificación fifa ofrece una
variante en tiempo de respuesta
relativamente pequeña y es por lo tanto
más predecible que otros esquemas no es
un esquema útil en la planificación de
procesos interactivos porque no
garantiza buenos tiempos de respuesta
también se puede implementar mediante la
utilización de una lista se reemplazan
las páginas de la cabeza y se agregan al
final
[Música]
Voir Plus de Vidéos Connexes
HILOS DE PROCESOS | ¿QUE ES UN HILO? | CONCEPTOS BÁSICOS DE SISTEMAS OPERATIVOS
11 de septiembre de 2024
Sistemas Operativos, Procesos 1 Concepto de proceso
Algoritmos planificadores de procesos - FCFS, SJF, SRFT, RR por Prioridad | Sistemas Operativos
Capítulo 3 Concepto de procesos (Sistema Operativo)
Procesos e Hilos ¿Cuál es la diferencia? ¿Porqué es importante comprenderlos?
5.0 / 5 (0 votes)