Ich lese smphello.s Code von allan Cruse codeAssembly: Muss xadd Befehl gesperrt werden?
im folgenden Teil für jeden Prozessor zu er versucht Setup-Stack-Segment.
der Punkt ist, dass er verwendet XADD ohne Schloss Präfix während in der Beschreibung von XADD wie in here. Möglicherweise ist ein Sperrpräfix vorhanden.
ist dies ein Fehler oder ist es okay? und warum ?
# setup an exclusive stack-area for this processor
mov $0x1000, %ax # paragraphs in segment
xadd %ax, newSS # 'atomic' xchg-and-add
mov %ax, %ss # segment-address in SS
xor %esp, %esp # top-of-stack into ESP
Ja, es sollte 'lock' verwenden. Der einzige Befehl, der die Sperre selbst setzt, ist 'xchg'. – Jester
@becks: Gibt es ein Problem mit meiner Antwort? – SonOfSun