Ну, я здесь не эксперт, но попробую.
Что следует иметь в виду: не думайте «ПК» или «архитектура ПК». Раньше, до появления IBM PC (не говоря уже о стандартной конструкции персонального компьютера), Intel не производила процессоры для ПК; это делало микропроцессоры. Не было никаких точных ожиданий относительно того, какие аппаратные компоненты вы могли бы комбинировать с 8086. Вы могли использовать его для создания аппаратных микроконтроллеров, электронных калькуляторов, авионики и, о, конечно же, домашних компьютеров.
То, что делает префикс LOCK
(насколько я помню, прошло почти 15 лет с тех пор, как я в последний раз просматривал руководства для программистов Intel), сигнализирует линию «блокировки шины» микропроцессора на время выполнения инструкции. Оказал ли это какое-либо влияние, зависело от того, что вы подключили к этой линии! Обычно, да, линия была подключена к схеме, которая помешала бы другим компонентам использовать любую из линий данных; это то, что делает автобус "автобусом" (но я не очень знаком с деталями).
Источником путаницы является то, что многозадачность - это не то же самое, что мультипроцессор (или мы должны называть это многокомпонентным?). Я не знаю, чтобы кто-нибудь пытался собрать компьютер с двумя 8086-ю, подключенными к одной шине, но процессоры не единственные, подключенные к шине, даже в архитектуре ПК. Например, программное обеспечение, работающее в 8086, может нуждаться в блокировке шины при доступе к части памяти, используемой совместно с внешним устройством ввода, поэтому внешнее устройство ввода не может записывать в него в то время, когда 8086 считывает его. Я полагаю, что даже в старомодном BIOS для ПК эта доля довольно велика.
Современные многопроцессорные архитектуры все еще полагаются на префикс LOCK
для координации между различными процессорами; но это не было основной причиной его существования, и это не единственное его применение.