MZ – первые 2 байта говорят о том, что это досовский экзешник.
Любой windows ехе-файл факт-ки содерж 2 пр-ммы – к-я запускается на вып-е досовским загрузчиком и собственно пр-мму windows. Со см 18h в заголовке: DOS – опр-ет табл настройки, в windows – если здесь число >=40h, то win-загрузчик считает, что это не досовский файл, а файл windows. 3ch - содержится см внутри этого файла для структуры wininfo – заголовок windows. Факт-ки первые 2 байта тоже сигнатура, напр РЕ. Форматов win загрузочных модулей больше. Дальше в заголовке – ссылки и адреса всех таблиц, вся настроечная инф-я, к-я исп-ся для загр-ки пр-ммы на вып-е в среде windows. Дальше сами таблицы, код, данные.
Система прерываний.
Прерывание – это прекращение вып-я текущей посл-ти команд (т е посл-ти команд активной пр-ммы) вледствие некот события. В зав-ти от причин прер-я: внешние(или асинхронные) по отнош-ю к активной пр-мме, внутренние - связаны с вып-ем активной пр-ммы, делятся на неск групп 1. Добровольное прер-е пр-ммы (обращ-е к сист ф-ям, к ОС за рес, команда int – interrupt); 2. Прер-я, связ-е с невозм-тью вып-я проц-ром выбранной команды (напр дел-е на 0, передано упр-е на данные, измен-е кода пр-ммы вслед-е переполнения массива, обращ-е по несущ-му адресу). Такие прер-я наз искл-ми, или икл-ми ситуациями. Искл-я: а)fault – отказ – искл-е, к-е распозн-ся до начала вып-я команды, вызвавшей это искл-е, напр обр-е к незагр-ной странице. При этов возм рестарт вып-я команды, вызвавшей искл-е; б)hook – ловушка – распозн-ся в ходе вып-я команды. Вып-е команды начато, но проц-р не может получить норм рез-т (дел-е на 0 – в некот процах а, в некот б; переполнение при умножении – рез-т не вмещается в разрядную сетку), рестарт команды не вып-ся, можно возобновить вып-е со след команды; в)Выход из пр-ммы, прекращ-е вып-я пр-ммы. Пр-мма не может продолжить вып-е (проц-р не успевает запомнить усл-я возникновения ош-ки, восст-ть контекст нельзя). Классиф-я прер-ний м б более сложной. Это опр-ся хар-ми аппаратуры и СПО.