2010-09-07 9 views

Odpowiedz

33

test-and-set modyfikuje zawartość lokalizacji pamięci i zwraca jej dawną wartość jako pojedynczej operacji atomowej.

compare-and-swap atomowo porównuje zawartość komórki pamięci do danej wartości, a tylko wtedy, gdy są one takie same, modyfikuje zawartość tej lokalizacji pamięci do danej nowej wartości.

Różnica zaznaczona pogrubioną czcionką.

+0

Ponieważ 'porównania-i-swap' czy więcej pracy niż "testowanie i ustawianie" zajmuje więcej czasu niż "testuj i ustaw"? – arunmoezhi

+0

@arunmoezhi, to zależy od implementacji. –

+0

Czy możesz proszę o szczegóły. Powodem, dla którego mnie to interesuje, jest to, że testowanie i ustawianie jest szybsze, niż mogę zmienić mój algorytm, aby go użyć zamiast porównywać i zamieniać – arunmoezhi

5

Test i zestaw działa na bitach, porównywaniu i zamianie działa na polu 32-bitowym.

System z/TPF faworyzuje korzystanie z instrukcji testu i zestawu (TS), ponieważ często wskaźniki blokady są bitami, które są ustawione, aby kontrolować dostęp do krytycznych regionów kodu systemu. Instrukcja testu i zestawu (TS) wymaga mniej rejestrów niż instrukcja porównania i wymiany (ZS) i wymaga mniej czasu wykonania, ponieważ trzeba ustawić tylko jeden bajt.

i znalazłem te materiały od: http://www.ibm.com/support/knowledgecenter/SSB23S_1.1.0.13/gtpc3/tasinst.html

można dowiedzieć się więcej o TSL z książki o nazwie "nowoczesny system operacyjny, rozdział 2" ...