Запуск современного x86 до сих пор выглядит как реконструкция истории. После reset процессор стартует в 16-битном real mode, унаследованном от начала 80-х. Затем следует переход в protected mode эпохи 32-битных систем — и только после этого возможен вход в полноценный 64-битный long mode. Это не вопрос удобства или инерции. Такой путь — цена экосистемы, в которой загрузчики, прошивки, платформенные интерфейсы и ожидания «железа» десятилетиями формировались вокруг этой последовательности.
Та же логика размазана по всему ISA и платформе. Legacy-прерывания, I/O через порты, избыточные режимы и уровни привилегий, которыми почти никто не пользуется, но которые нельзя игнорировать, — всё это продолжает существовать, потому что когда-то стало частью контракта совместимости. Эти механизмы не «мешают» напрямую, но они формируют сложность, от которой невозможно абстрагироваться.
Этот же контракт проявляется и на уровне прошивок. Классический BIOS был прямым отражением раннего x86: 16-битный ко