Planificaciòn de Algoritmos:Teoría
Enviado por alejon113 • 16 de Mayo de 2023 • Trabajo • 1.162 Palabras (5 Páginas) • 43 Visitas
Planificaciòn de Algoritmos:Teoría
Cargue el documento con el resumen de los algoritmos de planificaciòn.
- Explicar el funcionamiento de MUTEX.
R//Un mutex es un mecanismo que se utiliza para evitar que varios procesos o hilos accedan simultáneamente a un recurso compartido, lo que podría causar problemas de concurrencia. El mutex garantiza que solo un proceso o hilo tenga acceso al recurso en un momento dado, utilizando operaciones de "bloqueo" y "desbloqueo" para controlar el acceso al recurso.
- Explicar el funcionamiento de Semáforo
R// Los semáforos informáticos son variables especiales que se utilizan para controlar el acceso a recursos compartidos en la programación concurrente. Ayude a evitar problemas de concurrencia, como las condiciones de carrera y los interbloqueos, mediante el uso de atómicas que permitan que sólo un proceso o hilo acceda al recurso compartido en un momento dado. En resumen, los semáforos son una herramienta esencial para garantizar los resultados entre procesos o hilos en sistemas informáticos.
- Explicar el DeadLock/starvation
R// Deadlock y Starvation son dos problemas comunes en la programación concurrente que surgen cuando varios procesos o hilos compiten por recursos compartidos.
Deadlock ocurre cuando dos o más procesos o hilos quedan bloqueados esperando que el otro libere un recurso que necesita para avanzar.
Starvation ocurre cuando un proceso o hilo se queda esperando indefinidamente para obtener acceso a un recurso o servicio que está siendo constantemente utilizado por otros procesos o hilos.
Ambos problemas pueden causar problemas graves en el rendimiento y la estabilidad del sistema. Para evitar estos problemas, es necesario implementar técnicas y algoritmos adecuados para gestionar y asignar recursos compartidos de manera eficiente y justa.
- Explicar el Task Scheduling.
R// Task Scheduling (o programación de tareas) es un mecanismo utilizado en sistemas operativos y entornos de programación concurrente para planificar y ejecutar tareas o procesos en momentos específicos o en función de ciertas condiciones.
El Task Scheduling funciona de la siguiente manera: el sistema operativo o el planificador asigna una prioridad a cada tarea o proceso, que determina su orden de ejecución. Las tareas de mayor prioridad se ejecutan antes que las tareas de menor prioridad, y si varias tareas tienen la misma prioridad, se utilizan diferentes algoritmos de planificación, como Round Robin o First Come, First Served, para determinar su orden de ejecución.
Además, el Task Scheduling también puede incluir otras técnicas para mejorar la eficiencia y la calidad del servicio, como la asignación de recursos adecuada, la ejecución de tareas en paralelo, la programación basada en eventos y la detección y corrección de problemas de interbloqueo o inanición. En general, el Task Scheduling es una parte importante de la programación concurrente que ayuda a garantizar el rendimiento óptimo y la estabilidad del sistema.
- Explicar el control de Queue.
R// Una Queue (o cola) es una estructura de datos que se utiliza para almacenar y gestionar una colección de elementos en orden secuencial, en el que el primer elemento que entra es el primer elemento que sale (conocido como "primero en entrar, primero en salir" o FIFO, por sus siglas en inglés).
El funcionamiento de una Queue es muy sencillo: los elementos se agregan al final de la cola y se eliminan del principio de la misma, siguiendo siempre el orden de llegada. En otras palabras, los elementos se "enfilan" en la cola y se "desenfilan" en el mismo orden.
La Queue es una estructura de datos muy utilizada en programación concurrente para implementar mecanismos de comunicación y sincronización entre procesos o hilos. Por ejemplo, en un sistema cliente-servidor, el servidor puede recibir solicitudes de múltiples clientes y agregarlas a una cola para procesarlas en orden de llegada. De esta manera, se asegura que las solicitudes se procesen en el orden correcto y que no haya conflictos de acceso a los recursos compartidos.
...