Logo Studenta

Administración de Procesos y del procesador.

¡Este material tiene más páginas!

Vista previa del material en texto

1 
 
 
Carretera Villahermosa - Frontera Km. 3.5 Cd. Industrial C.P. 86010 Villahermosa, Tab. México Tel. 
(993) 3530259 , Ext. 101 e - mail: dir_villahermosa@tecnm.mx tecnm.mx | villahermosa.tecnm.mx 
Instituto Tecnológico de Villahermosa 
Materia: Sistemas Operativos. 
Unidad: 2 
Tema: Fundamentaos de Ingeniería de Software 
Actividad: 1 Portafolio de evidencias. 
Fecha de entrega: 13/02/2024 
Docente: Dra. Teresa de Jesús Javier Baeza 
Alumno: Alexander Rosales López 
 
 
 
 
 
 
2 
 
 
Carretera Villahermosa - Frontera Km. 3.5 Cd. Industrial C.P. 86010 Villahermosa, Tab. México Tel. 
(993) 3530259 , Ext. 101 e - mail: dir_villahermosa@tecnm.mx tecnm.mx | villahermosa.tecnm.mx 
Índice 
 
Contenido 
Índice ......................................................................................................................................... 2 
Glosario ...................................................................................................................................... 3 
Introducción ............................................................................................................................... 4 
2.1. Concepto de proceso ........................................................................................................... 5 
2.2. Estados y transiciones de los procesos. .............................................................................. 6 
2.3. Procesos ligeros: Hilos o hebras. ........................................................................................ 7 
2.4. Concurrencia y secuencialidad. .......................................................................................... 8 
2.5. Niveles, objetivos y criterios de planificación. ................................................................... 9 
2.6. Técnicas de administración del planificador .................................................................... 10 
Conclusion. .............................................................................................................................. 11 
Bibliografía .............................................................................................................................. 12 
 
 
 
 
 
 
 
3 
 
 
Carretera Villahermosa - Frontera Km. 3.5 Cd. Industrial C.P. 86010 Villahermosa, Tab. México Tel. 
(993) 3530259 , Ext. 101 e - mail: dir_villahermosa@tecnm.mx tecnm.mx | villahermosa.tecnm.mx 
Glosario 
Ejecución: Proceso de llevar a cabo instrucciones de un programa de computadora por 
parte del procesador de la computadora. 
Procesos: Un programa en ejecución dentro de un sistema operativo. Cada proceso 
tiene su propio espacio de memoria y recursos asignados. 
Capacidad: La habilidad o el potencial de un sistema para realizar ciertas funciones o 
actividades. 
Concurrencia: La capacidad de un sistema para realizar múltiples tareas 
simultáneamente. 
Recursos: Los componentes físicos o lógicos que un sistema operativo administra y 
asigna a los procesos en ejecución, como la CPU, la memoria y los dispositivos de 
entrada/salida. 
CPU (Unidad Central de Procesamiento): El componente principal de un sistema 
informático que ejecuta instrucciones de programas. 
Thread (Hilo): Un flujo de ejecución más pequeño dentro de un proceso. Los hilos 
comparten el mismo espacio de memoria y recursos que su proceso principal. 
Main: La función principal en un programa de computadora, que actúa como el punto 
de entrada para la ejecución del programa. 
Hilo: Ver "Thread". 
Planificador: El componente del sistema operativo responsable de asignar recursos de 
procesamiento a los procesos en ejecución, utilizando diferentes algoritmos de planificación. 
 
 
 
 
 
4 
 
 
Carretera Villahermosa - Frontera Km. 3.5 Cd. Industrial C.P. 86010 Villahermosa, Tab. México Tel. 
(993) 3530259 , Ext. 101 e - mail: dir_villahermosa@tecnm.mx tecnm.mx | villahermosa.tecnm.mx 
Introducción 
Los sistemas operativos constituyen el corazón de cualquier computadora moderna, 
proporcionando una interfaz entre el hardware del sistema y el software de las aplicaciones. 
Dentro de esta compleja infraestructura de software, la gestión eficiente de los procesos es un 
aspecto crucial para garantizar un funcionamiento óptimo del sistema. 
En esta investigación, exploraremos los conceptos fundamentales relacionados con los 
procesos en los sistemas operativos, así como las estrategias de planificación utilizadas para 
administrar estos procesos de manera efectiva. Comenzaremos analizando el concepto de 
proceso y sus diferentes estados y transiciones, examinando cómo el sistema operativo 
coordina la ejecución de los programas en la computadora. 
Además, profundizaremos en la noción de procesos ligeros, también conocidos como 
hilos o hebras, y su impacto en la concurrencia y la capacidad de respuesta del sistema. 
Exploraremos cómo los hilos permiten la ejecución simultánea de múltiples tareas dentro de 
un mismo proceso, compartiendo recursos y facilitando la programación paralela. 
Continuaremos examinando la importancia de la concurrencia y la secuencialidad en 
el diseño de sistemas operativos, y cómo estos conceptos influyen en la planificación de 
procesos. Analizaremos los diferentes niveles, objetivos y criterios de planificación utilizados 
para asignar los recursos del sistema entre los procesos competidores, así como las técnicas 
de administración del planificador que garantizan un rendimiento eficiente y justo del 
sistema. 
En última instancia, esta investigación busca proporcionar una comprensión profunda 
de los conceptos fundamentales relacionados con los procesos en los sistemas operativos, así 
como de las estrategias de planificación utilizadas para optimizar su gestión. Al hacerlo, 
esperamos ofrecer una visión integral de la complejidad y la importancia de la administración 
de procesos en el funcionamiento de los sistemas informáticos modernos. 
 
 
 
 
 
5 
 
 
Carretera Villahermosa - Frontera Km. 3.5 Cd. Industrial C.P. 86010 Villahermosa, Tab. México Tel. 
(993) 3530259 , Ext. 101 e - mail: dir_villahermosa@tecnm.mx tecnm.mx | villahermosa.tecnm.mx 
2.1. Concepto de proceso 
Un proceso se define como la ejecución activa de un conjunto de instrucciones en un 
sistema informático. A diferencia de un programa estático, un proceso incorpora 
interacciones con su entorno, gestiona entradas y salidas, y exhibe diversos estados internos. 
Estos procesos pueden clasificarse como cooperativos, cuando interactúan dentro de una 
misma aplicación, o independientes, cuando no requieren interconexión con otros procesos y 
pueden pertenecer a usuarios diferentes. 
Cuando un proceso se suspende temporalmente, es crucial reiniciarlo exactamente en 
el mismo estado en el que se detuvo. Para lograr esto, toda la información pertinente al 
proceso debe ser guardada explícitamente durante la suspensión. En muchos sistemas 
operativos, esta información se almacena en una tabla de procesos, una estructura organizada, 
como un arreglo o lista enlazada, que contiene detalles específicos de cada proceso en 
ejecución. Este almacenamiento incluye información adicional aparte del contenido de su 
espacio de direcciones. Además, si un proceso tiene la capacidad de generar uno o más 
procesos secundarios (conocidos como procesos hijos), y estos a su vez pueden originar más 
procesos hijos, se establece rápidamente una estructura de árbol de procesos. En los sistemas 
operativos multihilo, se pueden crear tanto hilos como procesos. La distinción radica en que 
unproceso solo puede crear hilos para sí mismo, y estos hilos comparten toda la memoria 
reservada para el proceso. En este modelo, todo el software ejecutable en la computadora, 
incluido el sistema operativo, se organiza en una secuencia de procesos, que son actividades 
con programas, entradas, salidas y estados asociados. Los procesadores pueden ser 
compartidos entre varios procesos utilizando algoritmos de planificación para determinar 
cuándo ejecutar cada uno. Para gestionar la creación de procesos, los sistemas operativos que 
manejan este concepto deben proporcionar mecanismos para su creación. En sistemas simples 
o diseñados para ejecutar una sola aplicación, esto puede ser sencillo. 
 
 
 
 
 
 
6 
 
 
Carretera Villahermosa - Frontera Km. 3.5 Cd. Industrial C.P. 86010 Villahermosa, Tab. México Tel. 
(993) 3530259 , Ext. 101 e - mail: dir_villahermosa@tecnm.mx tecnm.mx | villahermosa.tecnm.mx 
2.2. Estados y transiciones de los procesos. 
El proceso es la unidad de procesamiento gestionada por el sistema operativo. Para 
llevar a cabo esta función, el proceso está asociado con una serie de elementos de 
información, que se detallan a continuación. Estos elementos se dividen en tres grupos 
principales: estado del procesador, imagen de memoria y tablas del sistema operativo. 
Estado del procesador 
Los bloques de control de los procesos se almacenan en colas, cada una de las cuales 
representa un estado específico de los procesos. Dentro de cada bloque se encuentran diversas 
informaciones, entre ellas, los estados de los procesos, los cuales son internos al sistema 
operativo y no son visibles para el usuario. 
Un proceso puede transitar por cinco estados distintos: 
Nuevo: Un proceso se encuentra en estado nuevo cuando está en proceso de creación. 
Listo: Un proceso está en estado listo si está preparado para utilizar la CPU en caso de 
que esté disponible. 
En ejecución: Un proceso se encuentra en estado de ejecución cuando está utilizando 
activamente la CPU en ese momento. 
Bloqueado: Un proceso está en estado bloqueado si está esperando que ocurra algún 
evento, como la finalización de una operación de entrada/salida, para poder continuar su 
ejecución. 
Terminado: Cuando un proceso ha completado su ejecución, pasa a ser un proceso 
terminado. 
 
 
 
 
 
 
7 
 
 
Carretera Villahermosa - Frontera Km. 3.5 Cd. Industrial C.P. 86010 Villahermosa, Tab. México Tel. 
(993) 3530259 , Ext. 101 e - mail: dir_villahermosa@tecnm.mx tecnm.mx | villahermosa.tecnm.mx 
2.3. Procesos ligeros: Hilos o hebras. 
Un hilo de ejecución, o thread, es un flujo de ejecución dentro de un programa que 
comparte la imagen de memoria y otros recursos con otros hilos. En un proceso, puede haber 
un solo hilo de ejecución, como es típico en los procesos clásicos, o varios hilos de ejecución, 
conocidos como hilos ligeros. Desde la perspectiva de la programación, un hilo ligero se 
define como una función cuya ejecución puede lanzarse en paralelo con otras. El hilo de 
ejecución principal, o hilo ligero principal, generalmente corresponde a la función principal 
main. Cada hilo ligero tiene su propia información, particularmente relacionada con su 
contexto de ejecución, que incluye el contador de programa, la pila, los registros y el estado 
del hilo (ejecutando, listo o bloqueado). Sin embargo, todos los hilos ligeros de un mismo 
proceso comparten recursos como el espacio de memoria, las variables globales, los archivos 
abiertos, los procesos hijos, los temporizadores, las señales y los semáforos, así como la 
contabilidad. 
Es esencial destacar que todos los hilos ligeros de un mismo proceso comparten el 
mismo espacio de direcciones de memoria, lo que incluye el código, los datos y las pilas de 
los diferentes hilos. Esto implica que no hay protección de memoria entre los hilos ligeros de 
un mismo proceso, a diferencia de lo que ocurre con los procesos convencionales. 
La diferencia fundamental entre un proceso y un hilo radica en su alcance y relación 
con otros componentes del sistema: 
Un proceso es una entidad independiente y autónoma que posee su propio espacio de 
direcciones y estado. Utiliza los mecanismos de comunicación proporcionados por el sistema 
operativo para interactuar con otros procesos. 
En contraste, un hilo es una entidad más pequeña que coexiste dentro del contexto de 
un único proceso. Los hilos comparten el mismo espacio de direcciones, información de 
estado y recursos asociados con el proceso que los contiene. 
 
 
 
 
 
8 
 
 
Carretera Villahermosa - Frontera Km. 3.5 Cd. Industrial C.P. 86010 Villahermosa, Tab. México Tel. 
(993) 3530259 , Ext. 101 e - mail: dir_villahermosa@tecnm.mx tecnm.mx | villahermosa.tecnm.mx 
2.4. Concurrencia y secuencialidad. 
Los procesos se consideran concurrentes cuando existen simultáneamente. La 
concurrencia de procesos ocurre cuando dos o más procesos llegan a ejecutarse al mismo 
tiempo. Es esencial destacar que para que estos procesos sean concurrentes, necesitan tener 
alguna relación entre ellos. 
Existen varios modelos de computadoras en los que pueden ejecutarse procesos 
concurrentes: 
Multiprogramación con un único procesador: En este modelo, todos los procesos 
concurrentes se ejecutan en un solo procesador. El sistema operativo se encarga de repartir el 
tiempo del procesador entre los diferentes procesos, alternando su ejecución para simular una 
ejecución simultánea. 
Multiprocesador: En un sistema multiprocesador, hay varios procesadores que 
comparten la memoria principal. En este caso, se puede lograr una verdadera ejecución 
simultánea de procesos, ya que las fases de procesamiento de diferentes procesos pueden 
coincidir. Esto significa que en un momento dado, se pueden ejecutar simultáneamente tantos 
procesos como procesadores estén disponibles. 
La concurrencia implica una serie de consideraciones de diseño, como la 
comunicación entre procesos, la competencia por los recursos, la sincronización de la 
ejecución de varios procesos y la asignación del tiempo del procesador a los procesos. La 
concurrencia es fundamental para diseñar sistemas como la multiprogramación, el 
multiproceso y los sistemas distribuidos. 
 
 
 
 
 
 
9 
 
 
Carretera Villahermosa - Frontera Km. 3.5 Cd. Industrial C.P. 86010 Villahermosa, Tab. México Tel. 
(993) 3530259 , Ext. 101 e - mail: dir_villahermosa@tecnm.mx tecnm.mx | villahermosa.tecnm.mx 
2.5. Niveles, objetivos y criterios de planificación. 
El planificador es la parte del sistema operativo encargada de tomar decisiones sobre 
la asignación de recursos de procesador, mientras que el algoritmo de planificación es el 
método utilizado para tomar esas decisiones. Los principales criterios para evaluar un buen 
algoritmo de planificación son la equidad, la eficacia, el tiempo de respuesta, el tiempo de 
retorno y el rendimiento general del sistema. Dado que cada proceso es único e impredecible, 
ya sea en sus necesidades de operaciones de entrada/salida o de uso intensivo de la CPU, el 
planificador del sistema operativo no puede prever cuánto tiempo pasará hasta que un proceso 
se bloquee por una operación de entrada/salida u otra razón. 
Para evitar que un proceso monopolice la CPU durante demasiado tiempo, los equipos 
tienen un dispositivo que genera interrupciones periódicas, por ejemplo, 60 veces por 
segundo (60 Hz). La planificación del procesador implica determinar cuándo y a qué procesos 
se les asignará la CPU, lo cual es responsabilidad del sistema operativo. 
Existen diferentes niveles de planificación del procesador: 
Planificación de alto nivel: También conocidacomo planificación de trabajos, 
determina qué trabajos pueden competir activamente por los recursos del sistema. Esto 
incluye la planificación de admisión, que decide qué trabajos se admiten para su ejecución. 
Planificación de nivel intermedio: Esta etapa determina qué procesos pueden 
competir por la CPU en un momento dado. Responde a las fluctuaciones a corto plazo en la 
carga del sistema y realiza la suspensión y activación de procesos según sea necesario para 
cumplir con ciertas metas de rendimiento del sistema. 
Planificación de bajo nivel: Esta etapa determina qué proceso listo se asigna a la 
CPU cuando esta queda disponible. El despachador del sistema operativo lleva a cabo esta 
tarea, y opera varias veces por segundo, siempre en el almacenamiento primario. 
 
 
 
 
 
 
10 
 
 
Carretera Villahermosa - Frontera Km. 3.5 Cd. Industrial C.P. 86010 Villahermosa, Tab. México Tel. 
(993) 3530259 , Ext. 101 e - mail: dir_villahermosa@tecnm.mx tecnm.mx | villahermosa.tecnm.mx 
2.6. Técnicas de administración del planificador 
 
La planificación a plazo fijo implica programar ciertos trabajos para completarse 
dentro de un período específico. Estos trabajos tienen un alto valor si se completan a tiempo, 
pero pueden carecer de valor si se completan después del límite establecido. Sin embargo, la 
planificación a plazo fijo es compleja por varias razones: 
Los usuarios rara vez pueden proporcionar con precisión y por adelantado las 
necesidades de recursos de su trabajo. 
El sistema debe ejecutar los programas de plazo fijo sin degradar severamente el 
servicio para otros usuarios. 
Es necesario planificar cuidadosamente los recursos para permitir un flujo libre de los 
trabajos de plazo fijo, lo cual puede ser difícil debido a la llegada impredecible de nuevos 
programas con demandas impredecibles. 
Si se activan muchos trabajos de plazo fijo, la planificación puede volverse tan 
compleja que requiera métodos de optimización sofisticados para garantizar que se cumplan 
los plazos. La intensa gestión de recursos requerida por la planificación de plazo fijo puede 
generar una sobrecarga sustancial. 
Los procesos se despachan según el orden en que llegan a la cola de listos. Una vez 
que un proceso obtiene la CPU, se ejecuta hasta su finalización. Este enfoque es no 
apropiativo, lo que significa que no permite la suspensión de un proceso en ejecución. 
Aunque es justo formalmente, puede ser percibido como injusto porque los grandes 
procesos pueden hacer esperar a los más pequeños y los trabajos menos importantes pueden 
hacer esperar a los más importantes. 
 
 
 
 
 
 
11 
 
 
Carretera Villahermosa - Frontera Km. 3.5 Cd. Industrial C.P. 86010 Villahermosa, Tab. México Tel. 
(993) 3530259 , Ext. 101 e - mail: dir_villahermosa@tecnm.mx tecnm.mx | villahermosa.tecnm.mx 
Conclusion. 
Los sistemas operativos son complejas infraestructuras de software que gestionan 
eficientemente los recursos de hardware de una computadora para permitir la ejecución de 
múltiples tareas de forma concurrente. En este sentido, el concepto de proceso y su gestión 
juegan un papel fundamental en la administración eficaz de los recursos del sistema. 
El concepto de proceso, entendido como un programa en ejecución, se convierte en la 
unidad básica de ejecución en un sistema operativo. Cada proceso puede pasar por distintos 
estados y transiciones, desde su creación hasta su finalización, lo que permite al sistema 
operativo coordinar y controlar su ejecución de manera efectiva. La introducción de procesos 
ligeros, también conocidos como hilos o hebras, añade una capa adicional de complejidad y 
flexibilidad al sistema operativo. Los hilos permiten la ejecución concurrente de múltiples 
flujos de control dentro de un mismo proceso, compartiendo recursos como la memoria y los 
archivos abiertos. Esto facilita la implementación de programas con múltiples tareas 
simultáneas y mejora la capacidad de respuesta del sistema. 
La concurrencia y la secuencialidad son conceptos esenciales en el diseño de sistemas 
operativos. La concurrencia se refiere a la capacidad del sistema para manejar múltiples 
procesos de forma simultánea, mientras que la secuencialidad se relaciona con la capacidad 
del sistema para garantizar un comportamiento predecible y coherente en la ejecución de los 
procesos. 
Los niveles, objetivos y criterios de planificación son aspectos críticos en el diseño de 
algoritmos de planificación de procesos. La planificación de procesos implica tomar 
decisiones sobre cómo asignar los recursos del sistema entre los diferentes procesos en 
competencia. Los algoritmos de planificación deben tener en cuenta una variedad de 
objetivos, como la equidad, la eficacia y el rendimiento, para garantizar un funcionamiento 
eficiente y justo del sistema. 
 
 
 
 
 
12 
 
 
Carretera Villahermosa - Frontera Km. 3.5 Cd. Industrial C.P. 86010 Villahermosa, Tab. México Tel. 
(993) 3530259 , Ext. 101 e - mail: dir_villahermosa@tecnm.mx tecnm.mx | villahermosa.tecnm.mx 
Bibliografía 
Administrador de Procesos y del Procesador. (s.f.). Obtenido de Blogspot: 
https://sistemasoperativos.angelfire.com/html/2.3.html 
Andrew. (2017). Blogspot. Obtenido de Sistemas Operativos: https://misistema-
operativo.blogspot.com/p/unidad-2.html 
Bautista, L. M. (25 de 09 de 2023). genially. Obtenido de NIVELES,OBJETIVOS Y 
CRITERIOS DE PLANIFICACION : 
https://view.genial.ly/651152f642390300119fef00/presentation-25nivelesobjetivos-y-
criterios-de-planificacion 
Editorial Etecé. (02 de 11 de 2021). Proceso. Obtenido de concepto: 
https://concepto.de/proceso/ 
Microsoft Word. (s.f.). Obtenido de Criterio 5: Procesos : 
https://www.ujaen.es/servicios/archivo/sites/servicio_archivo/files/uploads/Calidad/Cr
iterio5.pdf 
Procesos. (s.f.). Obtenido de Procesos: 
https://www.fing.edu.uy/tecnoinf/maldonado/cursos/so/material/teo/so04-procesos.pdf 
Ruiz, D. (24 de 08 de 2017). 2.5 Niveles, objetivos y criterios de planificación. Obtenido de 
Blogspot: http://sistemasoperativositc2017.blogspot.com/2017/10/25-niveles-
objetivos-y-criterios-de.html 
Ruiz, D. (08 de 2017). Sistemas Operativos. Obtenido de Blogspot: 
https://sistemasoperativositc2017.blogspot.com/2017/10/22-estados-y-transiciones-de-
los.html 
Ruiz, D. (24 de 08 de 2017). Sistemas Operativos. Obtenido de Blogspot: 
http://sistemasoperativositc2017.blogspot.com/2017/10/23-procesos-ligeros-hilos-y-
hebras.html 
Ruiz, D. (24 de 08 de 2017). Sistemas Operativos. Obtenido de Blogspot: 
http://sistemasoperativositc2017.blogspot.com/2017/10/24-concurrencia-y-
secuenciabilidad_92.html 
Sistemas Operativos 1. (11 de 2018). Obtenido de Blogspot: 
https://sistemasoperativosrocher.blogspot.com/2015/03/estados-y-transiciones-de-los-
procesos.html 
Sistemas Operativos. (27 de 11 de 2012). Obtenido de Blogspot: 
https://florysel.blogspot.com/2012/11/21-concepto-de-proceso.html 
 
 
 
 
 
13 
 
 
Carretera Villahermosa - Frontera Km. 3.5 Cd. Industrial C.P. 86010 Villahermosa, Tab. México Tel. 
(993) 3530259 , Ext. 101 e - mail: dir_villahermosa@tecnm.mx tecnm.mx | villahermosa.tecnm.mx 
StudentPlace. (18 de 09 de 2018). Concurrencia y Secuencialidad (Sistemas Operativos). 
Obtenido de StudentPlace: https://studentplace98.blogspot.com/2018/09/concurrencia-
y-secuencialidad-sistemas.html 
Universidad de Selvilla. (02 de 04 de 202). Sistemas Operativos. Obtenido de Estados de los 
procesos: https://1984.lsi.us.es/wiki-ssoo/index.php/Estados_de_los_procesos 
 
 
	Índice
	Glosario
	Introducción
	2.1. Concepto de proceso
	2.2. Estados y transiciones de los procesos.
	2.3. Procesos ligeros: Hilos o hebras.
	2.4.Concurrencia y secuencialidad.
	2.5. Niveles, objetivos y criterios de planificación.
	2.6. Técnicas de administración del planificador
	Conclusion.
	Bibliografía

Continuar navegando