:: Статистика ::

 
Індекс цитування

 

 

 

 

 

Доступ до зовнішніх пристроїв

З точки зору центрального процесора і програми, що виконується на нім, зовнішні пристрої є наборами спеціалізованих елементів пам'яті або, якщо завгодно, регістрів. Біля мікроконтроллерів ці елементи пам'яті є регістрами центрального процесора, біля процесорів загального призначення регістри пристроїв зазвичай підключаються до шин адреси і даних ЦПУ. Пристрій має адресний дешифратор. Якщо виставлена на шині адреса відповідає адресі одного з регістрів пристрою, дешифратор підключає відповідний регістр до шини даних (мал. 9.1). Таким чином, регістри пристрою отримують адреси у фізичному адресному просторі процесора.

Мал. 9.1. Підключення зовнішнього пристрою до шини

Два основні підходи до адресації цих регістрів — це окреме адресний простір введення-виводу і уведення-виведення, що відображує в пам'ять (memory-mapped I/O) коли пам'ять і регістри зовнішніх пристроїв розміщуються в одному адресному просторі. У першому випадку для звернення до регістрів Пристроїв використовуються спеціальні команди IN і OUT. У другому випадку Можуть використовуватися будь-які команди, здатні працювати з операндами в пам'яті. Як правило, навіть в разі роздільних адресних просторів, для обміну даними з пам'яттю і зовнішніми пристроями процесор использу-ет одні і ті ж шини адреси і даних, але має додатковий сигнал адресної шини, вказуючий, який з адресних просторів використовується в даному конкретному циклі.
Цікавий гібридний підхід, що поєднує переваги обоє вищеназваних, надають мікропроцесори з системою команд SPARC v9 Біля цих процесорів команди мають поле, що служить селектором адресного простору. Цей селектор, зокрема, може використовуватися для вибору адресного простору пам'яті або введення-виводу. Завдяки цьому, з одного боку, можна застосовувати для роботи з регістрами портів будь-які команди роботи з пам'яттю, як при введенні-виводі, що відображує в пам'ять, і в той же час повністю задіювати адресний простір пам'яті.
Два основні підходи до виділення адрес зовнішнім пристроям — це фіксована адресація коли один і той же пристрій завжди має одні і ті ж адреси регістрів, і географічна адресація коли кожному роз'єму периферійної (або системною, якщо зовнішні пристрої підключаються безпосередньо до неї) шини відповідає свій діапазон адрес (мал. 9.2). Географічно можна розподіляти не лише адреси регістрів, але і інші ресурси — лінії запиту переривання, канали ПДП.

Мал. 9.2. Фіксована і географічна адресація

Географічна адресація володіє властивістю, яка на перший погляд здається протиприродною: переміщення плати пристрою в інший роз'єм наводить до необхідності переконфігурації ОС (а в деяких випадках, наприклад, якщо переміщена плата була контроллером завантажувального диска, а вторинний завантажувач або процедура ініціалізації ядра недостатньо кмітливі, може навіть привести до помилок при завантаженні). Проте цей спосіб розподілу адресного простору зручний тим. тго унеможливлює конфлікту адрес між пристроями різних виробників або між двома однотипними пристроями (з цією проблемою має бути знаком кожен, хто намагався одночасно встановити в комп'ютер мережеву і звукову карти конструктиву ISA). Більшість периферійних шин сучасних міні- і мікрокомп'ютерів, такі, як PCI, S-Bus і ін., реалізують географічну адресацію.
Багато сучасні конструктивы вимагають, аби окрім регістрів управління і даних пристрою мали також конфігураційні регістри, через звернення до яких ОС може отримати інформацію про пристрій: фірму-виготівника, модель, версію, кількість регістрів і так далі Наявність таких регістрів дозволяє ОС без втручання (або з мінімальним втручанням) з боку адміністратора визначити встановлене в системі устаткування і автоматично підвантажити відповідні модулі, що управляють.

 

рекламодавці:

/ ml lfppюн

::  Меню ::

ГОЛОВНА

Введення

Представлення даних в обчислювальних системах 

Машинні мови

Завантаження програм 

Управління оперативною пам'яттю

Сегментна і сторінкова віртуальна пам'ять

Комп'ютер і зовнішні події

Паралелізм з точки зору програміста 

Реалізація багатозадачності на однопроцесорних комп'ютерах 

Зовнішні пристрої

Драйвери зовнішніх пристроїв 

Файлові системи 

Додаток. Огляд архітектури сучасних ОС

 


:: Навігація ::

Головна

Додати у вишукане  

 

 

 


Copyright © Asentli, 2008