*Mono proceso: Un
sistema operativo mono proceso es aquél que es capaz de manejar solamente un
procesador de la computadora, de manera que si la computadora tuviese más de
uno le sería inútil. El ejemplo más típico de este tipo de sistemas es el DOS y
Mac OS.
*Multi proceso:
Un sistema
operativo multiproceso se refiere al número de procesadores del sistema, que es
más de uno y éste es capaz de usarlos todos para distribuir su carga de
trabajo.
Generalmente estos sistemas trabajan de dos
formas: simétrica o asimétricamente.
Cuando se trabaja de manera asimétrica, el
sistema operativo selecciona a uno de los procesadores el cual jugará el papel
de procesador maestro y servirá como pivote para distribuir la carga a los
demás procesadores, que reciben el nombre de esclavos. Cuando se trabaja de
manera simétrica, los procesos o partes de ellos (threads) son enviados
indistintamente a cualquiera de los procesadores disponibles, teniendo,
teóricamente, una mejor distribución y equilibrio en la carga de trabajo bajo
este esquema.
Existen aplicaciones que fueron hechas para
correr en sistemas mono proceso que no toman ninguna ventaja a menos que el
sistema operativo o el compilador detecte secciones de código paralelizable,
los cuales son ejecutados al mismo tiempo en procesadores diferentes. Por otro
lado, el programador puede modificar sus algoritmos y aprovechar por sí mismo
esta facilidad, pero esta última opción las más de las veces es costosa en
horas hombre y muy tediosa, obligando al programador a ocupar tanto o más
tiempo a la paralelización que a elaborar el algoritmo inicial.
No hay comentarios:
Publicar un comentario