Каждому системному программисту известно, что BIOS — это программное обеспечение, работающее, так сказать, на «голом железе». Это программное обеспечение взаимодействует напрямую с аппаратными средствами, без каких бы то ни было «посредников». Таким образом, между кодом BIOS J Кремниевыми интегральными схемами нет никаких промежуточных уровне Программного обеспечения. Это значит, что любой код, который требуете11 Внедрить в BIOS, должен иметь формат плоского двоичного файл3 Термин Плоский двоичный файл подразумевает однородный файл неисполняемого формата, не содержащий заголовков или иных структур. Иными слоя3 Ми, плоский двоичный файл может содержать только чистый машинный независимые данные. Существует лишь одно исключение из этого правила — для BIOS плат расширения существует формат заголовка, которого необходимо придерживаться. В этом разделе рассматривается процедура генерации плоского двоичного файла из файла, содержащего исходный код на языке ассемблера при помощи трансляторов NASM и FASM. NASM — это бесплатно распространяемый ассемблер, который можно скачать с сайта Имеются версии NASM для Windows и для Linux. Программа довольно мощная, и на данном этапе ее возможностей нам будет достаточно. В листинге 3.1 показан исходный код «заплатки», которую я наложил на мою BIOS. Данный код разработан на языке ассемблера и предназначен для трансляции с помощью NASM. Чтобы убедится в том, что ассемблер генерирует желаемый код, выходной файл можно проанализировать при помощи ndisasm или какого-либо другого дизассемблера. Теперь давайте рассмотрим другой, относительно более простой в использовании ассемблер — FASM. Ассемблер FASM подходит для разработки заплаток BIOS, так как он генерирует плоский двоичный файл по умолчанию. Как и NASM, FASM тоже распространяется бесплатно; скачать его можно с сайта В этом разделе мы рассмотрим приемы работы с версией ассемблера FASM для Windows — FASMW. Сначала модифицируем предыдущую заплатку под синтаксис ассемблера FASM. Соответствующий исходный код показан в Чтобы ассемблировать код из листинга 3.3, скопируйте его в текстовый редактор FASMW и нажмите комбинацию клавиш +. Как видим, процесс ассемблирования FASMW более удобен, нежели аналогичный процесс с помощью NASM.
Рубрика: Женский интерес