Читать «Архитектура компьютера» онлайн - страница 107

Эндрю Таненбаум

Шина используется не только контроллерами ввода-вывода, но и процессором для передачи команд и данных. А что происходит, если процессор и контроллер ввода-вывода хотят получить доступ к шине одновременно? В этом случае особая микросхема, которая называется арбитром шины, решает, чья очередь первая. Обычно предпочтение отдается устройствам ввода-вывода, поскольку работу дисков и других движущихся устройств нельзя прерывать, так как это может привести к потере данных. Когда ни одного устройства ввода-вывода не функционирует, центральный процессор может полностью распоряжаться шиной для взаимодействием с памятью. Однако если работает какое-нибудь устройство ввода-вывода, оно будет запрашивать доступ к шине и получать его каждый раз, когда ему это необходимо. Этот процесс, который притормаживает работу компьютера, называется захватом цикла памяти (cycle stealing).

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

Однако в мире персональных компьютеров большая часть пользователей, заменяя свой компьютер новой моделью, никак не рассчитывает одновременно отказываться от своих старых и привычных принтера, сканера и модема. Кроме того, существовала целая отрасль промышленности, выпускавшая широкий спектр устройств ввода-вывода для компьютеров IBM PC, и производители этих устройств совершенно не были заинтересованы в том, чтобы начинать все свои разработки заново. Компания IBM узнала об этом на горьком опыте, выпустив после линейки IBM PC линейку PS/2. У компьютеров PS/2 была новая шина с более высокой скоростью передачи данных, но большинство производителей клонов продолжали использовать старую шину PC, которая сейчас называется шиной ISA (Industry Standard Architecture — стандартная промышленная архитектура). Большинство производителей дисков и устройств ввода-вывода также продолжали выпускать контроллеры для старой модели, и компания IBM оказалась в весьма неприятной ситуации: на тот момент она оказалась единственным производителем персональных компьютеров, несовместимых с линейкой IBM. В конце концов компания была вынуждена вернуться к производству компьютеров на основе шины ISA. В наши дни шина ISA встречается разве что в самых древних системах и в музеях компьютерной техники, так как на смену ей пришли новые, более быстрые стандарты архитектуры шин. Отметим, что аббревиатура ISA также расшифровывается как Instruction Set Architecture (архитектура набора команд), если речь идет об уровнях иерархии команд.