Память только для записи (инженерная)
В информационных технологиях память только для записи ( WOM ) — это ячейка памяти или регистр, в который можно записывать, но нельзя читать. Помимо буквального значения, этот термин может применяться к ситуации, когда данные, записанные одной схемой, могут быть прочитаны только другой схемой. Последняя ситуация наиболее распространена, когда процессор записывает данные в доступный только для записи регистр оборудования, которым управляет процессор. Аппаратное обеспечение может прочитать инструкцию, но процессор не может. Это может привести к проблемам при создании драйверов устройств для оборудования.
Память только для записи также находит применение в сфере безопасности и криптографии как средство предотвращения перехвата данных во время их расшифровки.
Использование оборудования
[ редактировать ]В 1972 году WOM, противоположность постоянного запоминающего устройства (ПЗУ), был представлен как внутренняя шутка, устроенная Signetics . [1] Однако вскоре было признано, что эта концепция на самом деле описывает определенные функции микропроцессорных систем. [2]
Наиболее частыми случаями памяти только для записи являются случаи, когда ячейками памяти являются регистры или интегральная схема , используемая для управления или передачи информации на оборудование вне процессора. Центральный процессор (ЦП) может записывать в эти места и, таким образом, управлять оборудованием, но не может считывать информацию и определять текущее состояние оборудования. Память доступна только для записи только с точки зрения ЦП. Такие схемы распространены в небольших встроенных микроконтроллерных системах для экономии затрат и могут вызвать трудности у авторов программного обеспечения драйверов устройств . [3] Когда текущее состояние оборудования неизвестно ЦП, он может перевести его в известное состояние только путем отправки новой команды, что может привести к изменению состояния. [4] [5] Чтобы облегчить эту трудность, содержимое WOM может зеркально отражаться ЦП в обычной памяти. [6] Однако эта стратегия надежна только в том случае, если регистр доступен только для чтения с точки зрения аппаратного обеспечения. Если внешнее оборудование может изменять свое состояние независимо от ЦП, тогда состояние оборудования может отличаться от образа этого состояния, зеркально отраженного в памяти ЦП.
Пример такого использования касался доступа к памяти на ранних ПК. В первых ПК использовались процессоры 8086 или 8088, способные адресовать только 1 МБ памяти. Большую часть этого объема занимали BIOS и видеокарта, в результате чего было доступно только 640 КБ непрерывной адресуемой оперативной памяти . Требования к памяти многих приложений вскоре превысили эту цифру. Одним из способов преодоления ограничения было использование оперативной памяти с переключением банков . Предусмотрено несколько банков ОЗУ, но они не закреплены за ячейкой памяти постоянно. В конкретной реализации к компьютеру добавляется специальная плата, которая управляет распределением банков в пространстве памяти. Плата управления имеет собственный чип памяти. Компьютер может записывать данные в этот чип, но читать чип может только сама плата управления. [примечание 1] поэтому ее называют памятью «только для записи». [7] : 200–202
Другой пример касается некоторых функций, выполняемых графическими процессорами (GPU). Например, графический процессор может выполнять шейдерную обработку содержимого графической памяти. Для графического процессора может быть быстрее и эффективнее принимать входные данные для процесса шейдера из мест, доступных только для чтения, и записывать выходные данные шейдера в разные места, доступные только для записи, без необходимости копировать данные между буферами чтения и записи после каждой итерации. [8]
Пример, который до сих пор актуален, можно найти в UART 16550 , производные от которого до сих пор широко используются. Чтобы добавить данные FIFO без нарушения совместимости с восемью регистрами конфигурации UART 8250 , «регистру управления FIFO», доступному только для записи, был назначен тот же адрес порта, что и «регистру идентификации прерываний», доступному только для чтения. Программа записывает по этому адресу управляющий регистр FIFO, но прочитать его обратно невозможно.
Этот термин также используется для описания компьютерного вида некоторых устройств отображения, таких как экраны с электронными чернилами, используемые в электронных книгах . [9]
Безопасность и шифрование
[ редактировать ]Блокировка буфера кадров графического процессора для эффективного преобразования его в память только для записи может быть полезна для защиты зашифрованных данных. Когда зашифрованные данные достигают пункта назначения, их необходимо расшифровать, прежде чем они смогут быть отображены пользователю. Существование незашифрованного материала в памяти, к которому может получить доступ процессор или периферийные устройства, является потенциальным недостатком безопасности. Эту слабость можно устранить, выполняя расшифровку внутри графического процессора и записывая незашифрованные данные непосредственно в память дисплея. Ничто другое не может читать данные, пока буфер кадра заблокирован, а когда он разблокирован, он будет отображать что-то еще. [10] Можно также сказать, что все современные смарт-карты с чипом основаны на технологии WOM, поскольку на заводе в них запрограммированы определенные ключи шифрования, которые не могут быть непосредственно прочитаны устройством считывания карт. Вместо этого ключи косвенно используются алгоритмами, которые проверяют пароли или расшифровывают определенный контент. У Nintendo был патент, описывающий использование частей жесткого диска в качестве временного хранилища игрового кода, предназначенного только для записи, которое сохраняется только для записи до тех пор, пока этот раздел не будет проверен авторизирующей цифровой подписью. [11]
Теория вычислимости
[ редактировать ]В теории вычислимости добавление WOM к некоторым моделям вычислений может увеличить их вычислительную мощность. [12]
См. также
[ редактировать ]- Нулевое устройство или
/dev/null
, еще одна концепция «только для записи» - Фонавтограф , запатентованный в 1857 году и самое раннее устройство для записи звука, но не подлежащее воспроизведению.
Примечания
[ редактировать ]- ^ Плата установлена так, что ее микросхема памяти находится по тому же адресу, что и ячейка в ПЗУ. Запись по этому адресу осуществляется как в ПЗУ, так и на плату, но постоянная память не затрагивается. Однако чтение возвращает только содержимое ПЗУ, поскольку аппаратное обеспечение платы не отвечает на внешнюю команду чтения. [7]
Ссылки
[ редактировать ]- ^ Пиз, Роберт А. (2011). «Происхождение WOM — «Память только для записи» » . Национальный полупроводник . Архивировано из оригинала 18 июня 2011 г.
- ^ Технические документы WESCON 1976 г. Лос-Анджелес, Калифорния, США: Западная электронная выставка и съезд. 14–17 сентября 1976 г. с. 17. Архивировано из оригинала 27 июня 2014 г. Проверено 20 мая 2013 г.
- ^ Робертс, Тим (17 августа 2004 г.). «Если бы каждый инженер по аппаратному обеспечению просто понял, что… регистры, доступные только для записи, делают отладку практически невозможной, наша работа была бы намного проще» . Экспертная зона DDK MVP. Центр оборудования и драйверов Windows . Майкрософт . Архивировано из оригинала 21 августа 2004 г. Проверено 3 ноября 2011 г.
- ^ Прозайз, Джефф (21 июля 1987 г.). «Программное обеспечение для мышей: посмотрите, как они работают» . Производительность. Журнал ПК . Заметки по компьютерной лаборатории. Том. 6, нет. 13. Издательская компания «Зифф-Дэвис» . С. 411–412, 414, 417–418, 420, 422, 425–426, 428 [422]. ISSN 0888-8507 . Проверено 22 июля 2023 г.
- ^ Липовски, Г. Джек (27 апреля 1999 г.). Интерфейс одно- и многочипового микроконтроллера: для Motorola 6812 . Академическая пресса . п. 122. ИСБН 978-0-08-051726-1 . LCCN 98-89451 . Проверено 20 мая 2013 г.
- ^ Ганссл, Джек Г.; Барр, Майкл (2003). «Регистр только для записи» . Словарь встраиваемых систем . Тейлор и Фрэнсис. п. 285. ИСБН 1-57820120-9 . Архивировано из оригинала 5 июля 2014 г. Проверено 22 июля 2023 г.
- ^ Jump up to: а б Оуэн, Брюс (2 апреля 1985 г.). «Преодолев барьер памяти» . Журнал ПК . 4 (7). Издательство Ziff-Davis Publishing Company : 193–202 [200–202]. ISSN 0888-8507 .
- ^ Кристоф Зайлер, Филипп Бюхлер, Лутц-Петер Нольте, Маурисио Рейес, Расмус Паулсен, «Иерархические марковские случайные поля, применяемые для моделирования деформаций мягких тканей на графическом оборудовании», Последние достижения в области 3D-физиологии человека , часть 1, стр. 133–148 [143], 2009 г. ISBN 1848825641 дои : 10.1007/978-1-84882-565-9_9
- ^ «LS0xxB4Dx01 ЖК-дисплей с памятью со сверхнизким энергопотреблением» (PDF) . Архивировано из оригинала (PDF) 24 февраля 2014 г. Проверено 19 февраля 2014 г.
- ^ Ангелос Д. Керомитис, «Надежные вычислительные платформы и безопасные операционные системы», в: Маркус Якобссон и Стивен Майерс (ред.), Фишинг и контрмеры: понимание растущей проблемы кражи электронных личных данных, John Wiley & Sons , 2006 ISBN 0- 47008609-2. п. 403.
- ^ Система безопасности для системы видеоигр с жестким диском и возможностью доступа в Интернет. Скотт Скотт Эллиот, Nintendo, 2004 г. https://patents.google.com/patent/US6942573B2. Архивировано 14 декабря 2021 г. на Wayback Machine.
- ^ Якарыилмаз, Абузер; Фрейвалдс, Русины; Скажем, AC Cem; Агадзанян, Рубен (март 2012 г.). «Квантовые вычисления с помощью устройств, содержимое которых никогда не считывается». Естественные вычисления . 11 (1): 81–94. arXiv : 1011.1201 . дои : 10.1007/s11047-011-9270-0 . S2CID 12513092 .
Дальнейшее чтение
[ редактировать ]- Якобссон, Маркус; Майерс, Стивен (5 декабря 2006 г.). Фишинг и меры противодействия: понимание растущей проблемы кражи электронных личных данных . Джон Уайли и сыновья . ISBN 978-0-470-08609-4 . Проверено 20 мая 2013 г.