vak: (Улыбка)
[personal profile] vak
Дошёл до реализации необычного свойства процессора микро-БЭСМ, отсутствующего у современных компьютеров. Каждое слово в оперативной памяти имеет дополнительный бит запрета записи. При попытке записи по этому адресу возникает прерывание "защита адреса при записи". Чтобы всё-таки иметь возможность изменить значение (и бит запрета), память имеет дополнительный сигнал, отменяющий защиту.

Получается полезная возможность, похожая на const в языке Си, но при этом защиту можно включать и отключать по ходу выполнения программы. Что-то отдалённо похожее - теговая архитектура - существовало в некоторых ранних компьютерах, но не прижилось.

Date: 2016-12-15 10:33 (UTC)
From: [identity profile] skolk.livejournal.com
>>Смотря какой контроллер, тут явно придется свой писать, чтобы реализовать запись транзакцией RMW в пределах открытия одной страницы.

А контроллер от ARM 15-летней давности разве так не делал?

>>Запись можно отложить если не предполагается исключения.
Запись откладывается на интерфейсе контроллер-SDRAM, исключение внутри CPU, на интерфейсе CPU-контроллер все чинно и по порядку. А вообще-то это гасится даже не крохотным буфером контроллера, а сравнительно огромным кэшом CPU. Поскольку строки кэша большие, по-моему, в режиме WB на шине (интерфейсе в сторону памяти) он всегда выполняет RMW.
Edited Date: 2016-12-15 11:12 (UTC)