днання і можуть мати паралельні (multidrop) і ланцюгові (daisy chain) топології. У разі USB і деяких інших шин можуть також використовуватися хаби (Концентратори). p> Перше покоління
Ранні комп'ютерні шини були групою провідників, що підключає комп'ютерну пам'ять і периферію до процесора. Майже завжди для пам'яті і периферії використовувалися різні шини, з різним способом доступу, затримками, протоколами. p> Одним з перших удосконалень стало використання переривань . До їх впровадження комп'ютери виконували операції введення-виведення в циклі очікування готовності периферійного пристрою. Це було марною тратою часу для програм, які могли робити інші завдання. Також, якщо програма намагалася виконати інші завдання, вона могла перевірити стан пристрою занадто пізно і втратити дані. Тому інженери дали можливість периферії переривати процесор . Переривання мали пріоритет, так як процесор може виконувати тільки код для одного переривання в один момент часу, а також деякі пристрої вимагали менших затримок, ніж інші. p> Деякий час по тому, комп'ютери стали розподіляти пам'ять між процесорами. На них доступ до шини також отримав пріоритети. p> Класичний і простий спосіб забезпечити пріоритети переривань або доступу до шини полягав у ланцюговому підключенні пристроїв. відзначала, що дві різні шини можуть бути зайвими і дорогими для малих, серійних комп'ютерів і запропонувала відображати периферійні пристрої на шину пам'яті, так, що вони виглядали як області пам'яті. У той час це було дуже сміливим рішенням, і критики передбачали йому провал. p> Перші мінікомпьютерние шини представляли пасивні об'єднавчі плати, підключені до контактів мікропроцесора. Пам'ять і інші пристрої підключалися до шини з використанням тих же контактів адреси і даних, що і процесор. Всі контакти були підключені паралельно. У деяких випадках, наприклад в IBM PC , необхідні додаткові інструкції процесора для генерації сигналів, щоб шина була справжньою шиною вводу-виводу. p> У багатьох мікроконтролерах та вбудованих системах шини введення-виведення досі не існує. Процес передачі контролюється ЦПУ, який у більшості випадків читає і пише інформацію в пристрої, так, як ніби вони є блоками пам'яті. Всі пристрої використовують загальний джерело тактового сигналу. Периферія може запросити обробку інформації шляхом подачі сигналів на спеціальні контакти ЦПУ, використовуючи будь-які форми переривань. Наприклад, контролер жорсткого диска повідомить процесор про готовність нової порції даних для читання...