Методи запобігання виникненню конфліктів, які виникають при використанні ресурсів

Автор работы: Пользователь скрыл имя, 02 Декабря 2013 в 20:00, реферат

Описание работы

На AT і всіх сучасних платах сигнал IRq 2 схемно надходить на вхід, що відповідає IRq 9 і викликає запуск обробника переривань, пов'язаного з IRq 9, що програмно емулює переривання по IRq 2. Таким чином, програми, що працюють із IRq 9, будуть працювати завжди, а ті що використовують IRq 2 - можуть не працювати, якщо не встановлений правильний обробник IRq 9. DMA - спосіб обміну даними між зовнішнім пристроєм і пам'яттю без участі процесора, що може помітно знизити навантаження на процесор і підвищити загальну продуктивність системи. Режим DMA дозволяє звільнити процесор від рутинного пересилання даних між зовнішніми пристроями й пам'яттю, віддавши цю роботу контролеру DMA; процесор у цей час може обробляти інші дані або інше завдання в багатозадачній системі.

Содержание работы

1. Формфактори і запобігання конфліктів, які виникають при використанні ресурсів.
2. Компоненти системної плати.
3. Системні ресурси.
4. Переривання.
5. Конфлікти переривань.
6. Запобігання конфліктам, що виникають при використанні ресурсів.

Файлы: 1 файл

ІНДЗ .docx

— 51.52 Кб (Скачать файл)

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

При генерації великої  кількості переривань стік може переповнитися  й комп'ютер зависне. При цьому  буде видане повідомлення 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, то їхню нормальну  роботу порушить виниклий конфлікт.

 

Переривання шини 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 одержує на цей дозвіл у арбітра. Приблизно аналогічні дії відбуваються в локальній мережі: спочатку відправляється запит на виконання певних дій, а при одержанні позитивної відповіді на нього виконуються самі дії.

 

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

Імовірно, найпоширеніший конфлікт переривань (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. У дійсності всі пристрої на системних  шинах використовують адреси портів вводу-висновку. Більшість із них  стандартизовано, тому, як правило, не виникає яких-небудь конфліктів або  проблем з адресами портів для  цих пристроїв.

 

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

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

Які ознаки конфліктів, пов'язаних з неправильним використанням ресурсів? Один з них - припинення роботи якого-небудь пристрою.  
Але можуть бути й інші ознаки, наприклад: 
- дані передаються з помилками; 
- комп'ютер часто зависає; 
- звукова плата спотворює звук; 
- миша не функціонує;  
- на екрані зненацька з'являється "сміття"; 
- принтер друкує нісенітницю;  
- гнучкий диск не піддається форматуванню; 
- Windows 9.r при завантаженні перемикається в режим захисту від збоїв або може бути завантажена тільки остання працездатна конфігурація в Windows 2000/XP.

Информация о работе Методи запобігання виникненню конфліктів, які виникають при використанні ресурсів