| |||
|
|
Кстати о загрузке Потрясу седыми мудями: расскажу о загрузке на ЕС ЭВМ (она же IBM System/360) Там программа начальной загрузки занимала 16 байт А именно, по нажатию клавиши LOAD на передней стенке процессора (напоминаю, что процессор этой системы был размером с шкаф и на передней стенке ее были лампочки, переключатели, кнопки регистр PSW и регистр CCW в регистре PSW (processor status word) устанавливался адрес текущей команды 0000 (адрес, то есть аналог Instruction Pointer у x86 был частью PSW). также PSW имел внутри флаги и кроме нуля в адресе инициалировался флаг "Ожидание ввода-вывода" CCW - channel command word - командное слово канала. Каналом в этой архитектуре назывался отдельный процессор ввода-вывода (еще один шкаф). CCW инициализировался командой "считать с диска 0 первые N байт в адрес 0) Дальше все просто. По отпусканию кнопки LOAD внутренний бог в машине говорил "Заебись" И всё заеблось. Канал считывает в ОЗУ с адреса 0 N байтов и передает процессору сигнал "ввод-вывод завершен" Процессор радостно начинает выполнять код начиная с адреса 0, а там (сюрприз!) находится программа начальной загрузки IPL (Initial Program Loader) |
||||||||||||||