Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Alejandro Furfaro
Junio de 2012
Temario
1 Introducción
3 Despacho de Tareas
4 Anidamiento de Tareas
5 Tareas en 64 bits
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 2 / 29
Introducción
¿Como lo hacen?
T1
t
Task n
Sistema Operativo
CPU
Memoria
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 4 / 29
Introducción
¿Como lo hacen?
T1 tc
t
Sistema Operativo
CPU
1
Contexto Task1
Memoria
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 5 / 29
Introducción
¿Como lo hacen?
T1 tc
t
Memoria
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 6 / 29
Introducción
¿Como lo hacen?
T1 tc
t
Memoria
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 7 / 29
Introducción
¿Como lo hacen?
T1 tc T
t
2
Task n
Sistema Operativo
CPU
2
Contexto Task1 Contexto Task2
Memoria
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 8 / 29
Introducción
¿Como lo hacen?
T1 tc T tc
t
2
Sistema Operativo
3
CPU
Contexto Task1 Contexto Task2 Contexto Task3
Memoria
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 9 / 29
Introducción
¿Como lo hacen?
T1 tc T tc T3
t
2
Sistema Operativo
CPU 3
Contexto Task1 Contexto Task2 Contexto Task3
Memoria
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 10 / 29
Introducción
¿Como lo hacen?
T1 tc T tc T3 tc
2
Task n
Sistema Operativo
CPU 4
Contexto Task1 Contexto Task2 Contexto Task3 Contexto Task4
Memoria
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 11 / 29
Introducción
¿Como lo hacen?
T1 tc T tc T3 tc T4
2
Task 1 Scheduler
Task 2
Task 3
Task 4
Task n
Sistema Operativo
CPU 5
Memoria
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 12 / 29
Introducción
¿Como lo hacen?
T1 tc T tc T3 tc T4 tc tc
2
Task 1 Scheduler
Task 2
Task 3
Task 4
Task n
Sistema Operativo
CPU
Contexto Task1 Contexto Task2 Contexto Task3 Contexto Task4 Contexto Taskn
Memoria
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 13 / 29
Introducción
Definiciones
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 14 / 29
Recursos para manejo de tareas en IA-32
1
Segmento de estado de tarea (TSS).
2
Descriptor de TSS
3
Descriptor de Puerta de Tarea
4
Registro de tarea
5
Flag NT (bit 14 de EFLAGS)
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 15 / 29
Recursos para manejo de tareas en IA-32 Task State Segment
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 16 / 29
Recursos para manejo de tareas en IA-32 Task State Segment
En Modo Protegido, por default una tarea que ejecuta con CPL=11 no puede
ejecutar instrucciones de acceso a E/S, es decir IN, OUT, INS, y OUTS.
El procesador utiliza el par de bits IOPL del registro EFLAGS, para modificar
este comportamiento default, de manera selectiva para cada tarea.
Para una determinada tarea con CPL=11, si desde el S.O. se pone el campo
IOPL de EFLAGS en 11, se habilita el acceso a las direcciones de E/S cuyos bit
correspondientes estén seteados en el Bit Map de permisos de E/S.
Ası́ se habilita el acceso a determinados ports para determinadas tareas.
En este caso el TSS mide mas de 104 bytes (su lı́mite será mayor que 67h).
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 17 / 29
Recursos para manejo de tareas en IA-32 Descriptor de TSS
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 18 / 29
Recursos para manejo de tareas en IA-32 Descriptor de TSS
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 19 / 29
Recursos para manejo de tareas en IA-32 Descriptor de Task Gate
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 20 / 29
Despacho de Tareas
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 21 / 29
Anidamiento de Tareas
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 22 / 29
Anidamiento de Tareas
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 23 / 29
Anidamiento de Tareas
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 24 / 29
Tareas en 64 bits
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 25 / 29
Tareas en 64 bits
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 26 / 29
Tareas en 64 bits
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 27 / 29
Tareas en 64 bits
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 28 / 29
Tareas en 64 bits
Resumiendo...
R
Alejandro Furfaro () Procesadores IA-32 e Intel
64 Tareas Junio de 2012 29 / 29