Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Почему в наших компьютерах используется именно архитектура фон Неймана, а не Гарвардская? Кто принял решение оставить именно первый вариант?

ПрограммированиеКомпьютеры+2
Никита Щипков
  · 2,1 K
Программист, выпускник ФКН ВШЭ, просто человек  · 8 февр 2019

Вкратце: гарвардская архитектура слишком негибкая для массового использования.

Суть различий между ними в том, что фон Неймановская (a.k.a. принстонская) архитектура хранит команды так же, как и данные, а гарвардская хранит их раздельно. Из этого проистекает такая особенность архитектуры фон Неймана, что программный код можно изменять.

С одной стороны, это минус: системы на принстонской архитектуре более уязвимые, так как злоумышленники могут подменить команды и заставить компьютер выполнять не тот код, который должен выполняться. Поэтому гарвардская архитектура до востребована в критичных системах вроде ракет, АЭС и т.п.

Однако, это так же и весьма большой бонус. Хранение кодов таким же образом как и данные позволяет пользователям самостоятельно устанавливать и обновлять программы, потому что это происходит схожим с обычной обработкой данных. Таким образом сильно упрощается конфигурирование под нужды пользователей (на одинаковом железе один может играть в игры, другой работать с офисными данными, третий записывать музыку, а четвёртый запускать сервер, причём настроить они это могут самостоятельно), исправление ошибок (не надо отзывать физические устройства, а можно просто выкатить в интернет обновление, которое клиенты сами смогут установить), добавление нового функционала.

Причём возможностью удалённой работы пользуются все: начиная от вебсайтов, которые вчера показывали клиенту одно, а сегодня другое, заканчивая обновлениями микрокода процессоров. А иногда доступно только удалённое изменение кода. Представляете, тот же зонд "Вояджер", который улетел за границы Солнечной системы, был перепрограммирован тогда, когда был в районе Плутона. https://www.popularmechanics.com/space/a17991/voyager-1-voyager-2-retiring-engineer/

В общем, дешевизна и гибкость к изменениям сделали архитектуру фон Неймана господствующей.

3 эксперта согласны
Специалист в области разработки систем управления. Трансгуманист. Интересуюсь...  · 17 апр 2021
С гарвардской архитектурой надо сильно заморачиваться с построением компиляторов. По своей природе, компилятор - это такая программа, которая генерирует код, как свои выходные данные. Но если компилятор может писать данные в область кода, то почему другие программы не могут? Поэтому с гарвардской архитектурой машины тоже встречаются, но обычно с кросс-компиляцией на... Читать далее