- •Билет 1 Поколения компьютеров
- •1.1. Первое поколение компьютеров.
- •1.2. Второе поколение компьютеров.
- •1.3. Третье поколение – компьютеры на интегральных схемах.
- •1.4. Компьютеры четвертого поколения и далее.
- •Аппаратный уровень вычислительной системы
- •2.2. Управление физическими ресурсами
- •2.3. Управление логическими/виртуальными ресурсами.
- •Система программирования – это комплекс программ, обеспечивающий поддержание жизненного цикла программы в вычислительной системе.
- •2.5 Прикладные системы
- •Этапы развития
- •2.5.3 Основные тенденции в развитии современных прикладных систем
- •. Выводы
- •Билет №6 Основы архитектуры компьютера. Основные компоненты и характеристики. Структура и функционирование цп. Центральный процессор Структура, функции цп
- •Регистры общего назначения (рон)
- •Специальные регистры
- •Буферизация работы с операндами
- •Алгоритм для записи данных в озу
- •Буферизация выборки команд
- •Примерный алгоритм использования
- •Определение. Последовательность действий при обработке
- •3.6.1 Внешние запоминающие устройства (взу).
- •3.6.1.1 Устройство последовательного доступа
- •3.6.1.2 Устройства прямого доступа
- •3.6.2 Организация потоков данных при обмене с внешними устройствами
- •3.6.4 Организация управления внешними устройствами
- •Прерывания: организация работы внешних устройств.
- •Синхронная работа с ву
- •Асинхронная работа с ву
- •Билет 11 Иерархия памяти
- •4.4. Иерархия памяти.
- •Билет 12 Мультипрограммный режим
- •Билет 13 Организация регистровой памяти (регистровые окна, стек)
- •5.2. Модель организации регистровой памяти в Intel Itanium.
- •Билет 14 Виртуальная оперативная память Аппарат виртуальной памяти
- •Билет 15
- •Системы с распределенной памятью – mpp.
- •Системы с общей памятью – smp.
- •Системы с неоднородным доступом к памяти – numa.
- •Кластерные системы.
- •Билет 17. Терминальные комплексы. Компьютерные сети. Терминальные комплексы.
- •Многомашинные вычислительные комплексы
- •Билет 18 Базовые понятия, определения, структура
- •Системы разделения времени
- •Сетевые, распределенные ос
- •Билет 21 Семейство протоколов tcp/ip
- •Ip адрес представляется последовательностью четырех байтов. В адресе кодируется уникальный номер сети, а также номер компьютера (сетевого устройства в сети).
- •Транспортный уровень
- •Уровень прикладных программ
- •Однако жизненные циклы процессов в реальных системах могут иметь свою, системно-ориентированную совокупность этапов.
- •Типы процессов
- •Принципы организации свопинга.
- •Определение процесса. Контекст
- •Контекст процесса
- •Аппарат системных вызов в oc unix.
- •Базовые средства организации и управления процессами
- •Механизм замены тела процесса.
- •Завершение процесса.
- •Жизненный цикл процессов
- •Формирование процессов 0 и 1
- •Основные задачи планирования
- •Планирование распределения времени цп между процессами
- •8.3.1 Кванты постоянной длины.
- •8.3.2 Кванты переменной длины
- •Алгоритмы, основанные на приоритетах
- •8.4.1 Планирование по наивысшему приоритету (highest priority first - hpf).
- •8.4.2 Класс подходов, использующих линейно возрастающий приоритет.
- •8.4.3 Нелинейные функции изменения приоритета
- •8.5 Разновидности круговорота.
- •8.6 Очереди с обратной связью (feedback – fb).
- •Билет 27 Смешанные алгоритмы планирования
- •Билет 29 Планирование в системах реального времени
- •Семафоры.
- •Мониторы.
- •Дополнительная синхронизация: переменные-условия.
- •Обмен сообщениями.
- •Синхронизация.
- •Адресация.
- •Длина сообщения.
- •Билет 33 Классические задачи синхронизации процессов. «Обедающие философы»
- •Билет 34 Задача «читателей и писателей»
- •Билет 35 Задача о «спящем парикмахере»
- •Сигналы.
- •Обработка сигнала.
- •Программа “Будильник”.
- •Двухпроцессный вариант программы “Будильник”.
- •Программные каналы
- •Использование канала.
- •Реализация конвейера.
- •Совместное использование сигналов и каналов – «пинг-понг».
- •Именованные каналы (fifo)
- •Модель «клиент-сервер».
- •Билет 39 Трассировка процессов. Трассировка процессов.
- •Трассировка процессов.
- •Для билетов 40-42 общая часть Именование разделяемых объектов.
- •Генерация ключей: функция ftok().
- •Общие принципы работы с разделяемыми ресурсами.
- •Очередь сообщений.
- •Доступ к очереди сообщений.
- •Отправка сообщения.
- •Получение сообщения.
- •Управление очередью сообщений.
- •Использование очереди сообщений.
- •Очередь сообщений. Модель «клиент-сервер»
- •Билет 41 Разделяемая память
- •Создание общей памяти.
- •Доступ к разделяемой памяти.
- •Открепление разделяемой памяти.
- •Управление разделяемой памятью.
- •Общая схема работы с общей памятью в рамках одного процесса.
- •Семафоры.
- •Доступ к семафору
- •Операции над семафором
- •Управление массивом семафоров.
- •Работа с разделяемой памятью с синхронизацией семафорами.
- •1Й процесс:
- •2Й процесс:
- •Механизм сокетов.
- •Типы сокетов. Коммуникационный домен.
- •Создание и конфигурирование сокета. Создание сокета.
- •Связывание.
- •Предварительное установление соединения. Сокеты с установлением соединения. Запрос на соединение.
- •Сервер: прослушивание сокета и подтверждение соединения.
- •Прием и передача данных.
- •Завершение работы с сокетом.
- •Резюме: общая схема работы с сокетами.
- •Билет 44
- •Структурная организация файлов
- •Атрибуты файла
- •Типовые программные интерфейсы работы с файлами
- •Индексные узлы (дескрипторы)
- •Модели организации каталогов
- •Варианты соответствия: имя файла – содержимое файла
- •Организация фс Unix
- •Логическая структура каталогов
- •Билет 50. Модель версии System V Структура фс
- •Работа с массивами номеров свободных блоков
- •Работа с массивом свободных ид
- •Индексные дескрипторы
- •Адресация блоков файла
- •Файл каталог
- •Установление связей
- •Недостатки фс модели версии System V
- •Билет 51. Модель версии ffs bsd
- •Стратегии размещения
- •Внутренняя организация блоков
- •Структура каталога ffs
- •Архитектура.
- •Программное управление внешними устройствами
- •Буферизация обмена
- •Планирование дисковых обменов
- •Билет 54 .Raid системы.
- •Файлы устройств, драйверы
- •Буферизация при блок-ориентированном обмене
- •Билет 57. Управление оперативной памятью
- •Двухуровневая организация
Буферизация работы с операндами
Буфер операндов – аппаратная таблица, логически являющаяся компонентом ЦП (физически это может быть и отдельное от ЦП устройство), призванная аппаратно минимизировать количество обращений к «медленному» ОЗУ при записи и чтении операндов.
Т аблица состоит из фиксированного числа строк. Каждая строка имеет следующие поля:
-
адрес – физический адрес машинного слова в ОЗУ;
-
значение – значение машинного слова, соответствующего адресу;
-
признак изменения – код, характеризующий факт изменения поля значения (в соответствующей ячейке ОЗУ значение отличается от значения в таблице);
-
код старения – код, характеризующий интенсивность обращений к данной строке. По значению поля определяются наиболее «популярные» строки. Конкретный алгоритм изменения данного поля зависит от ЭВМ.
Примерные алгоритмы использования буфера операндов
Алгоритм для чтения данных из ОЗУ
Пусть имеется команды чтения данных из машинного слова по физическому адресу Aисп.
-
Поиск по таблице строки, содержащей адрес, совпадающий с Aисп. Если такой строки нет, то на п. 3.
-
Происходит обновление кода старения. Результатом команды чтения является содержимое поля «Значение».
-
По значениям поля «Код старения» осуществляется поиск строки, используемой наименее интенсивно.
-
Анализируется код изменения. Если значение изменялось в таблице, то происходит запись значения по адресу в ОЗУ.
-
Считывается машинное слово из ОЗУ по адресу Aисп и заполняется данная строка.
-
Считанное значение является результатом выполнения команды чтения.
Алгоритм для записи данных в озу
Пусть имеется команда записи значения в машинное слово по физическому адресу Aисп.
-
Поиск по таблице строки, содержащей адрес, совпадающий с Aисп. Если такой строки нет, то на п. 3.
-
Значение записывается в поле «Значение». Происходит обновление полей «Признак изменения», «Код старения». Выполнения команды записи завершено.
-
По значению поля «Код старения» осуществляется поиск строки, используемое наименее интенсивно.
-
Анализируется код изменения. Если значение изменялось в таблице, то происходит запись значения по адресу в ОЗУ.
-
Происходит обновление содержимого полей строки в соответствии с командой записи. Выполнение команды завершено.
Буферизация выборки команд
Буфер команд – минимизация обращений в ОЗУ за машинными командами.
Интерпретация одноименных полей аналогична буферу операндов.
Примерный алгоритм использования
Центральному процессору требуется для выполнения машинная команда, размещенная по физическому адресу ОЗУ Aисп.
-
Поиск по таблице строки, содержащей Aисп. Если такой не то на п. 3.
-
Обновление поля «Код старения», чтение поля «Значение» и передача его процессору для исполнения.
-
Поиск наименее интенсивно используемой строки. Чтение машинного слова из ОЗУ по адресу Aисп и заполнение всех полей строки. Передача процессору значения для исполнения.
Конкретные реализация и алгоритмы зависят от архитектуры ЭВМ. Возможно, например, использование одного буфера.
(Регистры буферной памяти (Cache, КЭШ).
Следующая группа регистров — регистры, относящиеся к т.н. буферной памяти. Мы возвращаемся к проблеме взаимодействия процессора и оперативной памяти и сглаживанию скоростей доступа в оперативную память. Предположим, у нас есть некоторая программа, которая производит вычисление некоторого выражения, при этом, процесс вычисления этого выражения будет представим следующим образом. В какие-то моменты идут обращения за операндами в оперативную память, в какие-то моменты обработанные данные записываются в оперативную память. Есть один из нескольких путей, которые сглаживают несоответствие скоростей процессора и оперативной памяти, который заключается в сокращении реальных обращений к оперативной памяти. Процессоры содержат быстродействующую регистровую память, призванную
буферизовать обращения к оперативной памяти.
Алгоритм чтения из оперативной памяти следующий:
Проверяется наличие в специальном регистровом буфере строчки, в которой находится исполнительный адрес, совпадающий с исполнительным адресом требуемого операнда. Если такая строчка имеется, то соответствующее этому адресу значение, считается
значением операнда и передается в процессор для обработки (т.е. обращение в оперативную память не происходит).
Если такой строчки нет, то происходит обмен с оперативной памятью, и копия полученного значения помещается в регистровый буфер и помечается исполнительным адресом этого значения в оперативной памяти. Содержимое операнда поступает в процессор для обработки. При этом решается проблема размещения новой строчки. Аппаратно ищется свободная строка (но она может быть только в начале работы машины), и если таковая не найдена, запускается аппаратный процесс вытеснения из этого буфера наиболее “старой” строчки. “Старость” определяется по некоторому предопределенному критерию. Например, признаком старения может быть количество обращений к этому буферу, при котором нет обращений к этой строчке. В каждом таком случае число в третьем столбце таблицы увеличивается на единицу. Короче говоря, аппаратура решает, какую из строк надо вытолкнуть из таблицы, чтобы на ее место записать новое содержимое. При этом учитывается информация о том, были ли обращения к данной строке с использованием команд записи в память. Если такие обращения были, то перед выталкиванием происходит запись в ОЗУ по исполнительному адресу содержимого нашей строчки.
Алгоритм записи в оперативную память симметричен. Когда в программе встречается команда записи операнда в память, аппаратура выполняет следующие действия. Проверяется наличие в буфере строки с заданным исполнительным адресом. Если такая строка есть, то в поле “Содержимое” записывается новое значение и аппаратно корректируется признак старения строк. Если такой строчки нет, то запускается
описанный выше процесс выталкивания, и затем информация размещается в освободившейся строке.
Этот буфер чтения/записи служит достаточно мощным средством для
минимизации обращений к ОЗУ. Наибольший эффект достигается при небольших циклах, когда все операнды размещаются в буфере, и после этого циклический процесс работает без обращений к ОЗУ. Иногда эти буфера называют КЭШ-буферами, а также ассоциативной памятью, потому что доступ к этой памяти осуществляется не по адресу (как в ОЗУ), а по значению поля. Реально, все механизмы могут быть устроены иначе,
чем мы здесь изучаем, т.к. мы изучаем некоторую обобщенную систему.
Билет №9 Основы архитектуры компьютера. Аппарат прерываний. Последовательность действий в вычислительной системе при обработке прерываний
Аппарат прерываний ЭВМ - возможность аппаратуры ЭВМ стандартным образом обрабатывать возникающие в вычислительной системе события. Данные события будем называть прерываниями.