Список Ральфа Брауна прерывания (ака RBIL , x86 Список прерываний , MS-DOS Список прерываний или INTER ) представляет собой исчерпывающий список прерываний , вызовов , крючки , интерфейсы , структуры данных , настроек CMOS , памяти и порта адреса, а также процессор опкодами и регистры специальных функций для машин x86 (включая множество клонов ) с самого начала эры ПК в 1981 г. по 2000 г. [1][2] [nb 1] большая часть этого все еще применяется к ПК сегодня.
Обзор
Список включает операционные системы , драйверы устройств и прикладное программное обеспечение ; как документированная, так и недокументированная информация, включая ошибки , несовместимости, недостатки и обходные пути, с информацией о версии, локали и дате, часто на уровне детализации, намного превосходящем то, что можно найти в современной литературе. [3] [4] [5] Большая часть его охватывает системные BIOS и внутреннее устройство операционных систем, таких как DOS , OS / 2 и Windows , а также их взаимодействие. [3] [6]
Он широко использовался разработчиками систем IBM PC , [7] [4] [5] аналитиками [8], а также программистами приложений в эпоху до Windows . [3] [6] Части скомпилированной информации были использованы для создания и создания нескольких книг по системному программированию, [3] [6] [9] [10] [11] [12], некоторые из которых также были переведены на китайский, [13] [14] [15] [6] японский [3] и русский языки . [16] [17] Как таковая компиляция оказалась важным ресурсом при разработке различных операционных систем с закрытым и открытым исходным кодом, включая Linux и FreeDOS . [18] Сегодня он все еще используется в качестве ссылки на вызовы BIOS и для разработки программ для DOS, а также другого программного обеспечения системного уровня.
Проект является результатом исследований и совместных усилий более 650 перечисленных участников по всему миру в течение 15 лет, из которых около 290 предоставили важную информацию (а около 55 из них даже более одного раза). [1] Оригинальный список был создан в январе 1985 года Джанет Джек и другие, [19] и, названный «Список прерываний для MS-DOS», он впоследствии поддерживалось и не отправили в запрашивающих на Usenet по Росс М. Гринберг до 1986 года. [20] [21] [22] С октября 1987 года она поддерживается Ральфом Д. Браун, [23] научный сотрудник Carnegie Mellon University «s Language Institute Technologies . [3] [6] [24] Информация из нескольких других списков прерываний была объединена в список, чтобы создать одну всеобъемлющую справочную компиляцию. С годами Майкл А. Шилс, Тимоти Патрик Фарли , Матиас Р. Пол, Робин Д.Х. Уокер, Вольфганг Лирц и Тамура Джонс стали основными участниками проекта, предоставляя информацию по всему списку. [1] Проект также был расширен за счет включения другой информации, связанной с разработкой ПК, и поэтому в него вошел ряд независимо поддерживаемых списков портов ввода-вывода ПК (Вим Остерхолт и Маттиас Р. Пол), содержимого памяти CMOS BIOS (Автор: Атли Пэджетт Петерсон) ), коды операций процессора (Алекс Потемкин) и ошибки (Харальд Фельдманн). [1] [nb 1] Браун и Пол также провели несколько систематических опросов по конкретным аппаратным и программным деталям среди ряда специализированных групп пользователей, чтобы подтвердить некоторую информацию и помочь заполнить некоторые пробелы в списке. [25] [26] [27]
Первоначально список распространялся в архиве с именем INTERRUP в различных форматах сжатия, а также в виде diff- файлов . Имя файла дистрибутива было изменено, чтобы включить версию в форме ИНТЕРНЫЙ (с n = номером выпуска и yy = 2-значным годом выпуска) в 1988 году. В середине 1989 года дистрибутив решил использовать только сжатие ZIP . [28] Когда в июне 1991 года архив достиг размера дискеты в 360 КБ , дистрибутив разделился на несколько файлов по схеме именования INTERrrp.ZIP (с rr = ревизия, начиная с 26 для версии 91.3, и p = индикатор части файла). пакет, начинающийся с буквы А). Официально названные его сопровождающим «Список прерываний MS-DOS» и «Список прерываний x86» (сокращенно «INTER»), сообщество придумало неофициальное название «Список прерываний Ральфа Брауна» (сокращенно «RBIL»).
Публикация в настоящее время в редакции 61 от 17 июля 2000 года с почти 8 МБ в ASCII текста , включая близкие к9600 записей плюс около5400 таблиц [1] полностью перекрестно связаны, что приведет к более чем 3700 страницам (по 60 строк на страницу) сжатой информации при печати. Из них сам список прерываний составляет около 5,5 МБ на более чем 2500 распечатываемых страниц. [nb 1]
Хотя проект официально не заброшен, а веб-сайт все еще поддерживается (по состоянию на 2020 год), новых выпусков не было в течение очень долгого времени, несмотря на то, что информация еще не была опубликована даже до выпуска INTER61 в 2000 году. [ 29] Новые выпуски были запланированы несколько раз в 2001 [30] [31] и 2002, [32] [33] [34] [35] [26] [27]], но когда они не материализовались, части нового Информация о внутреннем устройстве DOS и ПК, предоставленная Полом, была распространена в предварительном виде в сообществе разработчиков для экспертной оценки и помощи в разработке операционной системы. [31] [36] [37] [33] [38] [39] [40] [41] [26] [42] [43] [44] [45] »
Смотрите также
- Вызов прерывания BIOS
- DOS API
- INT (инструкция x86)
- Анализ компьютерных вирусов
Заметки
- ^ a b c Содержание выпуска INTER 61 (как форматированный текст ASCII ):
INTERRUP.LST 5.700.679 байт, 151.173 строкFARCALL.LST 81,446 байта, 2,178 строкMEMORY.LST 144,149 байт, 3,606 строкPORTS.LST 879,133 байта, 23,893 строкиCMOS.LST 77,175 байта, 2,015 строкиI2C.LST 141,061 байт, 3,563 строкиOPCODES.LST 624,174 байта, 33,936 строкMSR.LST 81,345 байт, 2,190 строкSMM.LST 7,939 байт, 291 строка86BUGS.LST 119.004 байта, 3.004 строки 7.856.105 байт, 225.849 строк
Рекомендации
- ^ a b c d e Браун, Ральф Д., изд. (2002-12-29) [2000-07-17, 1985]. "Список прерываний x86" (61-е изд.). Архивировано 22 августа 2017 года . Проверено 14 октября 2011 . [1] [2] [3] [4] [5] [6] [7]
- ^ Стиллер, Андреас; Пол, Матиас Р. (1996-05-12). "Prozessorgeflüster" . c't - магазин компьютерной техники . Тенденции и новости / aktuell - Prozessoren (на немецком языке). Vol. 1996 г. 6. Verlag Heinz Heise GmbH & Co KG . п. 20. ISSN 0724-8679 . Архивировано 28 августа 2017 года . Проверено 28 августа 2017 .
- ^ а б в г д е Шульман, Эндрю; Браун, Ральф Д .; Макси, Дэвид; Michels, Raymond J .; Кайл, Джим (1994) [ноябрь 1993]. Недокументированная DOS: Руководство программиста по зарезервированным функциям и структурам данных MS-DOS - расширено за счет включения MS-DOS 6, Novell DOS и Windows 3.1 (2-е изд.). Эддисон Уэсли . ISBN 978-0-201-63287-3.(xviii + 856 + vi страниц, 3,5-дюймовая дискета) Исправление: [8] [9] (NB. Это включает переупакованную версию INTER36. Первое издание см. здесь . Японский перевод существует под ISBN 4-89052-629-3 .)
- ^ а б Виас, Джон П., Документация SNOOPER (SNOOPER.DOC) , 1.07,
Огромный список вызовов прерываний DOS и BIOS, многие недокументированные и программно-зависимые. Проще говоря, без него не было бы некоторых отчетов Snooper. Очень полезно, так как сообщает об ошибках и несовместимости, о которых редко упоминают книги. И это бесплатно!
- ^ а б Дэвис, Роберт Кертис, TBONES07.DOC ,
Ральф Браун поддерживают потрясающий файл, который переполнен подробной, абсолютно необходимой для программистов DOS информацией об аппаратном обеспечении, BIOS, DOS и других прерываниях. […] Вы не должны остаться без этого файла, который широко известен как «Список прерываний Ральфа Брауна». Спроси об этом. Ты найдешь это."
- ^ а б в г д Шульман, Эндрю; Michels, Raymond J .; Кайл, Джим; Патерсон, Тим ; Макси, Дэвид; Браун, Ральф Д. (1990). Недокументированная DOS: Руководство программиста по зарезервированным функциям и структурам данных MS-DOS (1-е изд.). Эддисон Уэсли . ISBN 978-0-201-57064-9.(xviii + 694 + viii страницы, две 5,25-дюймовые дискеты) Исправление: [10] [11] (NB. Получил награду Jolt Productivity Award . Содержит гипертекстовую версию INTER490, также известного как INTER22. ISBN 7-302-01071-4 . Также доступно второе издание .)
- ^ "(неизвестный)". Turbo Technix - языковой журнал Borland . Скоттс-Вэлли, Калифорния, США: Borland Communications . 1 (5): 157. Июль – август 1988 г. ISSN 0893-827X . OCLC 15650918 .
Рог изобилия описаний прерываний и вызовов функций на IBM PC. Отличная вещь для вашего жесткого диска, если у вас нет под рукой книги Рэя Дункана или Питера Нортона .
Cite использует общий заголовок ( справка ) (NB. О версии списка прерываний 1988-01-30). - ^ Сэр, Петер (февраль 2005 г.). «15.2.2 База знаний» . Искусство исследования и защиты компьютерных вирусов . ART COMP VIRUS RES DEFENSE _p1 (1-е изд.). Symantec Press / Pearson Education . п. 690. ISBN 0-67233390-2. LCCN 2004114972 . Архивировано 06 марта 2020 года . Проверено 6 марта 2020 .
В прошлом список прерываний Ральфа Брауна был Библией анализа вирусов DOS.
- ^ Браун, Ральф Д .; Кайл, Джим (январь 1994). Прерывания ПК: Справочник программиста по BIOS, DOS и сторонним вызовам (2-е изд.). Эддисон Уэсли . ISBN 0-201-62485-0.(1210 страниц + дискета) Исправление: [12] (NB. Это соответствует не сетевым частям INTER36 с некоторыми дополнениями из INTER37. См. Здесь первое издание.)
- ^ Браун, Ральф Д .; Кайл, Джим (1991). Прерывания ПК: Справочник программиста по BIOS, DOS и сторонним вызовам (1-е изд.). Эддисон Уэсли . ISBN 0-201-57797-6.Исправление: [13] (NB. Русский перевод этого издания доступен в двух томах: 1 , 2. Также доступно второе издание .)
- ^ Браун, Ральф Д. (март 1994). Сетевые прерывания: Справочник программиста по сетевым API (1-е изд.). Эддисон Уэсли . ISBN 0-201-62644-6.(730 страниц) Исправление: [14] (NB. Это соответствует сетевым частям INTER37 с некоторыми дополнениями из INTER38.)
- ^ Браун, Ральф Д .; Кайл, Джим (1994-11-01). Непрерывные прерывания: справочник программиста на компакт-диске для сетевых API-интерфейсов, а также для BIOS, DOS и сторонних вызовов (компакт-диск). Эддисон Уэсли . ISBN 0-201-40966-6.(NB. Компакт-диск содержит полный текст как « Прерывания ПК » (второе издание), так и « Сетевые прерывания », обновленный с учетом информации, добавленной через INTER42.)
- ^ 布朗 (1992). PC 中斷 服務 常式 應用 軟體 介面 呼叫 大全[ Службы прерывания ПК и интерфейсы прикладных программ: INT 00h-1Fh ] (на китайском языке). 1 (1-е изд.). ISBN 957-652-272-2.(516 страниц) (NB. Этот перевод INTER26 является частью трехтомного набора: 2 , 3. )
- ^ PC 中斷 服務 常式 應用 軟體 介面 呼叫 大全 (作業 系統 篇)[ Службы прерывания ПК и интерфейсы прикладных программ (записи операционной системы): INT 20h-30h ] (на китайском языке). 2 (1-е изд.). 1992. ISBN. 957-652-271-4.(704 страницы) (NB. Этот перевод INTER26 является частью трехтомного набора: 1 , 3. )
- ^ 布朗 (1992). PC 中斷 服務 常式 應用 軟體 介面 呼叫 大全 (公用程式 篇)[ Службы прерывания ПК и интерфейсы прикладных программ (Утилиты): INT 31h-FFh ] (на китайском языке). 3 (1-е изд.). ISBN 957-652-261-7.(488 страниц) (NB. Этот перевод INTER26 является частью трехтомного набора: 1 , 2. )
- ^ Браун, Ральф Д .; Кайл, Джим (1994).Справочник по прерываниям для IВМ РС: В 2 т. Т.1.[ Справочник прерываний для компьютеров IBM ]. 1 (1-е изд.). ISBN 5-03-002989-3.(NB. Этот перевод первого издания " PC Interrupts " является частью двухтомного набора.)
- ^ Браун, Ральф Д .; Кайл, Джим (1994).Справочник по прерываниям для IВМ РС: В 2 т. Т.2.[ Справочник прерываний для компьютеров IBM ]. 2 (1-е изд.). ISBN 5-03-002990-7.(NB. Этот перевод первого издания " PC Interrupts " является частью двухтомного набора.)
- ^ Холл, Джим (2002-03-25). «Прошлое, настоящее и будущее проекта FreeDOS» . Архивировано из оригинала на 2017-08-22 . Проверено 23 января 2015 .
- ^ Джек, Джанет; Уивер-младший, Джон; Купер, Джон; Гильбрех, Скип; Кайл, Джим; Джек, Боб (апрель 1985 г.) [январь 1985 г.]. «Структура прерывания» . Архивировано 24 августа 2017 года . Проверено 24 августа 2017 .
- ^ Гринберг, Росс Мэтью (1985-07-30). «Список прерываний DOS (Список прерываний для MS-DOS (только 2.xx - с некоторыми примечаниями по DOS 3.xx))» . Группа новостей : net.micro.pc . Архивировано 4 сентября 2017 года . Проверено 4 сентября 2017 .
- ^ Гринберг, Росс Мэтью (1985-07-30). «Опубликован новый список прерываний DOS» . Группа новостей : net.micro.pc . Архивировано 4 сентября 2017 года . Проверено 4 сентября 2017 .
- ^ Гринберг, Росс Мэтью (1986-03-10). "Re: Помогите с SWITCHAR" . Группа новостей : net.micro.pc . Архивировано 4 сентября 2017 года . Проверено 4 сентября 2017 .
- ^ Браун, Ральф Д., изд. (Ноябрь 1987 г.) [октябрь 1987 г.]. «Список прерываний (INTERRUP.TXT)» . Архивировано 01 сентября 2017 года . Проверено 1 сентября 2017 .
- ^ Браун, Ральф Д. (2008-04-04). "Домашняя страница Ральфа Брауна" . Архивировано 22 августа 2017 года . Проверено 14 октября 2011 .
- ^ Браун, Ральф Д. (1989-04-07). «Информационный запрос» . Телеконференции : comp.sys.ibm.pc . Архивировано 4 сентября 2017 года . Проверено 4 сентября 2017 .
- ^ а б в Пол, Матиас Р. (30.06.2002). «Определение различных машин IBM для RBIL» . Группа новостей : comp.sys.ibm.ps2.hardware . Архивировано 4 сентября 2017 года . Проверено 4 сентября 2017 .
- ^ а б Пол, Матиас Р. (21 февраля 2002 г.). "Информация GEOS / NDO для RBIL62?" . Группа новостей : comp.os.geos.programmer . Архивировано 20 апреля 2019 года . Проверено 20 апреля 2019 .
- ^ Браун, Ральф Д. (1989-04-30). "Список прерываний отличается от INTERRUP.1ST v89.1 -> v89.2" . Архивировано 01 сентября 2017 года . Проверено 1 сентября 2017 .
- ^ Пол, Матиас Р. (01.07.2002). "Re: Tastatur-Problem" (на немецком языке). Группа новостей : de.comp.lang.assembler.x86 . Архивировано 4 сентября 2017 года . Проверено 4 сентября 2017 .
- ^ Пол, Матиас Р. (27 мая 2001 г.). "Re: Настоящий или RAM-диск?" . fd-dev . Topica. Архивировано 3 сентября 2017 года . Проверено 3 сентября 2017 .
- ^ а б Пол, Матиас Р. (2001-10-25). "Re: Сменить \ на / в DOS" . Группа новостей : alt.msdos.programmer . Архивировано 3 сентября 2017 года . Проверено 3 сентября 2017 .
- ^ Пол, Матиас Р. (19 февраля 2002 г.). «[fd-dev] К вашему сведению: расписание RBIL62 / участие в списке прерываний Ральфа Брауна» . freedos-dev . Архивировано 3 сентября 2017 года . Проверено 3 сентября 2017 . [15]
- ^ а б Пол, Матиас Р. (2002-04-03). "[fd-dev] Ctrl + Alt + Del" . freedos-dev . Архивировано 9 сентября 2017 года . Проверено 9 сентября 2017 .
- ^ Пол, Матиас Р. (15 мая 2002 г.). "Информация о CP / M-86 и древнем компьютерном оборудовании для RBIL62?" . Группа новостей : comp.os.cpm . Архивировано 3 сентября 2017 года . Проверено 3 сентября 2017 .
- ^ Пол, Матиас Р. (2002-10-05). «Re: Реализация удаленной файловой системы в DOS» . Группа новостей : comp.os.msdos.programmer . Архивировано 3 сентября 2017 года . Проверено 3 сентября 2017 .
- ^ Пол, Матиас Р. (18 августа 2001 г.). «Re: [fd-dev] на GRAFTABL и DISPLAY.SYS (было: изменение кодовых страниц в FreeDOS)» . freedos-dev . Архивировано 4 сентября 2017 года . Проверено 4 сентября 2017 .
- ^ Пол, Матиас Р. (2002-09-06). «Re: чтение Ctrl, Alt и сдвиги ...» Группа новостей : alt.lang.asm . Архивировано 3 сентября 2017 года . Проверено 3 сентября 2017 .
- ^ Пол, Матиас Р. (13 августа 2002 г.). "Re: Suche freien Speicherbereich unterhalb von 1 MB, der nicht von OS überschrieben wird" (на немецком языке). Группа новостей : de.comp.lang.assembler.x86 . Архивировано 4 сентября 2017 года . Проверено 3 сентября 2017 .
- ^ Пол, Матиас Р. (2002-10-07). «Re: запустить COM-файл» . Группа новостей : alt.msdos.programmer . Архивировано 3 сентября 2017 года . Проверено 3 сентября 2017 .
- ^ Пол, Матиас Р. (2002-10-07). «Re: masm .com (PSP), связанная с проблемой» . Группа новостей : alt.lang.asm . Архивировано 3 сентября 2017 года . Проверено 3 сентября 2017 .
- ^ Пол, Матиас Р. (2002-10-09). "Re: Файлы в стиле COM размером более 64 Кб?" . Группа новостей : alt.msdos.programmer . Архивировано 3 сентября 2017 года . Проверено 3 сентября 2017 .
- ^ Пол, Матиас Р. (2002-05-14). «Re: Probleme mit INT 9h» (на немецком языке). Группа новостей : de.comp.lang.assembler.x86 . Архивировано из оригинала на 2017-09-04 . Проверено 4 сентября 2017 .
- ^ Пол, Матиас Р. (21 ноября 2002 г.). "Re: [fd-dev] ID кодовых страниц" . freedos-dev . Архивировано 4 сентября 2017 года . Проверено 4 сентября 2017 .
- ^ Пол, Матиас Р. (05.09.2002). "Re: [fd-dev] NLS и строчные буквы" . freedos-dev . Архивировано 4 сентября 2017 года . Проверено 4 сентября 2017 .
- ^ Пол, Матиас Р. (01.04.2002). «Исправление для CauseWay DOS extender под DR-DOS 7.0x EMM386.EXE» . Группа новостей : comp.os.msdos.programmer . Архивировано 19 сентября 2018 года . Проверено 19 сентября 2018 .(NB. Подробно описаны некоторые частные функции DPMI / VCPI DR-DOS EMM386.)
Внешние ссылки
- Официальный веб-сайт
- Делори, ди-джей , изд. (2000-07-17). "Список прерывания Ральфа Брауна" . 61. Архивировано 22 августа 2017 года . Проверено 22 августа 2017 . (NB. HTML-конвертированная версия INTER61 от Delorie Software.)
- Перкель, Марк , изд. (2000-07-17). «Список прерываний Ральфа Брауна: индексированная версия HTML - выпуск 61: подарок программистам DOS» . 61. Архивировано из оригинала на 2017-08-24 . Проверено 24 августа 2017 . (NB. HTML-конвертированная версия INTER61 от Computer Tyme.)