Вордовские лекции (1115151)
Текст из файла
169
1 Введение 4
2 Вычислительная система. Структура и основные понятия. 5
2.1 Аппаратные средства ЭВМ 5
2.2 Управление физическими ресурсами 5
2.3 Управление логическими/виртуальными ресурсами 6
2.4 Системы программирования 6
2.5 Прикладные системы 6
3 Основные компоненты ЭВМ 8
3.1 Оперативное запоминающее устройство 8
3.2 Центральный процессор 10
3.2.1 Структура, функции ЦП 10
3.2.2 Регистры общего назначения (РОН) 10
3.2.3 Специальные регистры 11
3.3 Буферная память, КЭШ 11
3.3.1 Буферизация работы с операндами 12
3.3.2 Буферизация выборки команд 13
3.4 Внешние устройства 14
3.4.1 Организация управления внешними устройствами 14
3.4.2 Типы внешних устройств (ВУ) 16
3.4.3 Синхронная/асинхронная работа с ВУ 17
3.5 Аппарат прерываний 18
3.5.1 Определение. Последовательность действий при обработке 18
3.5.2 Прерывания: организация работы внешних устройств. 21
3.6 Аппаратная поддержка мультипрограммирования 22
3.7 Аппарат виртуальной памяти 24
4 Операционная система. Базовые понятия, определения. 28
4.1 Базовые понятия, определения, структура 28
4.2 Управление процессами 29
4.2.1 Жизненный цикл процесса 29
4.2.2 Типы процессов 31
4.2.3 Взаимодействие процессов. Методы синхронизации 31
4.2.4 Классические задачи синхронизации процессов 34
4.3 Управление оперативной памятью 39
4.4 Планирование 41
4.4.1 Планирование очереди процессов на начало обработки ЦП 41
4.4.2 Планирование распределения времени работы ЦП между процессами 42
4.4.3 Планирование очереди запросов на обмен 42
4.4.4 Планирование порядка обработки прерываний 42
4.4.5 Типы операционных систем 42
4.5 Файловые системы 44
4.5.1 Основные свойства, функции, определения 44
4.5.2 Стратегии организации файловых систем 45
4.6 Управление внешними устройствами 47
5 ОС Unix: Файловая система. 47
5.1 Особенности, характеристики Unix: 47
5.2 Организация файловой системы Unix. Пользовательский аспект. 48
5.3 Внутренняя организация файловой системы 50
5.3.1 Модель версии system V 50
5.3.2 Модель версии FFS BSD 55
6 ОС Unix: процессы, взаимодействие процессов 58
6.1 Базовые свойства процессов 58
6.1.1 Определение процесса. Контекст 58
6.1.2 Базовые средства организации и управления процессами 63
6.1.3 Жизненный цикл процессов 71
6.1.4 Формирование процессов 0 и 1 72
6.1.5 Планирование процессов. Свопинг 74
6.1.6 Механизмы взаимодействия процессов в ОС Unix. Основные концепции 75
6.2 Взаимодействие процессов в Unix, Базовые средства. 77
6.2.1 Сигналы. 77
6.2.2 Неименованные каналы. 82
6.2.3 Именованные каналы. 87
6.2.4 Взаимодействие процессов по модели «главный-подчиненный». 89
6.3 Система межпроцессного взаимодействия IPC. 93
6.3.1 Общие концепции 93
6.3.2 IPC: очередь сообщений. 95
6.3.3 IPC: разделяемая память. 101
6.3.4 IPC: массив семафоров. 103
6.3.5 IPC: Пример. Использование разделяемой памяти и семафоров. 105
7 ОС Unix: Работа с внешними устройствами 107
7.1 Файлы устройств, драйверы 107
7.2 Включение/удаление драйверов в систему. 109
7.3 Организация обмена данными с файлами. 109
7.4 Буферизация при блокориентированном обмене. 111
8 Многомашинные ассоциации. 112
8.1 Общая характеристика, основные составляющие, примеры. 112
8.2 Сети ЭВМ. Организация взаимодействия в сети. Модель ISO/OSI. 116
8.3 Семейство протоколов TCP/IP. 121
8.3.1 Архитектура семейства TCP/IP 121
8.3.2 Уровень доступа к сети 123
8.3.3 Межсетевой уровень 123
8.3.4 Транспортный уровень 130
8.3.5 Уровень прикладных программ 133
9 Средства взаимодействия процессов в сети. 134
9.1 Сокеты. 134
9.1.1 Типы сокетов. Коммуникационный домен. 135
9.1.2 Создание сокета. 136
9.1.3 Связывание. 137
9.1.4 Сервер: прослушивание сокета и подтверждение соединения. 138
9.1.5 Прием и передача данных. 139
9.1.6 Закрытие сокета. 140
9.1.7 Базовые схемы организации использования. 141
9.2 Интерфейс передачи сообщений: MPI. 148
9.2.1 Базовые архитектуры. 148
9.2.2 Крaткая характеристика MPI. 151
9.2.3 Коммуникаторы, группы и области связи. 152
9.2.4 Обрамляющие функции. Начало и завершение. 153
9.2.5 Функции пересылки данных. 154
9.2.6 Связь "точка-точка". Простейший набор. Пример. 156
9.2.7 Коллективные функции. 156
9.2.8 Точки синхронизации, или барьеры. 158
9.2.9 Распределенные операции. 158
9.2.10 Создание коммуникаторов и групп. 159
9.2.11 MPI и типы данных. 160
9.2.12 Зачем MPI знать тип передаваемых данных? 160
9.2.13 Использование MPI. 161
9.2.14 MPI-1 и MPI-2. 162
9.2.15 Пример. 163
9.2.16 Прием-передача - базовые 166
1Введение
Настоящий документ содержит предварительный проект конспекта лекций по курсу «СИСТЕМНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ». Данный конспект может быть использован в качестве дополнительного материала. Окончательный объем курса определяется материалом, реально рассмотренным на лекциях. Данная редакция конспекта может иметь некоторые неоднородности в детализации рассмотрения материала, некоторые из тем рассмотрены более подробно чем на лекциях, некоторые - рассмотрены достаточно поверхностно. Данный дисбаланс авторы постараются исправить в последующих редакциях конспекта. Авторы будут благодарны за получение конструктивных замечаний и обнаруженных в тексте ошибок и неточностей.
2Вычислительная система. Структура и основные понятия.
Вычислительная система – это совокупность аппаратных и программных средств, функционирующих в единой системе и предназначенных для решения задач определенного класса.
Эксплутационные качества вычислительной системы определяются как свойствами аппаратуры, так и программных компонентов.
2.1Аппаратные средства ЭВМ
Уровень аппаратных средств ЭВМ – система команд ЭВМ и программно управляемые компоненты ЭВМ.
Программно управляемые компоненты ЭВМ – физические ресурсы (физические устройства).
2.2Управление физическими ресурсами
Уровень управления физическими ресурсами – программная составляющая вычислительной системы, обеспечивающая предоставление для каждого конкретного физического ресурса интерфейса для использования – драйвер физического ресурса (устройства).
Драйвер физического устройства – программа, основанная на использовании команд управления конкретного физического устройства и предназначенная для организации работы с данным устройством.
Драйвер физического устройства скрывает от пользователя детальные элементы управления конкретным физическим устройством. Драйвер физического устройства ориентирован на конкретные свойства устройства.
На данном уровне иерархии вычислительной системы обеспечивается корректное функционирование и использование физических ресурсов/устройств.
2.3Управление логическими/виртуальными ресурсами
Виртуальное – нечто реально не существующее, не имеющее реальной физической организации.
Логическое/виртуальное устройство (ресурс) – это устройство/ресурс, некоторые эксплутационные характеристики которого (возможно все) реализованы программным образом.
Иерархия логических/виртуальных устройств (ресурсов).
1-й уровень обобщения
Драйвер логического устройства определенного типа – обобщает интерфейсы драйверов физических устройств этого типа => унификация обращения.
2-й уровень обобщения
Создание логического/виртуального устройства, которому, в конечном счете, соответствует реальное устройство другого типа.
3-й уровень обобщения
Реализация логических/виртуальных устройств (ресурсов) базируется на использовании других логических/виртуальных устройств.
Функция управления логическими/виртуальными устройствами (ресурсами) – контроль за созданием и использованием.
На уровне управления логическими ресурсами пользователю предоставляется система команд ЭВМ и интерфейсы к драйверам логических/виртуальных устройств/ресурсов.
Уровни управления физическими и логическими устройствами вычислительной системы обычно составляют операционную систему.
2.4Системы программирования
Уровень системы программирования обеспечивает поддержание этапов жизни программы: проектирование, кодирование, тестирование, отладка, изготовление программного продукта.
На данном уровне пользователю предоставляются средства программирования виртуальной машины, основанные на некотором языке программирования и совокупности доступных логических/виртуальных ресурсов.
2.5Прикладные системы
Уровень прикладных систем ориентирован на решение задач из конкретных прикладных областей.
Одной из основных задач настоящего курса является рассмотрение аппаратных и программных компонентов ВС в их взаимосвязи, в функционировании в единой системе.
Основной проблемой, возникающей как в ЭВМ в отдельности, так и в вычислительной системе в целом является несоответствие производительности основных компонентов друг другу. Так скорость обработки информации ЦП существенно превосходит скорость доступа к ОЗУ. В свою очередь скорость доступа к внешним устройствам существенно ниже этих показателей для ЦП и ОЗУ и т.д. Так как эти компоненты работают в системе, то на первый взгляд итоговая производительность такой системы будет определяться наименее “скоростным” компонентом (то есть заведомо основное влияние на системную производительность будет оказывать скорость доступа к ОЗУ, так как обращения в ОЗУ при работе ЭВМ происходят постоянно).
Ниже будут рассмотрены пути решения этой проблемы.
3Основные компоненты ЭВМ
3.1Оперативное запоминающее устройство
ОЗУ - устройство, предназначенное для хранения оперативной информации. В ОЗУ размещается исполняемая в данный момент программа и используемые ею данные. ОЗУ состоит из ячеек памяти, содержащей поле машинного слова и поле служебной информации.
М ашинное слово – поле программно изменяемой информации, в машинном слове могут располагаться машинные команды (или части машинных команд) или данные, с которыми может оперировать программа. Машинное слово имеет фиксированный для данной ЭВМ размер (обычно размер машинного слова – это количество двоичных разрядов, размещаемых в машинном слове).
Служебная информация (иногда ТЭГ) – поле ячейки памяти, в котором схемами контроля процессора и ОЗУ автоматически размещается информация, необходимая для осуществления контроля за целостностью и корректностью использования данных, размещаемых в машинном слове.
В поле служебной информации могут размещаться:
-
разряды контроля четности машинного слова (при записи машинного слова подсчет числа единиц в коде машинного слова и дополнение до четного или нечетного в контрольном разряде), при чтении контроль соответствия;
-
разряды контроля данные-команда (обеспечение блокировки передачи управления на область данных программы или несанкционированной записи в область команд);
-
машинный тип данных – осуществление контроля за соответствием машинной команды и типа ее операндов;
Конкретная структура, а также наличие поля служебной информации зависит от конкретной ЭВМ.
В ОЗУ все ячейки памяти имеют уникальные имена, имя - адрес ячейки памяти. Обычно адрес – это порядковый номер ячейки памяти (нумерация ячеек памяти возможна как подряд идущими номерами, так и номерами, кратными некоторому значению). Доступ к содержимому машинного слова осуществляется посредством использования адреса. Обычно скорость доступа к данным ОЗУ существенно ниже скорости обработки информации в ЦП.
Необходимо, чтобы итоговая скорость выполнения команды процессором как можно меньше зависела от скорости доступа к коду команды и к используемым в ней операндам из памяти. Это составляет проблему, которая системным образом решается на уровне архитектуры ЭВМ.
Расслоение ОЗУ – один из аппаратных путей решения проблемы дисбаланса в скорости доступа к данным, размещенным в ОЗУ и производительностью ЦП. Суть расслоения ОЗУ состоит в следующем. Все ОЗУ состоит из k блоков, каждый из которых может работать независимо. Ячейки памяти распределены между блоками таким образом, что у любой ячейки ее соседи размещаются в соседних блоках.
Характеристики
Тип файла документ
Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.
Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.
Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.