В процессоре 80286 функция блокирования шины реализована иначе, чем в процессоре i486. Программы, которые используют специфические для процессора 80286 формы блокирования памяти, возможно не будут работать на процессоре i486.
Префикс LOCK и соответствующий ему сигнал шины следует использовать только для предотвращения прерываний операций пересылки данных другими хозяевами шины. Префикс LOCK можно использовать только с нижеперечисленными командами процессора i486, когда они модифицируют память. Исключение неопределенного кода операции будет результатом использования префикса LOCK перед любыми другими командами или с командами, перечисляемыми ниже, когда они не выполняют операцию записи, изменяющую память, (т.е. операндом назначения является регистр ).
- Команды проверки и изменения битов BTS, BTR и BTC. - Команды обмена XCHG, XADD, и CMPXCHG (префикс LOCK не нужен для команды XCHG )
- Oднооперандные арифметические и логические команды INC, DEC, NOT, NEG.
- Двухоперандные арифметические и логические команды ADD, ADC, SUB, SBB, AND, OR , XOR.
Команды блокирования гарантированно блокируют только области памяти, определенные в операнде назначения, но может блокироваться и большая область памяти. Например, типичные конфигурации процессоров 8086 и 80286 блокируют все физическое пространство памяти.
На процессоре 80286 префикс LOCK чувствителен к IOPL; если CPL имеет меньший уровень привилегированности, чем IOPL, генерируется исключение общей защиты. На процессорах 386 DX и i486 нет контроля против выполнения IOPL.