Многие программы процессора 8086 написаны для однозадачных систем и содержат непосредственные обращения к портам ввода /вывода. Это порождает серьезные проблемы в многозадачной среде. Если более одной программы обратятся к одному и тому же порту, то они могут пересечься друг с другом. Многие многозадачные системы требуют от прикладных программ обращения к портам ввода /вывода через операционную систему. В результате упрощается централизованное управление.
Процессор i486 обеспечивает защиту ввода/вывода для организации ввода/вывода, совместимого со средой центрального процессора i486 и прозрачного для программ процессора 8086. Разработчики могут использовать следующие возможные подходы к защите ввода/ вывода:
- Защита адресного пространства ввода/вывода и генерация исключений при любой попытке непосредственного выполнения ввода/вывода.
- Позволить программам процессора 8086 непосредственное выполнение ввод/вывод.
- Генерировать исключения при попытках обращения к специальным портам ввода/вывода.
- Генерировать исключения при попытках обращения к специальным портам ввода/вывода, отображеным в память.
Метод управления вводом/выводом зависит от того, отображаются ли порты ввода/вывода в пространство памяти или в пространство ввода/вывода.