Есть ли спецификация назначения портов ввода-вывода x86?
Я нашел некоторую информацию в Интернете следующим образом, но неполной.
http://en.wikipedia.org/wiki/Input/output_base_address
http://wiki.osdev.org/I/O_Ports
Где скачать спецификацию?
3 ответа
Хороший источник для текущей (а не с 1994 года) карты портов ввода / вывода - это документация о наборе микросхем, например, таблица данных наборов микросхем Intel® 7 серии (см. Раздел 9.3, Карта ввода / вывода). Например, вот некоторые порты, которые обычно используются в современных ПК и не упоминаются в старых списках:
- 2E-2F, 4E-4F: интерфейс с низким количеством выводов (LPC), обычно подключаемый к Super I / O
- 0CF8, 0CFC: доступ к пространству конфигурации PCI
- B2: порт ACPI и SMI (при записи в него обычно генерируется прерывание SMI)
Обратите внимание, что некоторые диапазоны ввода / вывода являются динамическими и могут быть перемещены путем перепрограммирования различных битов в соответствующей конфигурации устройств PCI.
Вы можете проверить список прерываний Ральфа Брауна "RBIL".
Часть D содержит информацию о портах ввода / вывода.
Для классической (то есть до 1995 года) информации о портах проект Bochs имеет очень полезный список адресов портов XT, AT и PS/2. Список является довольно полным, хотя преамбула предупреждает читателя "не считать эту информацию полной и точной".