Unidad 4 Flashcards
¿Cuáles son los temas centrales del diseño de sistemas operativos relacionados con la gestión de procesos?
Los temas centrales son la multiprogramación, el multiprocesamiento y el procesamiento distribuido.
¿Qué implica la concurrencia en el diseño de sistemas operativos?
La concurrencia abarca aspectos como la comunicación y la sincronización de procesos, siendo fundamental en la multiprogramación, multiprocesamiento y procesamiento distribuido.
¿Qué es la concurrencia y cuáles son sus características principales?
La concurrencia es la capacidad de ejecutar múltiples actividades en paralelo. Permite que distintos objetos actúen al mismo tiempo y es clave en Ciencia de la Computación, relevantes para el diseño de hardware, sistemas operativos, multiprocesadores, computación distribuida, programación y diseño.
¿Dónde podemos encontrar ejemplos de concurrencia en la vida cotidiana?
Ejemplos incluyen un navegador web accediendo una página, acceso simultáneo de varias aplicaciones al disco, el teléfono recibiendo una llamada mientras se habla, y varios usuarios conectados al mismo sistema.
¿Cuáles son los objetivos de los sistemas concurrentes?
Ajustar el modelo de arquitectura al problema del mundo real, incrementar la performance, y permitir que el procesador ejecute instrucciones y procesos en paralelo.
¿Cuáles son las necesidades de diseño y gestión en sistemas concurrentes?
El sistema operativo debe seguir la pista de varios procesos, ubicar y desubicar recursos para cada proceso, proteger los datos y recursos físicos, y garantizar que el resultado de un proceso sea independiente de la velocidad a la que suceda.
¿Qué es la interacción de procesos y cuáles son sus niveles según cómo perciben la existencia de otros procesos?
La interacción de procesos es la forma en que interactúan en base al grado en que perciben la existencia de otros. Niveles: procesos independientes, procesos que se perciben indirectamente y procesos que se perciben directamente.
¿Qué implica la sincronización en la concurrencia de procesos?
La sincronización implica la coordinación de actividades entre procesos. Un proceso no puede proseguir su ejecución hasta que otro proceso haya alcanzado cierto punto de su ejecución.
¿Cómo se utilizan los semáforos para la sincronización entre procesos?
Los semáforos se utilizan para la sincronización entre procesos, permitiendo la cooperación mediante señales. Los procesos pueden ser bloqueados hasta recibir una señal y se organizan en una cola de procesos en espera.
¿En qué consiste la comunicación entre procesos y cómo se puede realizar?
La comunicación entre procesos implica la organización y transmisión de datos entre tareas concurrentes. Puede realizarse mediante memoria compartida o el pasaje de mensajes.
¿Cómo funciona la memoria compartida en la comunicación entre procesos?
Los procesos comparten un espacio de almacenamiento en el que pueden leer y escribir datos. Puede estar en la memoria principal o en un archivo compartido, pero no pueden operar simultáneamente, lo que requiere bloqueo y liberación del acceso a la memoria.
¿En qué consiste el pasaje de mensajes en la comunicación entre procesos?
Los procesos interactúan mediante el intercambio de información, cumpliendo con los requisitos de sincronización y comunicación. Se utilizan operaciones específicas para iniciar el pasaje de mensajes.
¿Qué son los interbloqueos y cuándo pueden ocurrir?
Los interbloqueos ocurren cuando dos procesos compiten por el acceso exclusivo a un recurso, pero ninguno puede obtener acceso exclusivo porque el otro lo impide. Puede ocurrir cuando los sistemas computacionales tienen recursos que solo pueden ser utilizados por un proceso a la vez.
¿Cuáles son algunas de las cuestiones que surgen cuando múltiples procesos se ejecutan concurrentemente?
Surgen cuestiones sobre la resolución de conflictos y la cooperación. Los procesos concurrentes pueden interactuar de varias maneras, siendo directamente conscientes unos de otros y cooperando mediante el intercambio de información.
¿Cuál es una de las tareas más importantes y complejas de un sistema operativo en relación con la concurrencia de procesos?
La gestión de memoria es una de las tareas más importantes y complejas de un sistema operativo en relación con la concurrencia de procesos, involucrando la asignación y compartición de la memoria principal entre varios procesos activos.