Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Переривання






Канали запитів переривання (IRQ), або апаратні переривання, використовуються різними пристроями для повідомлення системній платі (процесору) про необхідність обробки певного запиту.

Канали переривань являють собою проводники на системній платі й відповідні контакти в розніманнях. Після одержання IRQ комп'ютер приступає до виконання спеціальної процедури його обробки, першим кроком якої є збереження в стеці вмісту регістрів процесора. Потім відбувається звертання до таблиці векторів переривань, у якій утримується список адрес пам'яті, що відповідають певним номерам (каналам) переривань. Залежно від номера отриманого переривання, запускається програма, що ставиться до даного каналу.

Покажчики в таблиці векторів визначають адреси пам'яті, по яких записані програми-драйвери для обслуговування плати, що послала запит. Наприклад, для мережної плати вектор переривання містить адреса мережних драйверів, призначених для роботи з нею; для контролера жорсткого диска вектор указує на програмний код BIOS, що обслуговує контролер.

Після виконання необхідних дій по обслуговуванню пристрою, що послав запит, процедура обробки переривання відновлює вміст регістрів процесора (витягаючи його зі стека) і повертає керування комп'ютером тій програмі, що виконувалася до виникнення переривання.

Завдяки перериванням комп'ютер може вчасно реагувати на зовнішні події. Щораз, коли послідовний порт передає байт даних системі, генерується відповідне переривання, завдяки якому система повинна обробити байт даних до надходження наступних даних. Урахуйте, що в деяких випадках пристрій, що підключається до порту (наприклад, модем з мікросхемою UART 16550 або вище), може містити спеціальний буфер, що дозволяє зберігати кілька символів перед генеруванням переривання.

Апаратні переривання мають ієрархію пріоритетів: чим менше номер переривання, тим вище пріоритет. Переривання з більше високим пріоритетом мають перевагу й можуть " переривати переривання". У результаті в комп'ютері може виникнути трохи " вкладених" переривань.

При генерації великої кількості переривань стік може переповнитися й комп'ютер зависне. При цьому буде видане повідомлення Internal stack overflow - system halted. Якщо така помилка виникає занадто часто при роботі в DOS, спробуйте виправити ситуацію, збільшивши параметр Stacks (розмір стека) у файлі Conf ig. sys.

По шині ISA запити на переривання передаються у вигляді перепадів логічних рівнів, причому для кожного з них призначена окрема лінія, підведена до всіх рознімань. Кожному номеру апаратного переривання відповідає свій провідник. Системна плата не може визначити, у якому розніманні перебуває плата, що послала переривання,, тому можливо виникнення невизначеної ситуації в тому випадку, якщо кілька плат використовують один канал. Щоб цього не відбувалося, система настроюється так, що кожний пристрій (адаптер) використовує свою лінію (канал) переривання. Застосування однієї лінії відразу декількома різними пристроями в більшості випадків неприпустимо. Спільне використання переривання допускається тільки Рсі-Устройствами. Ця можливість підтримується системної BIOS і операційною системою.

Технологія спільного використання переривань для адаптерів PCI називається PCI IRQ Steering і підтримується операційними системами, починаючи з Windows 95 OSR 2.x, а також BIOS системної плати. Ця технологія дає можливість Windows з підтримкою пристроїв Plug and Play динамічно розподіляти стандартні переривання для плат PCI (звичайно використовують переривання PCI INTA#), а також призначати одне переривання декільком платам PCI.

Зовнішні апаратні переривання часто називаються маскируемыми перериваннями, тобто їх можна відключити (" замаскувати") на час, поки процесор виконує інші важливі операції.

Оскільки в шині ISA спільне використання переривань звичайно не допускається, при установці нових плат може виявитися недолік ліній переривань. Якщо дві плати використовують ту саму лінію IRQ, то їхню нормальну роботу порушить виниклий конфлікт.

Зауваження. Переривання шин ISA, EISA і MCA описані в доповненні на прикладеному компакт-диску.

Переривання шини PCІ

Шина PCI підтримує апаратні переривання, які використовує встановлений пристрій, щоб привернути увагу шини. Це переривання INTA#, INTB#, INTC# і INTD#. Переривання INTx# чутливі до рівня, що дозволяє розподіляти їх серед декількох пристроїв PCI. Якщо одиночний пристрій PCI використовує тільки одне переривання, то їм повинне бути INTA#, що є одним з основних правил специфікації шини PCI. Інші додаткові пристрої повинні використовувати переривання INTB#, INTC# і INTD#.

Для нормального функціонування шини PCI у персональному комп'ютері її переривання повинні бути встановлені відповідно до існуючих переривань ISA. Останні не можуть використовуватися спільно, тому в більшості випадків для кожної плати PCI, що використовує переривання INTA# шини PCI, варто встановити переривання, відмінні від неподілюваних переривань шини ISA. Розглянемо як приклад систему, що має чотири рознімання PCI і чотири встановлені плати PCI, кожна з яких використовує переривання ШТА#. У такому випадку кожної із плат повинен бути призначений окремий запит переривання ISA, наприклад IRQ9, IRQ10, IRQI1 або IRQ5.

Установка однакових переривань для, шин ISA і PCI обов'язково приведе до конфлікту. Також будуть конфликтовать два пристрої ISA з однаковим перериванням. Що ж робити, якщо доступних переривань недостатньо для всіх установлених у системі пристроїв? У більшості нових систем допускається використання одного переривання декількома пристроями PCI. Всі системні BIOS, що задовольняють специфікації Plug and Play, а також операційні системи, починаючи з Windows 95b (OSR 2), підтримують функцію керування перериваннями. У таких комп'ютерах всю турботу про переривання бере на себе система. Зверніть увагу, що оригінальна версія Windows 95, а також Windows 95а цю функцію не підтримують.

Найчастіше BIOS призначає унікальні переривання пристроям PCI. А якщо операційна система підтримує керування перериваннями, те це завдання вона виконує самостійно. Варто помітити, що, навіть якщо активізовано системну функцію керування перериваннями, їхній початковий розподіл бере на себе BIOS. Якщо вільних переривань недостатньо, то операційна система розподіляє одне переривання між декількома пристроями PCI. Якщо операційна система не має функцію керування перериваннями, то вона просто деактивізує пристрій до появи вільного переривання.

Щоб визначити, чи підтримується описана функція у вашім комп'ютері, виконаєте ряд дій.

1. Клацніть на кнопці Пуск і виберіть команду Настроювання-Панель керування.

2. Двічі клацніть на піктограмі Система (System).

3. У вікні, що з'явилося, активізуйте вкладку Пристрою (Device Manager).

4. Клацніть на знаку " +" біля групи Системні пристрої (System Devices).

5. Двічі клацніть на компоненті Шина PCI (PCI Bus). У вікні, що з'явилося, активізуйте вкладку Керування IRQ (IRQ Steering). Ви побачите групу прапорців.

В Windows 2000/XP відключити розподіл переривань не можна, тому вкладка | Керування IRQ (IRQ Steering) відсутній у діалоговому вікні Диспетчер пристроїв (Device ]. Manager).

Керування перериваннями здійснюється за допомогою декількох таблиць. Порядок перегляду таблиць змінити не можна, однак установка або скидання прапорця Get IRQ Table Using дозволяє скасувати пошук певних таблиць, тим самим указуючи потрібну для первісного виявлення таблицю.

У пошуках необхідних параметрів Windows послідовно переглядає такі таблиці IRQ:

- ACPI BIOS;

- специфікації MS;

- PCIBIOS 2.1 у захищеному режимі;

- PCIBIOS 2.1 у реальному режимі.

Для усунення проблем з розподілом переривань спробуйте по одному відключати встановлені за замовчуванням прапорці у вкладці Керування IRQ. У першу чергу використовуйте таблицю IRQ з ACPI BIOS, а якщо проблема не буде усунута - таблицю IRQ з PCIBIOS 2.1 у захищеному режимі. Зверніть увагу, що описані дії підходять тільки для Windows 98; в Windows 95 ці параметри трохи відрізняються.

Ще одна проблема полягає в тому, що в списку переривань, представленому в програмі Device Manager (Диспетчер пристроїв) в Windows 9x, призначення PCI-ISA можуть бути показані у вигляді численних записів для вибраного переривання ISA. Тільки один запис буде вказувати на пристрій, у дійсності получившее те або інше переривання (наприклад, убудований контролер USB), у той час як інший запис для того ж переривання IRQ буде виглядати, як напис IRQ Holder for PCI Steering. Останній запис, незважаючи на декларируемое застосування аналогічного переривання, насправді не вказує на конфлікт ресурсів; запис визначає резервне переривання, виділене набором мікросхем системної логіки для можливого призначення якому-небудь пристрою. Це характерно для шини PCI з підтримкою технології Plug and Play і для сучасних наборів мікросхем системних плат. В Windows 2000/XP декільком пристроям також може бути призначено одне переривання, однак щоб уникнути плутанини термін IRQ Holder не використовується.

До шини PCI можуть бути підключені зовнішні пристрої навіть незважаючи на вільні рознімання PCI. Наприклад, у більшості систем є два контролери IDE і контролер USB, по суті пристрою, що представляють собою,, підключені до шини PCI. Звичайно контролери PCI IDE одержують переривання ISA 14 (основний IDE) і 15 (вторинний IDE). Контролеру USB привласнюються переривання 9, 10, 11 або 5.

Шина РСІ дозволяє використовувати два типи пристроїв — bus master (ініціатор) і slave I (призначення). Пристрій bus master бере на себе керування шиною й ініціює передач) даних на пристрій slave. Відповідно до специфікації PC 97, всі пристрої PCI можуть виступати як у ролі ініціюючого, так і в ролі одержувача. У цей час практично всі рознімання PCI підтримують " універсальні" пристрої.

Шиною PCI управляє арбітр, що є частиною контролера шини РСІ в наборі мікросхем системної логіки. Саме цей арбітр управляє доступом всіх пристроїв до шини. Перед " захопленням" керування шиною пристрій Bus Master одержує на цей дозвіл у арбітра. Приблизно аналогічні дії відбуваються в локальній мережі: спочатку відправляється запит на виконання певних дій, а при одержанні позитивної відповіді на нього виконуються самі дії.

Конфлікти переривань

Імовірно, найпоширеніший конфлікт переривань (IRQ) пов'язаний з інтегрованим послідовним портом COM2, що існує в сучасних системних платах, і внутрішнім модемом (мається на увазі повноцінний внутрішній PC-Модем, а не програмний модем, що також називається WinModem). Внутрішній модем, з'єднаний з од- BJ їм з послідовних портів, використовує його в якості одного з елементів схеми власної плати. Цей порт призначається за замовчуванням як послідовний порт COM2. В У результаті в комп'ютері з'являються два порти COM2, що використовують ті самі преры- s вания (IRQ) і адреси портів виводу-вводу-висновку.

Вирішити цю проблему досить просто: варто ввійти в BIOS Setup системи й відключити убудований порт COM2. Крім того, можна подумати також про відключення порту СОМІ, що використовується вкрай рідко. Відключення невикористовуваних портів СОМ - один із кращих способів вивільнення переривань (IRQ) для інших використовуваних пристроїв.

Найчастіше конфлікти IRQ виникають між послідовними портами СОМ. Як ми вже відзначали, переривання IRQ3 призначено для COM2, a IRQ4 - для СОМІ. Проблеми з'являються при установці в комп'ютері додаткових послідовних портів, що цілком логічно, оскільки їхня максимальна кількість дорівнює чотирьом. Прийняте у свій час розподіл ліній IRQ між портами СОМ виявилося невдалим. Переривання IRQ 3 призначено для портів СОМ з парними номерами, a IRQ 4 - для портів СОМ з непарними номерами. У результаті порти COM2 і COM4 використовують одну лінію IRQ3, а порти З0М1 і COM3 - IRQ4. Отже, використовувати одночасно СОМІ й COM3 неможливо; т же саме ставиться й до портів COM2 і COM4. Нагадаємо, що, якщо до однієї лінії IRQ підключено кілька пристроїв, жодне з них не зможе залучити до себе увага процесора. При роботі в DOS це допускалося, оскільки тоді одночасно могла виконуватися тільки одне завдання, але в системах Windows і OS/2 це зовсім неможливо.

Для того щоб у комп'ютері можна було застосовувати більше двох паралельних портів СОМ, необхідна многопортовая плата, що, крім переривань із номерами 3 і 4, дозволяє використовувати додаткові переривання. Якщо у вашім комп'ютері яке-небудь із перерахованих у таблиці пристроїв відсутній, наприклад на системній платі немає порту миші (IRQ 12) або паралельного порту 2 (IRQ 5), то відповідні їм переривання ви можете використовувати як вільні. Так, другий паралельний порт зустрічається досить рідко й у багатьох комп'ютерах IRQ 5 використовується як звукова плата.

Зверніть увагу, що простіше всього для перевірки безконфліктності переривань використовувати диспетчер пристроїв в Windows 9x або Windows NT/2000/XP. Двічі клацнувши на піктограмі Комп'ютер у вкладці Пристрою вікна Властивості: Система, ви одержите короткий список всіх використовуваних ресурсів системи. Microsoft також включила програму HWDIAG в Windows 95B і більше пізні версії; ця програма повідомляє про використання ресурсів системи. В Windows XP докладну системну інформацію дозволяє одержати програма MSInfo32.

Канали прямого доступу до пам'яті

Такі канали використовуються пристроями, що здійснюють високошвидкісний обмін даними. Послідовний і паралельний порти, наприклад, не використовують канали прямого доступу до пам'яті (DMA), на відміну від звукової плати або адаптера SCSI. Один канал DMA може використовуватися різними пристроями, але не одночасно. Наприклад, канал DMA 1 може використовуватися як мережним адаптером, так і накопичувачем на магнітній стрічці, але ви не зможете записувати інформацію на стрічку при роботі в мережі. Для цього кожному адаптеру необхідно виділити свій канал DMA.

Адреси портів введення/виведення

Порти уведення-висновку дозволяють встановити зв'язок між пристроями й програмним забезпеченням у комп'ютері. Вони подібні до двосторонніх радіоканалів, тому що обмін інформацією в ту й іншу сторону відбувається по тому самому каналі.

На відміну від переривань IRQ і каналів прямого доступу до пам'яті, у персональних комп'ютерах безліч портів вводу-висновку. Існує 65 535 портів, пронумерованих від OOOOh до FFFFh, і це, мабуть, самий дивний артефакт у процесорі Intel. Хоча багато пристроїв використовують до восьми портів, однаково їхня кількість більш ніж достатнє. Сама більша проблема полягає в тому, щоб двом пристроям випадково не призначити той самий порт.

Сучасні системи, що підтримують специфікацію Plug and Play, автоматично дозволяють будь-які конфлікти через порти, вибираючи альтернативні порти для одного з конфліктуючих пристроїв.

Хоча порти уведення-висновку позначаються шестнадцатеричными адресами, подібними до адрес пам'яті, вони не є пам'яттю, вони - порти. Розходження полягає в тому, що дані, відправлені за адресою пам'яті lOOOh, будуть збережені в модулі пам'яті SIMM або DIMM.

Щоб точно з'ясувати, які адреси використовують ваші пристрої, настійно рекомендую звернутися до документації або переглянути інформацію про пристрій у диспетчері пристроїв Windows. У дійсності всі пристрої на системних шинах використовують адреси портів вводу-висновку. Більшість із них стандартизовано, тому, як правило, не виникає яких-небудь конфліктів або проблем з адресами портів для цих пристроїв.

Запобігання конфліктам, що виникають при використанні ресурсів

Ресурси комп'ютера обмежені, а потреба в них воістину безмежна. Установлюючи в комп'ютер нові плати адаптерів, ви істотно збільшуєте ймовірність виникнення між ними конфліктів. Якщо система не задовольняє специфікації: Plug and Play, то цим доводиться займатися вручну.

Які ознаки конфліктів, пов'язаних з неправильним використанням ресурсів? Один з них - припинення роботи якого-небудь пристрою.

Але можуть бути й інші ознаки, наприклад:

- дані передаються з помилками;

- комп'ютер часто зависає;

- звукова плата спотворює звук;

- миша не функціонує;

- на екрані зненацька з'являється " сміття";

- принтер друкує нісенітницю;

- гнучкий диск не піддається форматуванню;

- Windows 9.r при завантаженні перемикається в режим захисту від збоїв або може бути завантажена тільки остання працездатна конфігурація в Windows 2000/XP.

Диспетчер пристроїв в Windows 2000/XP відзначає конфліктуючі пристрої жовтої] або червоною піктограмою. Це найшвидший спосіб виявлення конфліктів.

Нижче розглядаються деякі способи виявлення й усунення причин конфліктів.

Увага! Діагностуючи систему, будьте уважні. Можливо, проблеми зв'язані не з неправильним (конфліктним) використанням ресурсів, а з комп'ютерним вірусом. Більшість із них створюються саме для того, щоб періодично отруювати вам життя. Якщо ви запідозрили, що в комп'ютері неправильно розподіляються ресурси або " назріває" який-небудь інший конфлікт, то про всякий випадок запустите яку-небудь антивірусну програму - це, можливо, позбавить вас від багатьох годин безглуздої роботи.

Один зі способів дозволу конфліктів складається насамперед у їхньому запобіганні. Я хочу дати вам кілька рад, які допоможуть уникнути багатьох проблем при формуванні нової системи. Замість ISA краще підходять плати PCI і AGP, що допускають спільне використання переривань і підтримують функцію керування перериваннями.

Крім того, плати необхідно встановлювати в певній послідовності. Порядок установки плат дуже важливий, тому що багато хто з них використовують цілком певні переривання, характерні для кожної марки або моделі плати. При послідовній інсталяції плат програмне забезпечення пристроїв Plug and Play (PnP) значно спрощує рішення конфліктів IRQ, викликаних заданими за замовчуванням конфігураціями різних плат.

Запобігання конфліктам вручну

Раніше для рішення проблем з конфліктами ресурсів існував єдиний спосіб вручну змінити розміщення перемичок або перемикачів на платах адаптерів, що підключаються. На щастя, з'явилася технологія Рпр, що дозволяє проводити конфігураційні настроювання за допомогою програми Диспетчер пристроїв (Device Manager) в операційній системі. У деяких старих платах Рпр також були перемички або надавалися програмні параметри, які доводилося набудовувати вручну, що ставилося в основному до плат ISA Рпр.

Перш ніж що-небудь змінити, запишіть параметри вихідної конфігурації системи, щоб у будь-який момент можна було повернутися до неї.

Постарайтеся роздобути документацію до плат адаптерів. Якщо руководств ні, то призначення перемичок і перемикачів можна з'ясувати у виробника.

Тепер ви готові до роботи. Перш ніж приступитися до неї, відповідайте на кілька важливих питань (це допоможе вам звузити область пошуку).

■ Коли вперше виник даний конфлікт? Якщо після установки нової плати адаптера, те, очевидно, причиною була саме вона; якщо після запуску нової програми, можливо, ця програма використовує якийсь пристрій, що по-новому перерозподіляє ресурси комп'ютера.

■ Є чи в комп'ютері два пристрої, які не працюють одночасно? Якщо, наприклад, не працюють миша й модем, виходить, конфлікт виник саме через них.

■ чи Виникала аналогічна проблема в інших користувачів і як вони неї вирішували? Знайдіть за допомогою Internet користувачів, які допоможуть вам упоратися із труднощами.

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

Додаткові відомості. Інформація про шаблон таблиці конфігурації, використовуваному для систематизації ресурсів комп'ютера, представлена на прикладеному до книги компакт-диску.

Як уникнути проблем: спеціальні плати

Більшість установлюваних у комп'ютер пристроїв використовують лінії IRQ і канали DMA, тому додавання нової плати адаптера може привести до нових конфліктів. Щоб цього не трапилося, використовуйте описаний вище шаблон таблиці конфігурації. Відслідковуючи й реєструючи всі зміни, ви позбавите себе від багатьох неприємностей.

Документацію до плати краще читати до установки плати в комп'ютер. У ній звичайно наводяться дані про використовуваний платою лініях IRQ і каналах DMA. Там же можна знайти відомості про те, яка верхня пам'ять використовується для ROM і RAM адаптерів.

Необхідно сказати кілька слів про конфлікти, з якими ви можете зштовхнутися при установці найбільш популярних зараз адаптерів. Хоча список цих пристроїв далеко не повний, що приводяться відомості допоможуть установити досить складні сучасні пристрої, наприклад звукову плату, плату SCSI і мережний адаптер.

Порада. Послідовні, паралельний порти й порт миші PS/2, присутні в більшості комп'ютерів, являють собою пристрою ISA, які не мають можливості спільно використовувати системні переривання.

Якщо дані порти не застосовуються, виділені для них переривання придадуться іншим пристроям у наступних випадках:

• якщо непотрібний порт відключений в BIOS;

• якщо BIOS настроєна на використання переривання, споконвічно задіяного пристроєм для конфігураційного настроювання Рпр; у деяких комп'ютерах подібні параметри зазначені автоматично.

При первісному завантаженні зібраної або модернізованої системи відразу ж варто звернути увагу на BIOS Setup. Якщо операційна система, установлена на вашім комп'ютері, підтримує пристрою Plug and Play (як, наприклад, Windows 9x/Me/2000/XP), переконаєтеся в тім, що це знайшло своє відбиття в настроюваннях BIOS. У противному випадку (наприклад, для операційної системи Windows NT) прийде відключити підтримку PnP.

Для першого запуску я б порекомендував використовувати мінімальну конфігурацію системи, що включає в себе тільки графічну плату, модулі пам'яті, жорсткий диск, дисководи гнучких дисків, CD-ROM або DVD. Подібна конфігурація дозволяє зменшити ймовірність виникнення системних конфліктів. Якщо до системної плати додається компакт-диск із необхідними драйверами наборів мікросхем або інших убудованих компонентів, то їх потрібно відразу завантажити або інсталювати. Перед установкою яких-небудь інших плат або зовнішніх пристроїв необхідно завершити конфігурацію всіх убудованих компонентів.

Завершивши конфігурування основної системи й успішно завантаживши операційну систему з усіма " латками" і відновленнями, починайте встановлювати різні пристрої. Порядок установки наступний: виключите комп'ютер, установите потрібну плату, включите харчування, а після завантаження операційної системи інсталюйте необхідні драйвери й конфігуруйте пристрій. Щоб повністю завершити конфігурування, імовірно, прийде знову перезавантажити систему.

Контрольні запитання

1. Що таке формфактор материнської плати?

2. Які основні компоненти материнської плати?

3. Що таке системні ресурси?

4. Що таке переривання і для чого вони використовуються?

5. Як запобігають конфліктам материнських плат?


Лекція №4

Тема: BIOS.

План лекції

BIOS.

2. Пристрої для зберігання BIOS.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.