Зібрання цікавих та корисних знань.

У минулій статті була розглянута загальна ідея обчислювального пристрою — об'єкта метафізичного світу. У цій ми розглянемо втілення комп'ютера у фізичному світі.

1-й рівень — фізичний

На фізичному рівні комп'ютер працює як набір пристроїв: процесор і пам'ять — основний пристрій, звукова плата — інше, принтер — третє, і т.д. Пристрої між собою обмінюються байтами через центральну шину. Причому, в залежності від пристрою, один і той же байт буде викликати різні дії. Наприклад, принтер надрукує символ, а звукова карта видає певний звук, ніяк не пов'язаний із символом з принтера.

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

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

Звукова карта також складається з декількох пристроїв: мікшера каналів, MIDI-синтезатора, цифро-аналогового перетворювача, підсилювача вихідного сигналу, аналого-цифрового перетворювача мікрофонного входу і ін.

Кожен такий набір пристроїв управляється вбудованою програмою в ПЗУ — прошивкою. Саме вона визначає, що принтер буде друкувати російські літери, а не грецькі, а MIDI — синтезатор генерує звуки рояля, а не віолончелі. Відповідно, змінюючи прошивку, можна змінювати деякі функції складеного пристрою або виправляти помилки в його роботі.

2-й рівень — віртуальне пристрій, драйвер

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

Різні пристрої можуть бути підключені до комп'ютера і відключені від нього як в моменти його вимикання, так і під час роботи. Заздалегідь невідомо, які пристрою і в будь роз'єм будуть підключені. Цю невідомість дозволяють драйвери — вони описують, яку підключено пристрій куди і як обробляти дані.

Для прикладу дуже спрощено можна представити відтворення музики з CD на звукову карту так:

— промінь лазера, що зчитує черговий шматок даних з поверхні диска і передає їх в порт CD;

— драйвер CD зчитує дані з порту, відокремлює корисну інформацію від службової, передає «чисті дані» у пам'ять і дає вказівку вважати наступний шматок даних;

— драйвер звукової карти бере дані з пам'яті, наділяє їх керуючими командами, ріже на шматки і передає їх в звукову карту;

— за переданими даними звукова карта генерує звук.

Це дуже спрощений варіант зі зрозумілими пристроями.

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

Віртуальне пристрій — це програма, типу драйвера. Вона займає деяке проміжне місце між драйверами і «вирішує», який пристрій і як задіяти. Наприклад, звук з декількох джерел для однієї реальної звукової карти віртуальна замикширует (змішає). Віртуальний принтер прийме дані для друку і буде зберігати їх, поки реальний принтер зайнятий. Якщо до комп'ютера підключено декілька однотипних принтерів, то пул (pool) принтерів розподілить, який документ на який принтер надіслати так, щоб вони не перемішалися. І так далі. Тобто в рамках вищеописаної моделі визначить, яку обробку виконати над даними, що передаються з одного драйвера в інший.

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

Цікаві записи

Поставте свою оцінку.
Погано.Незадовільно.Задовільно.Добре.Відмінно. (Оцінок немає)
Loading ... Loading ...

Напишіть відгук

Ваша пошт@ не публікуватиметься. Обов’язкові поля позначені *


Можна використовувати XHTML теґи та атрибути: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Вгамуйте свою спрагу до знань - віртуальна енциклопедія, важливі та цікаві факти.

Копіювання заборонено.