Академический Документы
Профессиональный Документы
Культура Документы
• Amilcar de Rosas
Rodríguez.
• Gerardo Reyes Davila.
• José Ricardo Cisneros
Cabrera
• Juan José Corona Figueroa.
• Lizzette Huerta Herrera.
• Tonatiuh Tecanhuey
Tecuhatl.
• Angel Armas Valdivia.
• Oscar Zarate Vilegas.
PROCESOS
PROCESOS
En un sistema de multiprogramación, la CPU también
cambia de un programa a otro, ejecutando cada uno
durante decenas o centenas de milisegundos. Si bien,
en términos escritos, la CPU solo puede ejecutar un
programa en cualquier instante dado, a lo largo de un
segundo puede trabajar en varios programas, lo que da
a los usuarios la ilusión de paralelismo. A veces se
habla de seudoparalelismo en este contexto, para
contrastarlo con el verdadero paralelismo de hardware
de multiprocesador (los cuales tienen dos o más CPUs
que comparten la misma memoria física). Los
diseñadores de sistemas operativos han desarrollado un
modelo conceptual (procesos secuenciales) que facilita
tratar con el paralelismo.
En este modelo, todo el software ejecutable de la
computadora, que a veces incluye al sistema operativo,
se organiza en varios procesos secuenciales, o
simplemente procesos. Un proceso no es más que un
programa en ejecución, e incluye los valores que tienen
el contador de programa, los registros y las variables. La
manera en la que la CPU cambia de un programa a otro
se denomina multiprogramación. Con la CPU
conmutando entre los procesos, la rapidez con que un
proceso efectúa sus operaciones no será uniforme y es
probable que ni siquiera sea reproducible si los mismos
procesos se ejecutan otra vez.
a) Multiprogramación de cuatro programas. b) Modelo
conceptual de cuatro procesos secuenciales independientes.
c) Sólo un programa esta activo a la vez.
CREACIÓN DE
PROCESOS
Los sistemas operativos requieren alguna forma de comprobar que
existan todos los procesos necesarios. En sistemas muy sencillos,
o en los diseñados para ejecutar una sola aplicación, podría ser
factible hacer que todos los procesos que alguna vez se necesiten
estén presentes cuando el sistema arranque. Sin embargo, en los
sistemas de propósito general hace falta algún mecanismo para
crear y terminar procesos según se necesite durante la operación.
1 2
Bloqueado Listo
4
Este enfoque no sólo desperdicia tiempo de CPU, sino que también puede tener efectos
inesperados. Consideremos una computadora con dos procesos, H, de alta prioridad, y L, de
baja 64 PROCESOS CAP. 2 prioridad. Las reglas de planificación son tales que H se ejecuta
siempre que está en el estado listo. En un momento dado, con L en su región crítica, H
queda listo para ejecutarse (p. ej., se completa una operación de E/S). H inicia ahora la
espera activa, pero dado que L nunca se planifica mientras H se está ejecutando, L nunca
tiene oportunidad de salir de su región crítica, y H permanece en un ciclo infinito. Esta
situación se conoce como problema de inversión de prioridad.
Filósofos comelones.
Lectores y Escritores.
Productores y Consumidores
El problema de los filósofos
comiendo
En 1965 Dijkstra
planteó y
resolvió un
problema de
sincronización
llamado el
problema de la
cena de los
filósofos,
El problema de los filósofos
comiendo
Permitir que cierto numero de
filósofos se siente a la mesa
Si un escritor está
esperando acceder a un
objeto