А.Н. Томилин - Операционные системы супер-ЭВМ (1156254)
Текст из файла
А.Н.Томилин
Материалы к курсу
"Операционные системы супер-ЭВМ"
Содержание.
1. Введение.
2. Вычислительная система "Электроника ССБИС".
2.1. Аппаратные особенности основной машины.
2.2. Защита памяти.
2.3. Система прерываний.
2.4. Режимы выполнения.
2.5. Особенности программирования.
3. Операционная система основной машины.
3.1. Базовые объекты ОС.
3.2. Инициатор-Терминатор.
3.3. Файловая система.
3.3.1. Внешняя память ОМ.
3.3.2. Архитектура файловой системы.
3.3.3. Структура файловой системы на внешней памяти.
3.3.4. Распределение дисковой памяти.
3.3.5. Распределение массовой памяти.
3.4. Реализация методов доступа.
3.4.1. Кластеры в ОС ОМ.
3.4.2. Реализация методов доступа в процессоре массовой памяти.
3.5. Кластеры файловой системы.
3.6. Транспортная служба локальной сети ЭВМ.
3.7. Обработка исключительных ситуаций в ОС ОМ.
3.8. Функциональный протокол пересылки заданий.
3.9. Протокол пересылки файлов.
1.ВВЕДЕНИЕ.
В состав системного программного обеспечения основной машины вычислительной системы "Электроника ССБИС" (далее ОМ) входят следующие компоненты:
-
операционная система (ОС ОМ);
-
базовая система программирования;
-
система программирования на языке Фортран 77;
-
система программирования на языке Паскаль;
-
система программирования на языке Си.
Для облегчения чтения пособия включен раздел (раздел 2), содержащий краткое описание особенностей архитектуры ОМ.
Операционная система основной машины (ее описанию посвящен раздел 3) - это многопользовательская ОС, обеспечивающая решение задач в пакетном режиме, в режиме разделения времени, в режиме реального времени. ОС выполняет традиционные функции: управление заданиями, управление данными, управление процессором, основной памятью, дисковой и массовой памятью. Транспортная служба ОС обеспечивает взаимодействие с операционными системами внешних ЭВМ при пакетной обработке данных и удаленный вызов программ, предоставляя тем самым возможности децентрализованной обработки данных. ОС имеет развитые средства для повышения устойчивости системы к сбоям и отказам процессора, основной и внешней памяти.
Базовая система программирования предназначена для разработки программ на языке макроассемблера ОМ, который обеспечивает возможность написания высокоэффективных программ, наиболее полно учитывающих особенности архитектуры ОМ для достижения производительности, близкой к пиковой. На языке макроассемблера ОМ написаны основные компоненты системного программного обеспечения ОМ и многие библиотечные стандартные подпрограммы.
В базовой системе программирования поддерживается механизм абстрактных типов данных, что позволяет в полной мере использовать модульное программирование при разработке сложных программных систем. Механизм абстрактных типов данных был использован при разработке операционной системы основной машины.
Система программирования на языке Фортран 77 содержит оптимизирующий компилятор со стандарта этого языка. Компилятор содержит средства оптимизации программ с учетом особенностей векторной архитектуры (векторизация циклов и планирование потока команд).
2. ВЫЧИСЛИТЕЛЬНАЯ СИСТЕМА "ЭЛЕКТРОНИКА ССБИС"
Вычислительная система "Электроника СС БИС" включает:
-
высокопроизводительную основную машину векторно-конвейерного типа, оснащенную полупроводниковой массовой памятью большой емкости и внешней памятью на магнитных дисках;
-
управляющую машину;
-
внешние машины.
Управляющая машина, внешние машины и устройства внешней памяти (массовой и на магнитных дисках) подключаются к основной машине через устройство обмена, содержащее 16 высокоскоростных каналов. Пользовательские терминалы подключаются к внешним машинам.
2.1. Аппаратные особенности основной машины.
В состав основной машины (ОМ) входят:
-
процессор (тактовая частота 10 наносекунд);
-
оперативная память (емкость от 8 до 32 мегабайт);
-
устройство обмена;
Через каналы (пропускная способность 200 Мгб/сек) подключается массовая интегральная память емкостью 256 Мгб, темп обмена 0,64 мксек на 64-х разрядное слово. Через канал (пропускная способность 10 Мгб/сек) подсоединяется дисковая память, управляемая контроллерами или дисковыми серверами.
Процессор состоит из:
-
трех групп оперативных регистров, а именно - 8 адресных регистров (A-регистры), 8 скалярных регистров (S-регистры) и 8 векторных регистров (V-регистры);
-
промежуточных регистров: 64 адресных (B-регистры) и 64 скалярных (T-регистры);
-
вспомогательных регистров: регистра длины вектора (VL) и регистра векторной маски (VM);
-
16 полностью независимых конвейерных функциональных устройств, которые могут работать параллельно, выполняя операции над данными из оперативных регистров;
-
аппаратуры связи регистров с оперативной памятью, аппаратуры управления командами и аппаратуры управления каналами ввода-вывода.
Адресные регистры (A- и B-регистры) содержат 24 разряда, скалярные регистры (S- и T-регистры) - 64 разряда; каждый векторный регистр состоит из 64 слов по 64 разряда.
Каждое функциональное устройство реализует алгоритм одной или нескольких близких операций системы команд ОМ, причем скорость работы любого функционального устройства полностью детерминирована и не зависит от кодов конкретных операндов. Функциональные устройства могут получать новые наборы операндов и выдавать результаты в каждом такте синхронизации.
В состав аппаратуры управления командами и связи с оперативной памятью входит буфер команд, имеющий блочную организацию (16 блоков по 64 командных слога), с ассоциативным поиском номера блока. Наличие буфера команд позволяет значительно сократить число обращений к оперативной памяти при выполнении программы.
Имеется возможность выдачи команд для выполнения в функциональных устройствах с темпом одна команда за один такт синхронизации (максимальная производительность конвейера команд). Каждая команда в момент ее выдачи захватывает необходимые ей ресурсы (основные регистры и функциональные устройства) путем установки признаков резервирования в поле состояния ресурсов системы, приданном устройству управления (при этом соответствующий ресурс оказывается зарезервированным). Если один из ресурсов, запрашиваемых очередной командой, зарезервирован предшествующими командами, выдача команды блокируется до момента освобождения соответствующего ресурса, и конвейер команд приостанавливается. При выполнении скалярной команды регистр, на который должен быть помещен результат, резервируется на все время выполнения команды, а регистры, с которых берутся операнды, и функциональное устройство резервируются только на такт выдачи команды (они освобождаются сразу после выдачи команды). При выполнении векторной команды все три регистра (регистры, с которых берутся операнды, и регистр, на который помещается результат), а также функциональное устройство резервируются на все время выполнения команды.
2.2. Защита памяти
Средства защиты памяти гарантируют неприкосновенность адресных пространств задач разных пользователей и операционной системы. Адресное пространство для задачи определяется содержимым регистра базового адреса и распространяется непрерывной областью до границы, установленной значением в регистре граничного адреса. Все адреса памяти, вырабатываемые при выполнении программы, складываются с содержимым регистра базового адреса, который устанавливается ОС в соответствии с началом отведенной для программы области памяти. Таким образом, программа не может обратиться к ячейке памяти, имеющей физический адрес меньший, чем базовый. Обращение к памяти за пределами граничного адреса приводит к аппаратному прерыванию.
2.3. Система прерываний
Система обеспечивает изменение состояния процессора при возникновении некоторых внешних или внутренних условий, тем самым осуществляется переход на программу обработки прерываний.
В результате прерывания текущее состояние выполняемой программы - счетчик команд, адресные и скалярные регистры, базовый и граничный регистры будут упрятаны в специальную область памяти, называемую пакетом состояния, а из другой такой области на эти регистры будут установлены значения, которые определят состояние программы обработки прерываний.
Источником прерываний могут быть события в работе каналов (например, окончание обмена по каналу), определение ошибки памяти схемами контроля памяти, сигналы от таймера,"программные прерывания". К "программным прерываниям" относятся попытки обращения к памяти за границу адресного пространства, выполнение команд обращения к операционной системе, арифметические "прерывания".
Время переключения на программу обработки прерывания равняется 50 тактам.
2.4. Режимы выполнения
Процессор ОМ имеет два режима выполнения: режим пользователя и привилегированный режим - режим ядра ОС. В режиме пользователя не выполняются некоторые привилегированнные команды, связанные, в основном, с управлением работой каналов ввода/вывода, управлением пакетом состяний, таймером. В режиме ядра выполняются все команды ОС и блокируются прерывания, тем самым обеспечивается корректная обработка прерывний. Режим выполнения устанавливается из текущего пакета состояния в ходе выполнения операции замены (прерывания).
2.5. Особенности программирования.
Время выполнения программы на ОМ зависит от порядка следования команд: переставив две команды, мы, вообще говоря, изменяем время выполнения программы за счет изменения времени блокировки конвейера команд (см. п. 1.1). Для каждой программы существует такой порядок команд, сохраняющий семантику этой программы, при котором суммарное время блокировки конвейера команд минимально.
Другим источником сокращения времени выполнения программы является замена итерационных циклов векторными командами (там, где это возможно) и использование возможности зацепления векторных команд.
Это необходимо учитывать при составлении программ на языке ассемблера, а также при генерации объектных программ в компиляторах с языков высокого уровня.
3. ОПЕРАЦИОННАЯ СИСТЕМА ОСНОВНОЙ МАШИНЫ
Операционная система основной машины (ОС ОМ) имеет многофункциональное назначение: обеспечивает пакетную обработку и работу в режиме реального времени. Главная цель - эффективно решать задачи научного характера, имеющие большой объем вычислений, большой объем обрабатываемой информации, а также задачи управления объектами в реальном масштабе времени.
ОС ОМ должна поддерживать транспортные и функциональные средства локальной сети комплекса суперЭВМ. ОС ОМ должна иметь традиционнные средства обработки заданий, управления данными, задачами. В состав математического обеспечения должны входить трансляторы с языков высокого уровня, системы интерактивной и пакетной отладки.
3.1. Базовые объекты ОС.
Выбор основных объектов ОС во многом определяет успех разработки. Сосредоточение в ядре только программ управления базовыми объектами и реализация всей операционной системы и задач пользователей на единой технологии обеспечивают простоту создания системных и пользовательских подсистем, стройность архитектуры системы, легкость отладки, создают базу для расширения ОС и ее модернизации.
Выбирается такой подход, при котором индивидуальные объекты ОС или множества объектов размещаются в собственном адресном пространстве, в отдельной задаче.
Для этого подхода характерно наличие двух механизмов межпрограммного взаимодействия: один - для подпрограмм, выполняющихся в одном адресном пространстве, другой - для подпрограмм, выполняющихся в разных пространствах. Во втором случае параметры и результаты могут быть только значениями. Передача параметров-значений может трактоваться как передача сообщения от одной задачи к другой, а передача результата - как передача ответа. Эти передачи осуществляет ядро ОС, которому доступна вся память.
Таким образом, базовыми объектами ОС являются задачи и сообщения как средство взаимодействия между задачами.
Рассмотрим примитивы управления этими объектами.Примитивы реализуются ядром ОС.
Существуют следующие примитивы обмена сообщениями:
1. ПОСЛАТЬ СООБЩЕНИЕ СИНХРОННО (Nз,Nвх,СООБЩ,ОТВЕТ)
где Nз - уникальный идентификатор задачи-получателя сообщения, Nвх - идентификатор входа в задаче-получателе, СООБЩ - адрес сообщения и его длина, ОТВЕТ - адрес буфера, куда будет помещен ответ, и его длина.
2. ПОСЛАТЬ СООБЩЕНИЕ АСИНХРОННО (Nз,Nвх,СООБЩ,ОТВЕТ) <ИДС>
где Nз - уникальный идентификатор задачи-получателя сообщения, Nвх - идентификатор входа в задаче-получателе, СООБЩ - адрес сообщения и его длина, ОТВЕТ - адрес буфера, куда будет помещен ответ, и его длина. ИДС - идентификатор отправленного сообщения (выходной параметр).
3. ПРИНЯТЬ СООБЩЕНИЕ (Nв1,...,Nвn,СООБЩ) <ИДС,Nвi>
где Nв1,...,Nвn - список входов в задачу, по которым разрешен прием сообщений. СООБЩ - адрес буфера и его длина, куда будет помещено сообщение. ИДС - идентификатор принятого сообщения, Nвi - идентификатор входа, по которому было получено сообщение. ИДС и Nвi - выходные параметры.
Характеристики
Тип файла документ
Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.
Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.
Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.