Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
Arquitetura de Sistemas OperacionaisArquitetura de Sistemas OperacionaisFrancis Berenger Machado / Luiz Paulo MaiaFrancis Berenger Machado / Luiz Paulo Maia
Capítulo 6Capítulo 6
ThreadThread
Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
6 – Thread6 – Thread Subprocessos e Processos Independentes
6/1
Subprocessos Processos Independentes
Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
6 – Thread6 – Thread Ambiente Monothread
6/2
Th rea d Th rea dTh rea d
Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
6 – Thread6 – Thread Ambiente Multithread
6/3
C on textod e h a rd w a re
C on textod e h a rd w a re
C on textod e h a rd w a re
Esp aço d een dereça m en to
Co
nte
xto
de
soft
wa
re
Th rea d 3Th rea d 2Th rea d 1
Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
6 – Thread6 – Thread Aplicação Multithread
6/4
Esp aço d een dereça m en to
Processo
Program a Pr in cipa l
Co
nte
xto
de
Ha
rdw
are
Co
nte
xto
de
Ha
rdw
are
Co
nte
xto
de
Ha
rdw
are
C a l l Su b_1
C a ll Su b_2
Th rea d_1
Th rea d_2
Th rea d_3
PCSP
PCSP
PCSP
Fim
Sub _2
Va riáve is
Ret
Sub _1
Ret
...
...
Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
6 – Thread6 – Thread Aplicação Multithread
6/5
Th rea d d een trada
Th rea d d eg ravaçã o
Th rea d d eexib ição
Bu ffer
Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
6 – Thread6 – Thread Aplicação Multithread
6/6
So licita ções
Processo se rvido r
Th rea dTh rea d
Processo clienteProcesso cliente Processo cliente
Th rea d
Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
6 – Thread6 – Thread Threads em Modo Usuário e em Modo Kernel
6/7
M odou suá rio
M odokernel
Kernel
Bib lio teca
Thre
ad
0
Thre
ad
4
Thre
ad
3
Thre
ad
2
Thre
ad
1
M odou suá rio
M odokernelKernel
Thre
ad
0
Thre
ad
4
Thre
ad
3
Thre
ad
2
Thre
ad
1
Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
6 – Thread6 – Thread Threads em Modo Híbrido e Scheduler Activations
6/8
M odou suá rio
M odokernel
Kernel
TM K 0 TM K 3TM K 2TM K 1
Bib lio teca
TMU
0
TMU
4
TMU
5
TMU
3
TMU
2
TMU
1
M odou suá rio
M odokernelKernel
Bib lio teca
Thre
ad
0
Thre
ad
4
Thre
ad
3
Thre
ad
2
Thre
ad
1