x86'da 128 bit atomik işlemleri nasıl gerçekleştirirsiniz?x86 128 bit atomik işlemler
Intel'in Sistem Programlama Kılavuzu, Bölüm 1, 8.1 Kilitli Atomik İşlemler garantili 16, 32 ve 64 bit atomik işlemleri belirtir. Öyleyse, LOCK öneki 2 64 bit operasyon yaparak 128 bit atomik işlemler yapabilir misiniz? Bir şey gibi ...
LOCK mov 64bits->addr
LOCK mov 64bits->addr+64bits
Yalnız SSE 128 bit XMM kayıtlarına sahiptir. Bu kayıtları kullanarak sadece 128 bit karşılaştırmalı-takas yapabilir misiniz?
Atomik 16 baytlık bir karşılaştırma-değişimi ('CMPXCHG16B') yapabilirsiniz. –
Bunu 32-bit x86’da mı, yoksa x64’te mi yapmaya çalışıyorsunuz? – user200783
x86_64, 64-bit modu – brooksbp