0% encontró este documento útil (0 votos)
4 vistas4 páginas

Modulo-1 Tarea 2 Introducción A Los Sistemas Operativos Completada Nitida

Descargar como pdf o txt
Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1/ 4

INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS

NOMBRE: Edward Rodríguez Salas


MATRICULA: 2024-1907

Tarea: investigar sobre los siguientes temas.

¿Qué es un proceso en sistema operativo?


En un sistema operativo, un proceso se refiere a un programa en
ejecución. Un proceso es una instancia de un programa que se está
ejecutando en un sistema operativo. Puede ser cualquier programa,
desde una aplicación de procesamiento de textos hasta un reproductor
de música o un navegador web.
Cada proceso tiene su propio espacio de memoria asignado, que incluye
el código del programa, los datos utilizados por el programa y la pila de
ejecución. Además, cada proceso tiene su propio estado, que incluye
información como el contador de programa (que indica la próxima
instrucción a ejecutar), los registros de la CPU, los descriptores de
archivos abiertos y otros recursos asignados.

¿Qué es un hilo en sistema operativo?


En un sistema operativo, un hilo (también conocido como subproceso o
thread) es una secuencia de instrucciones que puede ser ejecutada de
forma independiente dentro de un proceso. A diferencia de los
procesos, los hilos comparten el mismo espacio de memoria y recursos
del proceso principal en el que se ejecutan.
Un hilo es una unidad básica de programación concurrente, lo que
significa que varios hilos pueden ejecutarse en paralelo dentro de un
mismo proceso. Cada hilo tiene su propio contador de programa,
registros y pila de ejecución, pero comparten la memoria, los archivos
abiertos y otros recursos del proceso principal.
La principal ventaja de utilizar hilos es la posibilidad de realizar tareas
en paralelo y aprovechar mejor los recursos del sistema. Los hilos
pueden ejecutarse de forma concurrente en diferentes núcleos de CPU
(en sistemas con múltiples núcleos) o mediante una técnica de
programación llamada multiplexación por tiempo (time-slicing) en un
solo núcleo.

¿Qué es una Comunicación entre procesos en


sistema operativo?

La comunicación entre procesos (también conocida como IPC, por sus


siglas en inglés, Inter-Process Communication) en un sistema operativo
se refiere a los mecanismos y técnicas utilizados por los procesos para
intercambiar información, compartir recursos y cooperar entre sí.

Cuando se ejecutan múltiples procesos en un sistema operativo, a


menudo es necesario que estos procesos se comuniquen entre sí para
lograr una tarea común o compartir datos. La comunicación entre
procesos permite la transferencia de información y el sincronismo entre
los distintos procesos activos en el sistema.

Mecanismos de comunicación entre procesos


que se utilizan en los sistemas operativos.

1. Pipes (tuberías): Permiten la comunicación unidireccional entre


dos procesos relacionados, donde la salida de un proceso
se convierte en la entrada del otro. Los pipes pueden ser
anónimos (utilizados por procesos relacionados, como un
proceso padre e hijo) o con nombre (utilizados por procesos no
relacionados).

2. Colas de mensajes: Proporcionan una forma de enviar y recibir


mensajes entre procesos a través de una cola en el sistema
operativo. Los mensajes se envían a la cola y pueden ser
recuperados por otros procesos que tienen acceso a dicha cola.

3. Memoria compartida: Permite que varios procesos accedan a


una región de memoria compartida, lo que les permite
intercambiar datos de manera eficiente. Los procesos pueden
leer y escribir en esta región de memoria y los cambios son
visibles para todos los procesos que la comparten.

4. Señales: Las señales son eventos asíncronos generados por el


sistema operativo o por otros procesos. Pueden ser utilizadas
para notificar eventos importantes o para manejar
interrupciones.

5. Sockets: Los sockets son un mecanismo de comunicación


utilizado en redes. Permiten a los procesos en diferentes
máquinas comunicarse entre sí a través de la red utilizando
protocolos de red estándar, como TCP/IP o UDP.

¿Qué es la programación en sistema


operativos?
La programación en sistema operativo implica el desarrollo de
software que interactúa directamente con el sistema operativo para
aprovechar sus servicios y recursos. Esto abarca aspectos como las
llamadas al sistema, la gestión de procesos, la administración de
memoria, la gestión de archivos, la comunicación y sincronización, y
el control de dispositivos.

Menciona algunos problemas clásicos de IPC.


Los problemas clásicos de IPC (comunicación entre procesos) son
desafíos comunes que surgen cuando múltiples procesos necesitan
comunicarse y sincronizarse para compartir recursos de manera segura.
Algunos ejemplos de estos problemas son:

El problema del productor-consumidor: Consiste en


sincronizar la producción y el consumo de datos entre uno o más
productores y consumidores, evitando la sobrecarga o pérdida de datos.

El problema del lector-escritor: Se refiere a cómo permitir el


acceso concurrente a un recurso compartido por parte de múltiples
lectores y escritores, manteniendo la consistencia y evitando conflictos.

El problema del filósofo comensal: Se trata de evitar los


deadlocks en un escenario donde varios filósofos comparten recursos
(tenedores) de manera cíclica.

El problema de los lectores-escritores con prioridad: Similar al


problema del lector-escritor, pero con prioridad para los escritores,
evitando que los escritores queden bloqueados indefinidamente.

También podría gustarte