Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Sistema Operativo I
Capitulo #3
Tema:
Concepto de procesos
Participante:
Felix Manuel Cordero Encarnación
Matricula:
202010584
Facilitador:
Jose Manuel Doñe Meteo
Fecha:
20/9/2020
1
Indice
3.0 Introducción...............................................................................................................3
3. Conceptos de Procesos.................................................................................................4
3.1 ¿Qué es un proceso?...............................................................................................4
3.2. Estados de un proceso............................................................................................4
3.2.1. Estados simplificados......................................................................................4
3.2.2 Estado ampliado..............................................................................................5
3.3. Bloque de control de un proceso..........................................................................6
3.4. Operaciones con procesos......................................................................................7
3.5. Hilos de ejecución (“threads”)...............................................................................8
3.5.1. Estados de un Hilo de ejecucion....................................................................9
4. Conclusión....................................................................................................................11
5. Bibliografía..................................................................................................................12
2
3.0Introducción
En el siguiente trabajo se estará exponiendo el tema de “Concepto de procesos” En el cual
conoceremos que es un proceso y cuál es su importancia, sus estados y tipos de procesos.
También estaremos hablando de los Hilos y de los estados de los Hilos.
3
3. Conceptos de Procesos
3.1 ¿Qué es un proceso?
Todos los procesos como mínimo deben pasar por estas 3 fases:
4
3.2.2 Estado ampliado
En espera / Preparación: Estado por el que pasan los procesos antes de pasar a estar
preparados por primera vez. Los procesos, cuando comienzan a existir, no están preparados
para comenzar a ejecutar instrucciones hasta que el sistema no ha llevado a cabo una serie
de actividades. Una vez que el proceso está completamente cargado, ya se puede producir
la primera transición al estado preparado.
Terminado: La transición de activo a este estado ocurre cuando el proceso realiza una
llamada al sistema solicitando su propia terminación. En estas circunstancias, hay
estructuras de datos correspondientes al proceso que no pueden ser liberadas hasta que el
proceso padre del que está terminando recoja el código de terminación del mismo. Hasta
que esto ocurra, estas estructuras se mantendrán y el proceso seguirá existiendo en estado
terminado.
El proceso que se encuentra en el estado activo hace una llamada al sistema que, por su
naturaleza, resulta en una transición al estado bloqueado. Este es el caso de las llamadas
read(), write(), wait(), pause(), entre muchas otras. Al pasar a estado bloqueado, se invoca
al planificador para que decida que otro proceso se asignará al procesador.
5
Si el proceso que se encuentra en el estado
activo excede el tiempo máximo de
asignación, en caso de que lo hubiere.
Para llevar a cabo la gestión de un proceso, es necesario que el sistema operativo guarde
cierta información necesaria. Para ello, existe un registro especial que se conoce como el
bloque de control del proceso BCP, o PCB en inglés (Process Control Block). El BCP es
creado por el Sistema operativo cada vez que aparece un nuevo proceso. Los procesos son
conocidos para el sistema operativo y por tanto elegible para competir por los recursos del
sistema sólo cuando existe un BCP activo asociado a ellos. Cuando el programa termina, el
BCP es eliminado para dejar espacio libre en el registro, y usarlo para almacenar otros
BCP.
6
E l b l o q u e d e c o n
contenidos comunes:
Identificador del proceso: Identificar de forma unívoca al proceso en el sistema,
generalmente se emplea un entero sin signo que se denomina PID (Process IDentifier)
Nombre del proceso.
Estado del proceso para el planificador de procesos: preparado, activo o bloqueado.
Contexto de la ejecución: valor de los registros del procesador, bits de estados, etc. Esto
es, cada vez que se ejecuta el planificador y se realiza una conmutación de procesos, la
información sobre en qué lugar se encontraba la ejecución del proceso se encuentra
guardada aquí, así como el lugar en el que se paró la ejecución del anterior proceso
(cada una en su respectivo BCP).
Aspectos relacionados con la administración de memoria: tales como el espacio de
direcciones y la cantidad de memoria asignada a un proceso.
Aspectos relacionados con la administración de ficheros: tales como los ficheros con los
que el proceso está actualmente operando.
Los procesadores en los que el proceso puede ejecutarse: en caso de soportar el sistema
multiprocesador.
En el caso de un sistema operativo tipo UNIX: el proceso padre de dicho proceso y la
relación de procesos hijos.
Estadísticas temporales: Tiempo de lanzamiento del proceso, tiempo en estado activo,
etc.
Esta lista es simplemente indicativa, cada sistema operativo tiene su propio diseño de BCP,
con el conjunto de metadatos necesarios para la administración. Puede medir desde 32 bits
a 1024.
7
3.4. Operaciones con procesos
8
la vez, pero el Multitasking está enfocada en ejecutar sub procesos de un mismo proceso, lo
cual es un poco diferente ya que por definición los procesos no comparten el espacio de
memoria entre sí, mientras que los Threads o Hilos sí
Los principales estados de los hilos son: Ejecución, Listo y Bloqueado. No tiene sentido
asociar estados de suspensión de hilos ya que es un concepto de proceso. En todo caso, si
un proceso está expulsado de la memoria principal (RAM), todos sus hilos deberán estarlo
ya que todos comparten el espacio de direcciones del proceso.
C r e a c i ó n : C u a n d o
puede crear otros hilos dentro del mismo proceso, proporcionando un puntero de
instrucción y los argumentos del nuevo hilo. El hilo tendrá su propio contexto y su
propio espacio de la columna, y pasará al final de los Listos.
Bloqueo: Cuando un hilo necesita esperar por un suceso, se bloquea (salvando sus
registros de usuario, contador de programa y punteros de pila). Ahora el procesador
podrá pasar a ejecutar otro hilo que esté al principio de los Listos mientras el anterior
permanece bloqueado.
Desbloqueo: Cuando el suceso por el que el hilo se bloqueó se produce, el mismo pasa
a la final de los Listos.
Terminación: Cuando un hilo finaliza se liberan tanto su contexto como sus columnas.
La interfaz Runnable
9
la citada clase no puede extender a la vez la clase Thread y otra más. En este caso, la clase
debe implantar la interface Runnable, variando ligeramente la forma en que se crean e
inician los nuevos hilos.
4. Conclusión
10
Los procesos en informática es una de las partes más importante y de la cual ningún sistema
operativo puede prescindir ya que toda acción que este realice se le puede considerar como
un proceso y gracias a este trabajo pudimos entender cómo funcionan los procesos en la
informática, los tipos de procesos que hay y como se desarrollan. También es muy
importante destacar el rol que cumplen los hilos en todo esto de los procesos.
11
5. Bibliografía
Wikipedia (2019 Octubre 22) Bloque de control del proceso recuperado de:
https://es.wikipedia.org/wiki/Bloque_de_control_del_proceso#:~:text=El%20bloque
%20de%20control%20del,respecto%20a%20un%20proceso%20particular.
12
%20est%C3%A1n%20en%20ejecuci%C3%B3n.&text=Zombie%20(Z)%20%3A
%20Procesos%20que,en%20la%20tabla%20de%20procesos.
13