В.А. Крюков - Операционные системы распределенных вычислительных систем (1158860)
Текст из файла
Операционные системы распределенных вычислительных систем (распределенные ОС).(Крюков В.А.)Распределенная система - совокупность независимых компьютеров,котораяпредставляется пользователю единым компьютером (metacomputer), использованиекоторого не намного сложнее, чем использование персональной ЭВМ.Введение в ОС однопроцессорных ЭВМ.Два взгляда:менеджер ресурсов;один слой в множестве слоев абстрактных машин.Представление ОС как менеджера ресурсовУправлениепроцессамиУправлениепроцессорамиПроцессорыУправление файламиУправлениепамятьюПамятьУправлениеустройствамиУстройстваПредставление ОС как абстрактной машиныАбстрактная машинаИнтерфейс пользователяИнтерфейс программыЯзыки управленияСистемаСистемные вызовызаданиями КомандныекомандПроцессы ПамятьязыкиФайлыОкна, меню, пиктограммыИнформационныефункцииМесто ОС среди ПОПрикладное ПО(отдельные приложения, пакеты прикладных программ,информационные системы, САПР)Системное ПО(ОС + системы программирования, СУБД, графическиебиблиотеки, сервисные программы)История ОС.1940-е и 1950-е"Персональные ЭВМ" - "пультовый режим"Библиотека программ ввода-вывода, служебная программа.Инструкция оператору.Середина 1950-хПакетная обработка.
Однопрограммный и мультипрограммный режимы.Инструкция оператору -> паспорт задачи (простейший язык управления заданиями).Требования к аппаратуре:защита памяти;прерывания;привилегированный режим;таймер.Как обеспечить мультипрограммный режим без таких механизмов.Середина 1960-хРежим разделения времени.Терминалы, квантование, свопинг, страничная и сегментная организация (общие сегментыпамяти).11970-еМногопроцессорные ЭВМ, многомашинные комплексы, сети ЭВМ.1980-еПерсональные ЭВМ.1990-еMPP, открытые системы, Internet.2000-екластеры, распределенные системы, GRID, многоядерные и многопоточные процессоры.*********Лекция 21 Введение в параллельные и распределенные системы1.1 Достоинства многопроцессорных систем с общей памятью (мультипроцессоров)(1) Производительность(2) Надежность1.2. Недостатки(1) ПО (приложения, языки, ОС) сложнее, чем для однопроцессорных ЭВМ(2) Ограниченность при наращивании (физ.
размеры - близость к памяти, когерентностьКЭШей, 64 процессора - максимально достигнутое).1.2 Достоинства распределенных системРаспределенная система - совокупность независимых компьютеров, которая представляетсяпользователю единым компьютером.Примеры: сеть рабочих станций (выбор процессора для выполнения программы, единаяфайловая система), роботизированный завод (роботы связаны с разными компьютерами, нодействуют как внешние устройства единого компьютера, банк с множеством филиалов,система резервирования авиабилетов.Почему создаются распределенные системы? В чем их преимущества передцентрализованными ЭВМ?1-ая причина - экономическая.Закон Гроша (Herb Grosh) - быстродействие процессора пропорционально квадрату егостоимости. С появлением микропроцессоров закон перестал действовать - за двойную ценуможно получить тот же процессор с несколько большей частотой.2-ая причина - можно достичь такой высокой производительности путем объединениямикропроцессоров, которая недостижима в централизованном компьютере.3-я причина - естественная распределенность (банк, поддержка совместной работы группыпользователей ).4-ая причина - надежность (выход из строя нескольких узлов незначительно снизитпроизводительность).5-я причина - наращиваемость производительности.В будущем главной причиной будет наличие огромного количества персональныхкомпьютеровинеобходимостьсовместной работы без ощущения неудобства отгеографического и физического распределения людей, данных и машин.Почему нужно объединять PC в сети?1.
Необходимость разделять данные.2. Преимущество разделениядорогихпериферийныхустройств, уникальныхинформационных и программных ресурсов.3. Достижение развитых коммуникаций между людьми. Электронная почта во многихслучаях удобнее писем, телефонов и факсов.4. Гибкость использования различных ЭВМ, распределение нагрузки.5. Упрощение постепенной модернизации посредством замены компьютеров.2Недостатки распределенных систем:1. Проблемы ПО (приложения, языки , ОС).2.
Проблемы коммуникационной сети (потери информации, перегрузка, развитие и замена).3. Секретность.1.3 Виды операционных систем (сетевые ОС, распределенные ОС, ОСмультипроцессоров).Сетевые ОС - машины обладают высокой степенью автономности, общесистемныхтребований мало. Можно вести диалог с другой ЭВМ, вводить задания в ее очередьпакетных заданий, иметь доступ к удаленным файлам, хотя иерархия директорий можетбыть разной для разных клиентов.
Пример - серверы файлов (многие WS могут не иметьдисков вообще).Распределенные ОСединыйглобальныймежпроцессный коммуникационныймеханизм, глобальная схема контроля доступа, одинаковое видение файловой системы.Вообще - иллюзия единой ЭВМ.ОС мультипроцессоров - единая очередьпроцессов, ожидающих выполнения, однафайловая система.Сетевая ОСРаспределеннаяОСОС мультипроцессораКомпьютернаясистема выглядиткак виртуальныймультипроцессорОдна и та же ОСвыполняется навсех процессорахНЕТДАДАНЕТДА (оченьусловно все вДАСколько копий ОСимеется в памятиИмеется ли единаяочередьвыполняющихсяпроцессовИмеется хорошоопределеннаясемантикаразделения файловNN1НЕТНЕТДАОбычно НЕТДАДАглубину, начиная спараллельного)1.4. Принципы построения распределенных ОС (прозрачность, гибкость, надежность,эффективность, масштабируемость).(1) Прозрачность (для пользователя и программы).ПрозрачностьПользователь не должен знать, гдерасположениярасположены ресурсыПрозрачность миграцииРесурсы могут перемещаться безизменения их именПрозрачностьПользователь не должен знать,размножениясколько копий существуетПрозрачностьМножество пользователей разделяетконкуренцииресурсы автоматическиПрозрачностьРабота может выполнятьсяпараллелизмапараллельно без участияпользователя3(2) Гибкость (не все еще ясно - потребуется менять решения).Использование монолитного ядра ОС или микроядра.(3) Надежность.Доступность, устойчивость к ошибкам (fault tolerance).Секретность.(4) Производительность.Грануллированность.
Мелкозернистый и крупнозернистый параллелизм (fine-grainedparallelism, coarse-grained parallelism).Устойчивость к ошибкам требует дополнительных накладных расходов.(5) Масштабируемость.Плохие решения:централизованные компоненты (один почтовый-сервер);централизованные таблицы (один телефонный справочник);централизованные алгоритмы (маршрутизатор на основе полной информации).Только децентрализованные алгоритмы со следующими чертами:ни одна машина не имеет полной информации о состоянии системы;машины принимают решения на основе только локальной информации;выход из строя одной машины не должен приводить к отказу алгоритма;не должно быть неявного предположения о существовании глобальных часов.Литература1.
DISTRIBUTED OPERATING SYSTEMS. Andrew S. Tanenbaum, Prentice-Hall, Inc., 19952. ADVANCED CONCEPTS IN OPERATING SYSTEMS. Mukesh Singhal,Shivaratri, McGraw-Hill, Inc., 1994Niranjan G.3. CENTRALIZED AND DISTRIBUTED OPERATING SYSTEMS. Gary J. Nutt, Prentice-Hall,Inc., 19924. David W. Walker, "The design of a standard message-passing interface for distributed memoryconcurrent computers", Parallel Computing, v.20, n 4, April 1994, 657-673.(www.mpiforum.org)5. A. Geist, A.
Beguelin, J. Dongarra, W. Jiang, R. Manchek, V. Sunderam, “PVM 3 User’s Guideand Reference Manual”, Technical report, Oak Ridge National Laboratory ORNL/TM-12187 (1993).6. Таненбаум Э., Стен М. ван. Распределенные системы. Принципы и парадигмы. –СПб.:Питер, 2003. (ISBN 5-272-00053-6, страниц: 877).4Лекция 32 Операционные системы мультипроцессорных ЭВМОрганизация ОС:главный-подчиненный (master-slave, выделение одного процессора для ОС упрощает ее,но этот процессор становится узким местом с точки зрения загруженности инадежности);симметричная (наиболее эффективная и сложная).2.1Процессы и нитиПроцесс этовыполнение программы. Компоненты процесса - выполняющаясяпрограмма, ее данные, ее ресурсы (например, память), и состояние выполнения.Традиционно, процесс имеет собственноехарактеризуется следующей информацией:адресное пространство и его состояниетаблицы страниц (или сегментов);дескрипторы файлов;заказы на ввод-вывод;регистры;и т.п.Большой объем этой информации делает дорогимипереключение.операциисоздания процессов, ихПотребность в легковесных процессах, нитях (threads), которые совместно используют единоеадресное пространство процесса, возникла еще на однопроцессорных ЭВМ (физическиепроцессы или их моделирование, совмещение обменов и счета), но для использованиядостоинств многопроцессорных ЭВМ с общей памятью они просто необходимы.Процессы могут быть независимыми, которые не требуют какой-либо синхронизации иобмена информацией (но могут конкурировать за ресурсы), либо взаимодействующими.2.2.
Взаимодействие процессовЕсли приложение реализовано в виде множества процессов (или нитей), то эти процессы(нити) могут взаимодействовать двумя основными способами:посредством разделения памяти (оперативной или внешней)посредством передачи сообщенийПри взаимодействии через общую память процессы должны синхронизовать свое выполнение.Различают два вида синхронизации - взаимное исключение критических интервалов икоординация процессов.Критические секции – частный случай критического интервала, когда критический интервалоформлен в виде конструкции языка программирования.
Характеристики
Тип файла PDF
PDF-формат наиболее широко используется для просмотра любого типа файлов на любом устройстве. В него можно сохранить документ, таблицы, презентацию, текст, чертежи, вычисления, графики и всё остальное, что можно показать на экране любого устройства. Именно его лучше всего использовать для печати.
Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.