- •1. Загальна структура і функції комп’ютера
- •2. Продуктивність комп’ютера
- •3. Швидкодія мікропроцесорів
- •4. Система магістралі
- •5.Зв’язок між компонентами комп’ютера через магістраль
- •6.Магістраль рсі
- •7. Внутрішня пам’ять
- •8.Функції і характеристики підсистеми пам’яті
- •Размещение
- •10. Сучасні тенденції в організації модулів пам’яті
- •11. Стек
- •12.Зовнішня память
- •13.Збереження інформації на магнітних дисках
- •15.Оптична пам'ять
- •16. Збереження інформації на магнітних стрічках
- •17. Введення – виведення
- •18.Програмне введення –виведення
- •19. Введення-виведення по прериванню
- •20.Прямий доступ до пам’яті
- •Зовнішні інтерфейси….. Типы интерфейсов
- •Концепція організації операційних систем
- •Планування завдань
- •Керування розподілом пам’яті
- •Вектори обчислень
- •Арифметико-логічний пристрій
- •Система команд комп’ютера
- •Характеристики та функції команд
- •Структура і функції центрального процесора
- •30.Структура центрального процесора
- •31.Організація набору регістрів
- •32. Конвеєрна обробка команд
- •33. Комп’ютери зі скороченим набором команд
- •34. Організація конвеєру в risc-процесорах
- •35. Порівняльні характеристики risc і сisc комп’ютерів
- •36. Суперскалярні процесори
- •37. Паралелізм на рівні машинних команд
- •38. Функції пристрою керування
- •39. Мікрооперації
- •40. Управління роботою процесора
- •41. Пристрої управління із жорсткою логікою
- •42. Мікропрограмне керування
- •43. Управління послідовністю виконання мікрокоманд
- •44. Використання мікропрограмування
- •45. Параллельна обробка
- •46. Організація мікропроцесорних систем
- •47. Симетричні мультипроцесорні системи
- •48. Інформаційна цілісність кешів та протокол mesi
- •49. Кластери
- •50. Системи зі змінним часом звернення до пам’яті
17. Введення – виведення
Устройства ввода-вывода обеспечивают взаимодействие компьютерной системы с внешним миром. Архитектура подсистемы ввода-вывода проектируется таким образом, чтобы поддержать системными средствами процедуры обмена данными с внешним миром и предоставить операционной системеинформацию, необходимую для эффективного управления вводом-выводом. Существует три принципиально различных способа выполнения операций ввода-вывода: программируемый ввод-вывод, когда операция выполняется под неослабным контролем программного обеспечения; ввод-вывод по прерыванию,при котором программа пользователя только запускает процесс обмена, а затем переключается на выполнение других задач, пока ее не прервет аппаратура подсистемы ввода-вывода и не известит о завершении процесса обмена; прямойдоступ к памяти, когда специализированный процессор модуля подсистемы ввода-вывода принимает на себя все заботы по передаче информации междуоперативной памятью компьютера и внешним устройством.
Особый интерес в современных компьютерных системах представляют два типа интерфейса ввода-вывода — SCSI и FireWare. Интерфейс SCSI представляет собой параллельный интерфейс для связи с внешними устройствами компьютерных систем, а разработанный недавно интерфейс FireWare — последовательный интерфейс, обеспечивающий высокую скорость передачи данных.
18.Програмне введення –виведення
Методы выполнения процедур ввода-вывода можно разделить на три группы. При программируемом вводе-выводе данные циркулируют между процессором и модулем ввода-вывода. Весь процесс обмена идет под полным контролем процессора (точнее, программы, которую процессор выполняет). Процессор анализирует текущее состояние устройства, передает команды чтения данных с устройства или передачи ему данных (для общности принято называть такую операцию "записью на устройство", хотя для многих типов устройств никакой записи фактически не выполняется). После того как процессор передаст некоторую команду модулю ввода-вывода, процессор должен выждать, пока команда будет выполнена, и только после этого передавать следующую. Поскольку, как правило, внешнее устройство работает на несколько порядков медленнее, чем процессор, на ожидание понапрасну тратится масса времени.
Более производителен метод ввода-вывода по прерыванию. При обмене данными по этому методу процессор, передав модулю команду ввода-вывода, продолжает выполнять дальнейшие команды программы до тех пор, пока не будет прерван модулем, извещающим, что выполнение ранее переданной команды завершено. При выполнении операций ввода-вывода этими двумя методами на процессор возлагается ответственность за извлечение нужных данных из оперативной памяти при их пересылке на внешнее устройство или за размещение данных в оперативной памяти приприеме их от внешнего устройства. Альтернативный метод получил наименование режима прямого доступа к памяти — direct memory access (DMA). В этом режиме модуль ввода-вывода и оперативная память обмениваются данным^ напрямую, не вовлекая процессор в эту процедуру.
В настоящем разделе мы рассмотрим методику программируемого ввода-вывода, а две другие методики будут описаны в последующих разделах этой главы.
Когда в процессе выполнения программы встретится инструкция, имеющая отношение к вводу-выводу, он передает соответствующую команду определенному модулю ввода-вывода. При программируемом вводе-выводе модуль выполнит заданную операцию и установит по результатам ее выполнения определенные биты в своем регистре состояния (рис. 6.4). Никаких других действий, которые обратили бы внимание процессора на то, что заданная операция завершена, модуль в этом случае не предпринимает. В частности, модуль не посылает процессору сигнал запроса прерывания. Следовательно, на процессор возлагается забота о том, чтобы время от времени анализировать содержимое регистра состояния модуля ввода-вывода и определять, завершено ли выполнение заданной ранее команды.
Анализ методики программируемого ввода-вывода мы начнем с команд, передаваемых процессором модулю, а затем рассмотрим, как эти команды соотносятся с инструкциями ввода-вывода, которые процессор извлекает из программы.
Команды ввода-вывода
При выполнении инструкций программы, имеющих отношение к вводу-выводу информации, процессор должен сформировать адрес, задающий определенный модуль и подключенное к нему внешнее устройство ввода-вывода, и команду этому модулю. Существует четыре типа команд, которые процессор может передавать модулю ввода-вывода.
Команды управления. Служат для активизации внешнего устройства и задаюттип операции, которую устройство должно выполнить.
Команды опроса состояния. Используются для анализа отдельных параметров текущего состояния модуля и (или) подключенного к нему внешнего устройства.
Команда чтения. Инициирует прием модулем ввода-вывода очереднойпорции данных от внешнего устройства.
Команда записи. Инициирует передачу модулем ввода-вывода порции данных внешнему устройству. Передаваемые данные (как правило байт или слово), выставляются процессором на линии данных системной магистрали.
