Exemplos:
Obtenha o conjunto de arquivos em aula03.zip
espera-ocupada.c
: exemplo para ilustrar loop
infinito e consumo de CPU
volatile
e register
. O código assembly foi gerado com
otimização gcc -O0
e -O2
:
inteiro-simples.c
, inteiro-simples-O0.s
,
inteiro-simples-O2.s
register.c
, register-O0.s
,
register-O2.s
volatile.c
, volatile-O0.s
,
volatile-O2.s
compartilhada.c
tentativa-lock.c
alternancia.c
interesse.c
interesse_espera.c
interesse_vez.c
dekker.c
Thread gerente
Durante a aula, foi trabalhada a ideia de termos uma thread dedicada ao controle da entrada das outras na região crítica.
O código gerente.c
traz uma
implementação correta da
sincronização, mas esta não é uma
boa abordagem. Você sabe explicar a razão?
Para gerar os arquivos .s
e os executáveis, execute o comando make