Операционная система.
О
том, как сформировать таблицу прерываний
процессору ничего не известно и не может
быть известно, ибо процессор-черный
яшик о программе ничего не знает.
Формировать таблицу прерываний задача
программного обеспечения. Как и
использовать драйверы.
Какая
бы программа ни пользовалась устройством,
ее исполняемая часть должна содержать
некоторый код из драйвера этого
устройства. Программ много, а драйвер
один, поэтому удобнее не присоединять
к программе код драйвера этого устройства,
а поместить этот код в память независимо
от программы, а в программе оставить
только вызовы этого кода. Это облегчает
программы.
Далее,
на компьютерах с разной архитектурой
при совместимых процессорах (ну, например,
жесткие диски разных производителей)
драйверы разные, а программа, если она
код драйвера в себе не содержит, может
быть одинаковой.
Поэтому
часть кода, одинаковую для всех программ
на этом компьютере, но разную для
компьютеров разной архитектуры, выделили
в отдельный пакет, который называется
операционной системой, поскольку он, в
основном, занимается операциями с
устройствами. Сюда же входит и программа
инициализации компьютера, то есть,
приведение памяти компьютера в состояние,
при котором с устройствами можно работать
и, например, получать от пользователя
команды на запуск программ. Это, конечно,
минимальная операционная система,--
современные операционные системы
значительно мощнее.
На
этом с архитектурой компьютера можно
закончить и перейти к многозадачности.
Стоит только упомянуть, что, хоть все
компоненты на деле являются более
сложными системами и есть еще много не
упомянутых оптимизирующих компонентов,
для понимания основных принципов работы
компьютера рассмотренного достаточно.