Пруль Таймс
 
[Most Recent Entries] [Calendar View] [Friends View]

Thursday, November 23rd, 2017

    Time Event
    4:31p
    Кстати о загрузке
    Потрясу седыми мудями: расскажу о загрузке на ЕС ЭВМ (она же 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)

    << Previous Day 2017/11/23
    [Calendar]
    Next Day >>

About LJ.Rossia.org