SList-like API

Big Cheese
Уже с Приветом
Posts: 1211
Joined: 02 Jul 2000 09:01
Location: SFBA

SList-like API

Post by Big Cheese »

Привет всем,
Возникла необходимость реализовать lock-free stack по образу WinXP-шного SList API, но чтобы работало также на WinNT/2000 и Solaris 8 и выше (Spark, 32/64bit). Насколько это реально? В случае IA32, на первый взгляд, lock cmpxchg8b проблему решает. Смущает только инструкции lfence / sfence, добавленные, насколько я понял, в P4 (SSE2). Достаточно ли будет на любом (Pentium и выше) процессоре для обеспечения атомарности только cmpxchg8b, или нужны специальные пляски для разных типов процессоров? Будет ли работать на AMD? Есть ли другие x-86 compatible процессоры, кроме Intel и AMD, на которых бегает Windows?

Спасибо за любую информацию...

Return to “Вопросы и новости IT”