Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Universidad Otavalo
1
Software
INDICE
1. Introducción.......................................................................................................................3
2. ¿Qué hace un sistema Operativo?......................................................................................3
3. Definición Sistema Operativo............................................................................................4
4. Evolución histórica de los Sistemas Operativos................................................................5
1. ¿Qué es un hilo?................................................................................................................2
2. Ventajas de usar hilos........................................................................................................3
3. Hilos a nivel de usuario y de kernel..................................................................................4
4. ¿Cómo se relacionan los hilos a nivel de kernel y los de usuario?...................................5
5. Evolución histórica de los Sistemas Operativos................................................................9
5. ¿Qué es un hilo?................................................................................................................2
6. Ventajas de usar hilos........................................................................................................3
7. Hilos a nivel de usuario y de kernel..................................................................................4
8. ¿Cómo se relacionan los hilos a nivel de kernel y los de usuario?...................................5
2
1. Introducción
actúa como intermediario entre el usuario y el hardware. Estas tareas, pueden ser
llevadas a cabo de varias formas, lo que permite que algunos sistemas Operativos
se diseñen para ser prácticos, otros eficientes y otros para ser ambas cosas.
crearse pieza por pieza. En este curso veremos, entre otras cosas, una
controla y coordina el uso del hardware entre los diversos programas de aplicación por
datos. El sistema operativo proporciona los medios para hacer un uso adecuado
3
3. Definición Sistema Operativo
Tareas principales:
código incambiable, más inflexible es) del propio sistema operativo se denomina
4
núcleo del sistema (Kernel).
seleccionaba uno de ellos para ejecutar, y si este debía esperar por alguna
tarea (por ejemplo ejecución de E/S) el sistema elegía otro del lote para
utilizar el procesador.
5
Estos Sistemas eran multiusuarios. Ejecutaban programas de forma
6
SISTEMAS PARALELOS
(sistemas en red)
7
Veamos ahora otra clasificación de los Sistemas paralelos:
resto.
8
Veamos ahora una clasificación de Arquitecturas (Taxonomía de Flynn):
monoprocesadores.
(Arquitectura vectorial).
Clasifican en:
Simétricos: Todos los nodos ejecutan tareas y asumen las de otros ante
fallas.
1
Asimétricos: Nodos primarios ejecutan tareas y nodos secundarios
esperan fallas.
5. Hilos
que permiten que un proceso tenga múltiples hilos de control. En este capítulo
implementación.
1. ¿Qué es un hilo?
representa a nivel del sistema operativo con una estructura llamada TCB (thread
control block).
Los hilos comparten con otros hilos que pertenecen al mismo proceso la
2
sección de código, la sección de datos, entre otras cosas. Si un proceso tiene
múltiples hilos, puede realizar más de una tarea a la vez (esto es real cuando se
Un servidor web acepta solicitudes de los clientes que piden páginas web. Si
este servidor tiene varios clientes y funcionara con un solo hilo de ejecución,
solo podría dar servicio a un cliente por vez, y el tiempo que podría esperar un
Una posible solución sería que el servidor funcione de tal manera que acepte
una solicitud por vez, y que cuando reciba otra solicitud, cree otro proceso para
dar servicio a la nueva solicitud. Pero crear un proceso lleva tiempo y utiliza
muchos recursos, entonces, si cada proceso realizará las mismas tareas ¿Por qué
no utilizar hilos?
Generalmente es más eficiente usar un proceso que utilice múltiples hilos (un
hilo para escuchar las solicitudes, y cuando llega una solicitud, el lugar de crear
bloqueado.
3
y los recursos del proceso al que pertenecen, por lo que se puede
direcciones.
Hasta ahora hemos hablado de los hilos en sentido genérico, pero a nivel
kernel.
4
Hilos a nivel e usuario: son implementados en alguna librería. Estos hilos se
gestionan sin soporte del SO, el cual solo reconoce un hilo de ejecución.
SO.
Los hilos a nivel de kernel tienen como gran beneficio poder aprovechar
5
sistema solo reconoce un hilo de control para el proceso.
bloquea. También, dado que solo un hilo puede acceder al kernel cada vez, no
Tiene como inconveniente que cada vez que se crea un hilo a nivel de
usuario, se crea un hilo a nivel del kernel, y la cantidad de hilos a nivel del
6
Modelo MxN (many to many)
igual de hilos del kernel. Cada proceso tiene asignado un conjunto de hilos de
que saca lo mejor de cada uno. El usuario puede crear tantos hilos como necesite
los procesadores.
7
8
Se Puede decir que el Sistema operativo es un:
código incambiable, más inflexible es) del propio sistema operativo se denomina
seleccionaba uno de ellos para ejecutar, y si este debía esperar por alguna
tarea (por ejemplo ejecución de E/S) el sistema elegía otro del lote para
utilizar el procesador.
1
0
SISTEMAS PARALELOS
(sistemas en red)
1
1
Veamos ahora otra clasificación de los Sistemas paralelos:
resto.
1
2
Veamos ahora una clasificación de Arquitecturas (Taxonomía de Flynn):
monoprocesadores.
(Arquitectura vectorial).
Clasifican en:
Simétricos: Todos los nodos ejecutan tareas y asumen las de otros ante
fallas.
1
Asimétricos: Nodos primarios ejecutan tareas y nodos secundarios
esperan fallas.
5. Hilos
que permiten que un proceso tenga múltiples hilos de control. En este capítulo
implementación.
5. ¿Qué es un hilo?
representa a nivel del sistema operativo con una estructura llamada TCB (thread
control block).
Los hilos comparten con otros hilos que pertenecen al mismo proceso la
2
sección de código, la sección de datos, entre otras cosas. Si un proceso tiene
múltiples hilos, puede realizar más de una tarea a la vez (esto es real cuando se
Un servidor web acepta solicitudes de los clientes que piden páginas web. Si
este servidor tiene varios clientes y funcionara con un solo hilo de ejecución,
solo podría dar servicio a un cliente por vez, y el tiempo que podría esperar un
Una posible solución sería que el servidor funcione de tal manera que acepte
una solicitud por vez, y que cuando reciba otra solicitud, cree otro proceso para
dar servicio a la nueva solicitud. Pero crear un proceso lleva tiempo y utiliza
muchos recursos, entonces, si cada proceso realizará las mismas tareas ¿Por qué
no utilizar hilos?
Generalmente es más eficiente usar un proceso que utilice múltiples hilos (un
hilo para escuchar las solicitudes, y cuando llega una solicitud, el lugar de crear
bloqueado.
3
y los recursos del proceso al que pertenecen, por lo que se puede
direcciones.
Hasta ahora hemos hablado de los hilos en sentido genérico, pero a nivel
kernel
4
5