TSL (teste e bloqueio de configuração)

0

Eu quero perguntar que sempre que a linguagem de alto nível é convertida em linguagem de baixo nível, então ela estaria indo para o outro? Por exemplo, se eu for converter a seguinte linguagem de alto nível

while(LOCK!=0);
LOCK=1
\Critical Section
LOCK=0

para a seguinte linguagem assembly

Load LOCK,R0
Store #1,LOCK
Compare R0,#0
Jump step 1
\Critical Section
Store #0,LOCK

em vez de

Load LOCK,R0
Compare R0,#0
Jump step 1
Store #1,LOCK
\Critical Section
Store #0,LOCK

Seria errado? Desde afirmação enquanto consiste em carregar, comparar e saltar instruções juntos. Mas, como você viu, eu tenho que aplicar o TSL (Test and Set Lock) para sincronizar os processos. É por isso que estou fazendo esta pergunta.

    
por user218987 24.07.2018 / 11:27

0 respostas

Tags