Тема: Взаємодія програм і апаратних засобів.
Поняття про системні ресурси.
Ініціювання та синхронізація обміну даними.
Методи обміну даними.
Системні ресурси – адреси простору пам’яті та пристроїв вв-вив, лінії запитів переривань та каналів ДМА.
Системні ресурси строго розподілені на відповідні системні пристрої. В результаті чого програми можуть взаємодіяти із своїми визначеними пристроями, не створюючи помилок у роботі інших пристроїв.
Для простору пам’яті і потів вводу-виводу розподіл адрес п. б. таким чином, щоб діапазони відповідних адрес всіх пристроїв не накладались одне на одного.
Для ліній запитів переривань розподіл здійснюють за двома системами: класичною і РпР.
Класична – одну лінію запиту переривань м. займати тільки один пристрій;
РпР – програмно-роздільна. на одну лінію запиту претендують декілька програмно-розділених пристроїв.
Для каналів ДМА розподіл здійснюється на основі монопольного використання каналу одним пристроєм.
Ініціатором обміну м. бути як програма, так і пристрій.
Існують три способи ініціювання обміну:
за опитуванням готовності пристрою. – програма періодично опитує біт готовності регістра стану пристрою і при появі біта готовності програма починає передачу;
за д-гою апар. переривань які викликають у програми обслуговування свого переривання.
комбінований спосіб – полінг (polling) – періодичне опитування готовності ряду пристроїв. Пристрій, який готовий до передачі – обслуговується, якщо пристрій не готовий, то його пропускають до наступного опитування.
Дл передачі даних між програмою і пристроєм застосовують різні методи:
програмно-керований обмін – програма опитує біт готовності пристрою;
програмний обмін з портом вводу-виводу за допомогою ланцюгових команд INS, OUTS із префіксом повторення REP. Для цих інструкцій вказують початкову адресу довжину блоку передачі, адресу порта і напрям зміни адреси пам’яті (на збільшення або на зменшення).
обмін через канал DMA всі дані передаються каналом DMA, а процесор тільки займається ініціалізацією каналу DMA та аналізує стан каналу DMA.
Пряме керування шиною – здійснює інтелектуальний контролер. Він здійснює комутування каналів передачі та керує потоками даних. При цьому методі процесор завантажений найменше.