~~~~~~~~~~~~~~~~~~~~ Arc.Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~ 
Номер скриншота №:
✰ 931FA61A7F3358E98F2D59FF4855A690__1713233400 ✰
Заголовок документа оригинал.:
✰ Distributed operating system - Wikipedia ✰
Заголовок документа перевод.:
✰ Распределенная операционная система — Википедия ✰
Снимок документа находящегося по адресу (URL):
✰ https://en.wikipedia.org/wiki/Distributed_operating_system ✰
Адрес хранения снимка оригинал (URL):
✰ https://arc.ask3.ru/arc/aa/93/90/931fa61a7f3358e98f2d59ff4855a690.html ✰
Адрес хранения снимка перевод (URL):
✰ https://arc.ask3.ru/arc/aa/93/90/931fa61a7f3358e98f2d59ff4855a690__translat.html ✰
Дата и время сохранения документа:
✰ 21.06.2024 04:49:50 (GMT+3, MSK) ✰
Дата и время изменения документа (по данным источника):
✰ 16 April 2024, at 05:10 (UTC). ✰ 

~~~~~~~~~~~~~~~~~~~~~~ Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~~ 
Сервисы Ask3.ru: 
 Архив документов (Снимки документов, в формате HTML, PDF, PNG - подписанные ЭЦП, доказывающие существование документа в момент подписи. Перевод сохраненных документов на русский язык.)https://arc.ask3.ruОтветы на вопросы (Сервис ответов на вопросы, в основном, научной направленности)https://ask3.ru/answer2questionТоварный сопоставитель (Сервис сравнения и выбора товаров) ✰✰
✰ https://ask3.ru/product2collationПартнерыhttps://comrades.ask3.ru


Совет. Чтобы искать на странице, нажмите Ctrl+F или ⌘-F (для MacOS) и введите запрос в поле поиска.
Arc.Ask3.ru: далее начало оригинального документа

Распределенная операционная система — Википедия Jump to content

Распределенная операционная система

Из Википедии, бесплатной энциклопедии

Распределенная операционная система — это системное программное обеспечение, состоящее из набора независимых программ, объединенных в сеть , взаимодействующих и физически разделенных вычислительных узлов. Они обрабатывают задания, которые обслуживаются несколькими процессорами. [1] Каждый отдельный узел содержит определенное подмножество программного обеспечения глобальной совокупной операционной системы. Каждое подмножество представляет собой совокупность двух отдельных поставщиков услуг. [2] Первый — это вездесущее минимальное ядро , или микроядро , которое напрямую управляет оборудованием этого узла. Во-вторых, это набор компонентов управления системой более высокого уровня , которые координируют индивидуальную и совместную деятельность узла. Эти компоненты абстрагируют функции микроядра и поддерживают пользовательские приложения. [3]

Микроядро и коллекция компонентов управления работают вместе. Они поддерживают цель системы — интеграцию множества ресурсов и функций обработки в эффективную и стабильную систему. [4] Такая плавная интеграция отдельных узлов в глобальную систему называется прозрачностью или единым образом системы ; описание создаваемой пользователям иллюзии внешнего вида глобальной системы как единого вычислительного объекта.

Описание [ править ]

Структура операционных систем на основе монолитного ядра, микроядра и гибридного ядра.

Распределенная ОС предоставляет основные службы и функции, необходимые для ОС, но добавляет атрибуты и определенные конфигурации , позволяющие ей поддерживать дополнительные требования, такие как повышенное масштабирование и доступность. Для пользователя распределенная ОС работает аналогично одноузловой монолитной операционной системе . То есть, хотя он и состоит из нескольких узлов, для пользователей и приложений он выглядит как один узел.

Отделение минимальной функциональности системного уровня от дополнительных модульных сервисов пользовательского уровня обеспечивает « разделение механизма и политики ». Механизм и политику можно просто интерпретировать как «что что-то делается» и «как что-то делается» соответственно. Такое разделение повышает гибкость и масштабируемость.

Обзор [ править ]

Ядро [ править ]

В каждом языковом стандарте (обычно узле) ядро ​​предоставляет минимально полный набор утилит уровня узла, необходимых для работы с базовым оборудованием и ресурсами узла. Эти механизмы включают в себя распределение, управление и распоряжение ресурсами узла, процессами, связью и вспомогательными функциями управления вводом/выводом . [5] Внутри ядра подсистема связи имеет первостепенное значение для распределенной ОС. [3]

В распределенной ОС ядро ​​часто поддерживает минимальный набор функций, включая низкоуровневое адресным пространством управление , управление потоками и межпроцессное взаимодействие (IPC). Ядро такой конструкции называется микроядром . [6] [7] Его модульная природа повышает надежность и безопасность — важные функции для распределенной ОС. [8]

Общий обзор компонентов управления системой, расположенных над микроядром.
Обзор компонентов управления системой

Управление системой [ править ]

узла Компоненты управления системой — это программные процессы, определяющие политику . Эти компоненты являются частью ОС вне ядра. Эти компоненты обеспечивают связь более высокого уровня, управление процессами и ресурсами, надежность, производительность и безопасность. Компоненты соответствуют функциям единой системы, добавляя прозрачность, необходимую в распределенной среде. [3]

Распределенная природа ОС требует дополнительных сервисов для поддержки ответственности узла перед глобальной системой. Кроме того, компоненты управления системой берут на себя «защитную» ответственность за надежность, доступность и постоянство. Эти обязанности могут противоречить друг другу. Последовательный подход, сбалансированная перспектива и глубокое понимание всей системы могут помочь выявить уменьшающуюся отдачу . Разделение политики и механизмов смягчает такие конфликты. [9]

операционная система Совместная работа как

Архитектура и проект распределенной операционной системы должны реализовывать цели как отдельного узла, так и глобальной системы. К архитектуре и дизайну необходимо подходить с учетом разделения политики и механизма. При этом распределенная операционная система пытается обеспечить эффективную и надежную структуру распределенных вычислений, обеспечивающую абсолютную минимальную осведомленность пользователя о базовых усилиях по управлению и контролю. [8]

Многоуровневое сотрудничество между ядром и компонентами управления системой и, в свою очередь, между отдельными узлами в распределенной операционной системе является функциональной задачей распределенной операционной системы. Это точка в системе, которая должна поддерживать идеальную гармонию целей и одновременно поддерживать полное отсутствие намерения от реализации. Эта задача заключается в возможности распределенной операционной системы создать основу и структуру для надежной, эффективной, доступной, надежной, расширяемой и масштабируемой системы. Однако эта возможность обходится очень высокой ценой в плане сложности.

Цена сложности [ править ]

В распределенной операционной системе исключительная степень внутренней сложности может легко превратить всю систему в анафому для любого пользователя. Таким образом, логическая цена реализации распределенной операционной системы должна быть рассчитана с точки зрения преодоления огромных сложностей во многих областях и на многих уровнях. Этот расчет включает в себя глубину, широту и диапазон инвестиций в проектирование и архитектурное планирование, необходимых для достижения даже самой скромной реализации. [10]

Эти соображения по проектированию и разработке имеют решающее значение и неумолимы. Например, исключительно на ранней стадии требуется глубокое понимание общей архитектуры и деталей проекта распределенной операционной системы. [1] При разработке распределенной операционной системы необходимо учитывать целый ряд проектных соображений. Каждый из этих конструктивных соображений потенциально может в значительной степени влиять на многие другие. Это приводит к огромным усилиям по сбалансированному подходу с точки зрения индивидуальных проектных соображений и множества их вариаций. В качестве помощи в этих усилиях большинство полагаются на документированный опыт и исследования в области распределенных вычислительных мощностей.

История [ править ]

Серьезные исследования и эксперименты начались в 1970-х годах и продолжались до 1990-х годов, а пик целенаправленного интереса пришелся на конец 1980-х годов. В этот период был представлен ряд распределенных операционных систем; однако очень немногие из этих реализаций достигли хотя бы скромного коммерческого успеха.

Фундаментальные и новаторские реализации примитивных концепций компонентов распределенных операционных систем относятся к началу 1950-х годов. [11] [12] [13] Некоторые из этих отдельных шагов не были направлены непосредственно на распределенные вычисления, и в то время многие, возможно, не осознавали их важного воздействия. Эти новаторские усилия заложили важную основу и вдохновили на продолжение исследований в областях, связанных с распределенными вычислениями. [14] [15] [16] [17] [18] [19]

В середине 1970-х годов исследования привели к важным достижениям в области распределенных вычислений. Эти прорывы обеспечили прочную и стабильную основу для усилий, которые продолжались на протяжении 1990-х годов.

Ускоряющееся распространение исследований многопроцессорных и многоядерных процессорных систем привело к возрождению концепции распределенных ОС.

ДИСАК [ править ]

Одной из первых попыток стал DYSEAC компьютер общего назначения — синхронный . В одной из первых публикаций Ассоциации вычислительной техники в апреле 1954 года исследователь Национального бюро стандартов (ныне Национальный институт стандартов и технологий ( NIST )) представил подробную спецификацию DYSEAC. Во введении основное внимание уделялось требованиям предполагаемых приложений, включая гибкую связь, но также упоминались и другие компьютеры:

Наконец, внешние устройства могут включать в себя даже другие полноценные компьютеры, использующие тот же цифровой язык, что и DYSEAC. Например, SEAC или другие подобные ему компьютеры можно подключить к DYSEAC и с помощью скоординированных программ можно заставить работать вместе и совместно над общей задачей… Следовательно, [,] компьютер можно использовать для координации различных деятельность всех внешних устройств в эффективную работу ансамбля.

АЛАН Л. ЛЕЙНЕР, Системные характеристики DYSEAC

В спецификации обсуждалась архитектура многокомпьютерных систем, в которой предпочтение отдавалось одноранговой сети, а не системе «главный-подчиненный».

Каждый член такой взаимосвязанной группы отдельных компьютеров волен в любое время инициировать и отправлять специальные команды управления любому из своих партнеров в системе. Как следствие, диспетчерский контроль над общей задачей может первоначально быть свободно распределен по всей системе, а затем временно сконцентрирован в одном компьютере или даже быстро передаваться от одной машины к другой по мере возникновения необходимости. …различные средства прерывания, которые были описаны, основаны на взаимном сотрудничестве между компьютером и вспомогательными внешними устройствами, а не отражают просто отношения «главный-подчиненный».

АЛАН Л. ЛЕЙНЕР, Системные характеристики DYSEAC

Это один из самых ранних примеров компьютера с распределенным управлением. Министерство армии. Об этом сообщает [20] подтвердил его надежность и то, что он прошел все приемочные испытания в апреле 1954 года. Он был завершен и доставлен вовремя, в мае 1954 года. Это был « портативный компьютер », размещавшийся в тягаче-прицепе с двумя машинами обслуживающего персонала и 6 тоннами холодильного оборудования. емкость.

Линкольн ТХ-2 [ править ]

Описанный как экспериментальная система ввода-вывода, Lincoln TX-2 делал упор на гибкие, одновременно работающие устройства ввода-вывода, то есть мультипрограммирование . Конструкция TX-2 была модульной, допускающей широкие модификации и расширения. [12]

В системе использовалась техника множественной программы. Этот метод позволил каждому из нескольких программных счетчиков ассоциироваться с одной из 32 возможных последовательностей программного кода. Эти последовательности с явным приоритетом могут чередоваться и выполняться одновременно, влияя не только на текущие вычисления, но также на поток управления последовательностями и переключение устройств. Много дискуссий связано с секвенированием устройств.

Подобно DYSEAC, отдельно запрограммированные устройства TX-2 могут работать одновременно, увеличивая пропускную способность . Вся мощность центрального блока была доступна любому устройству. TX-2 был еще одним примером системы с распределенным управлением, в которой ее центральный блок не имел специального управления.

Сообщающиеся ячейки [ править ]

Одной из первых попыток абстрагировать доступ к памяти были «Взаимодействующие ячейки», где ячейка состояла из набора элементов памяти . Элемент памяти представлял собой, по сути, двоичный электронный триггер или реле . Внутри ячейки было два типа элементов: символ и ячейка . Каждая структура ячейки хранит данные в строке символов, состоящей из имени и набора параметров . Информация связана посредством клеточных ассоциаций. [13]

Теория утверждала, что адресация — это расточительный и бесполезный уровень косвенности . Доступ к информации осуществлялся двумя способами: прямым и перекрестным. Прямой поиск принимает имя и возвращает набор параметров. Перекрестный поиск реализует наборы параметров и возвращает набор имен, содержащий заданное подмножество параметров. Это было похоже на модифицированную хэш-таблицы структуру данных , которая позволяла использовать несколько значений (параметров) для каждого ключа (имени).

Ячеистая память будет иметь много преимуществ:
Основная часть системной логики распределена внутри ассоциаций информации, хранящейся в ячейках.
Этот поток информационных ассоциаций в некоторой степени направляется актом хранения и извлечения.
Время, необходимое для хранения и извлечения, в основном постоянно и совершенно не связано с размером и коэффициентом заполнения памяти.
Ячейки логически неотличимы, что делает их гибкими в использовании и относительно простыми в увеличении размера.

Эта конфигурация идеальна для распределенных систем. Проекция постоянного времени через память для хранения и извлечения была по своей сути атомарной и эксклюзивной . Внутренние распределенные характеристики клеточной памяти будут иметь неоценимое значение. Влияние на пользователя , оборудование / устройство или интерфейсы прикладного программирования было косвенным. Авторы рассматривали распределенные системы и заявляли:

Мы хотели представить здесь основные идеи распределенной логической системы... макроскопическая концепция логического проектирования, исключающая сканирование, поиск, адресацию и подсчет, не менее важна. Мы должны любой ценой освободиться от бремени детальных локальных проблем, которые подходят только машинам, стоящим на низкой эволюционной шкале машин.

- Чунг-Ёль (CY) Ли, Взаимодействующие ячейки, основа компьютера с распределенной логикой

Фундаментальная работа [ править ]

памяти Абстракция когерентной

  Алгоритмы масштабируемой синхронизации на мультипроцессорах с общей памятью [21]

Абстракция файловой системы [ править ]

 Измерения распределенной файловой системы [22]
 Согласованность памяти в системах общей виртуальной памяти [23]

Абстракция транзакции [ править ]

 Транзакции
  Саги [24]

 Транзакционная память
 Составные транзакции с памятью [25]
 Транзакционная память: архитектурная поддержка структур данных без блокировок [26]
 Программная транзакционная память для структур данных динамического размера [27]
 Программная транзакционная память [28]

Абстракция персистентности [ править ]

 OceanStore: архитектура постоянного хранилища глобального масштаба. [29]

Абстракция координатора [ править ]

  Взвешенное голосование за реплицируемые данные [30]
  Консенсус при наличии частичной синхронности [31]

Абстракция надежности [ править ]

 Проверка работоспособности
 Проблема византийских генералов [32]
 Отказоустойчивые процессоры: подход к проектированию отказоустойчивых вычислительных систем [33]

 Возможность восстановления
 Распределенные снимки: определение глобальных состояний распределенных систем [34]
 Оптимистическое восстановление в распределенных системах [35]

распределенных вычислений Модели

Три основных дистрибутива [ править ]

Чтобы лучше проиллюстрировать этот момент, рассмотрим три системные архитектуры ; централизованный, децентрализованный и распределенный. В этом исследовании рассмотрим три структурных аспекта: организация, связь и контроль. Организация описывает характеристики физического расположения системы. Соединение охватывает пути связи между узлами. Контроль управляет действием двух предыдущих соображений.

Организация [ править ]

Централизованная система имеет один уровень структуры, где все составляющие элементы напрямую зависят от одного элемента управления. Децентрализованная система является иерархической. Нижний уровень объединяет подмножества сущностей системы. Эти подмножества сущностей, в свою очередь, объединяются на более высоких уровнях, достигая кульминации в конечном итоге в центральном главном элементе. Распределенная система представляет собой совокупность автономных элементов без понятия уровней.

Соединение [ править ]

Централизованные системы подключают компоненты напрямую к центральному главному объекту в виде концентратора и лучевого узла. Децентрализованная система (также известная как сетевая система ) включает в себя прямые и косвенные пути между составными элементами и центральным объектом. Обычно это настраивается как иерархия с одним кратчайшим путем между любыми двумя элементами. Наконец, распределенная операционная система не требует шаблонов; Между любыми двумя элементами возможны прямые и косвенные связи. Рассмотрим феномен « струнного искусства » или рисунка спирографа 1970-х годов как полностью связанную систему , а паутину или систему автомагистралей между штатами между городами США — как примеры частично связанной системы .

Контроль [ править ]

Централизованные и децентрализованные системы направляют потоки подключений к центральному объекту и от него, тогда как распределенные системы общаются по произвольным путям. Это ключевое понятие третьего соображения. Контроль предполагает распределение задач и данных по элементам системы, обеспечивая баланс между эффективностью, оперативностью и сложностью.

Централизованные и децентрализованные системы предлагают больший контроль, потенциально упрощая администрирование за счет ограничения возможностей. Распределенными системами сложнее явно управлять, но они лучше масштабируются по горизонтали и предлагают меньше точек общесистемного сбоя. Ассоциации соответствуют потребностям, обусловленным их дизайном, а не организационным хаосом.

Аспекты дизайна [ править ]

Прозрачность [ править ]

Прозрачность или образ единой системы означает способность приложения обрабатывать систему, в которой оно работает, независимо от того, является ли она распределенной, а также без учета аппаратного обеспечения или других деталей реализации. Прозрачность может принести пользу многим областям системы, включая доступ, местоположение, производительность, именование и миграцию. Соблюдение прозрачности напрямую влияет на принятие решений во всех аспектах проектирования распределенной операционной системы. Прозрачность может накладывать определенные требования и/или ограничения на другие аспекты проектирования.

Системы могут при желании в той или иной степени нарушать прозрачность для удовлетворения конкретных требований приложения. Например, распределенная операционная система может представлять жесткий диск на одном компьютере как «C:», а диск на другом компьютере — как «G:». От пользователя не требуется никаких знаний драйверов устройств или расположения накопителя; с точки зрения приложения оба устройства работают одинаково. Менее прозрачный интерфейс может потребовать, чтобы приложение знало, на каком компьютере находится диск. Домены прозрачности:

  • Прозрачность местоположения . Прозрачность местоположения включает в себя два различных аспекта прозрачности: прозрачность именования и мобильность пользователей. Прозрачность именования требует, чтобы ничто в физических или логических ссылках на любой системный объект не раскрывало никаких указаний на местоположение объекта или его локальное или удаленное отношение к пользователю или приложению. Мобильность пользователей требует согласованных ссылок на системные объекты, независимо от местоположения системы, из которой исходит ссылка. [8] : 20 
  • Прозрачность доступа . Объекты локальной и удаленной системы должны оставаться неразличимыми при просмотре через пользовательский интерфейс. Распределенная операционная система поддерживает это восприятие посредством предоставления единого механизма доступа для системного объекта, независимо от того, является ли этот объект локальным или удаленным для пользователя. Прозрачность требует, чтобы любые различия в методах доступа к любому конкретному системному объекту — локальному или удаленному — должны быть невидимыми и необнаружимыми для пользователя. [3] : 84 
  • Прозрачность миграции . Ресурсы и действия переносятся из одного элемента в другой, контролируемые исключительно системой и без ведома или действий пользователя/приложения. [36] : 16 
  • Прозрачность репликации . Процесс или факт дублирования ресурса на другом элементе происходит под контролем системы и без ведома или вмешательства пользователя/приложения. [36] : 16 
  • Прозрачность параллелизма . Пользователи/приложения не знают и не подвержены влиянию присутствия/действий других пользователей. [36] : 16 
  • Прозрачность сбоев . Система отвечает за обнаружение и устранение сбоев системы. Никаких знаний/действий пользователя не требуется, кроме ожидания, пока система решит проблему. [9] : 30 
  • Прозрачность производительности . Система отвечает за обнаружение и устранение локальных или глобальных недостатков производительности. Обратите внимание, что системные политики могут отдавать предпочтение некоторым пользователям/классам пользователей/задачам перед другими. Никакого пользовательского знания или взаимодействия. вовлечен. [8] : 23 
  • Прозрачность размера/масштаба . Система отвечает за управление географическим охватом, количеством узлов и уровнем возможностей узлов без каких-либо необходимых знаний или взаимодействия с пользователем. [8] : 23 
  • Прозрачность изменений . Система отвечает за обновления, изменения и изменения в системной инфраструктуре без ведома или действий пользователя. [9] : 30 
  • Прозрачность управления . Система отвечает за предоставление всей системной информации, констант, свойств, параметров конфигурации и т. д. в единообразном виде, значении и значении для всех пользователей и приложений. [3] : 84 
  • Прозрачность данных . Система отвечает за предоставление данных приложениям без ведома пользователя или действий, связанных с тем, где система их хранит. [3] : 85 
  • Прозрачность параллелизма . Система отвечает за использование любой возможности распараллеливания выполнения задач без ведома или взаимодействия пользователя. Вероятно, это самый сложный аспект прозрачности, описанный Таненбаумом как «Святой Грааль» для разработчиков распределенных систем. [37] : 23–25 

Межпроцессное взаимодействие [ править ]

Межпроцессное взаимодействие (IPC) — это реализация общей связи, взаимодействия процессов и потока данных между потоками и/или процессами как внутри узла, так и между узлами в распределенной ОС. Требования к внутриузловой и межузловой связи определяют низкоуровневый проект IPC, который является типичным подходом к реализации функций связи, поддерживающих прозрачность. В этом смысле межпроцессное взаимодействие является важнейшей концепцией, лежащей в основе низкоуровневого проектирования распределенной операционной системы.

Управление процессами [ править ]

Управление процессами обеспечивает политики и механизмы для эффективного и действенного совместного использования ресурсов между распределенными процессами. Эти политики и механизмы поддерживают операции, включающие выделение и отмену выделения процессов и портов процессорам, а также механизмы запуска, приостановки, миграции, остановки или возобновления выполнения процессов. Хотя эти ресурсы и операции могут быть как локальными, так и удаленными по отношению друг к другу, распределенная ОС поддерживает состояние и синхронизацию всех процессов в системе.

Например, балансировка нагрузки является распространенной функцией управления процессами. Балансировка нагрузки отслеживает производительность узлов и отвечает за перераспределение активности между узлами, когда система выходит из равновесия. Одна из функций балансировки нагрузки выбирает процесс для перемещения. Ядро может использовать несколько механизмов выбора, включая выбор на основе приоритета. Этот механизм выбирает процесс на основе такой политики, как «самый новый запрос». Система реализует политику

Управление ресурсами [ править ]

Системные ресурсы , такие как память, файлы, устройства и т. д., распределены по всей системе, и в любой момент на любом из этих узлов может возникнуть небольшая или простаивающая рабочая нагрузка. Распределение нагрузки и балансировка нагрузки требуют принятия множества решений, ориентированных на политику, начиная от поиска простаивающих процессоров, определения того, когда и какие перемещать. Существует множество алгоритмов , помогающих принимать эти решения; однако это требует второго уровня политики принятия решений при выборе алгоритма, наиболее подходящего для данного сценария, и условий, окружающих этот сценарий.

Надежность [ править ]

Распределенная ОС может предоставить необходимые ресурсы и службы для достижения высокого уровня надежности или возможности предотвращения ошибок и/или восстановления после них. Неисправности — это физические или логические дефекты, которые могут вызвать ошибки в системе. Чтобы система была надежной, она должна каким-то образом преодолевать неблагоприятные последствия сбоев.

К основным методам устранения ошибок относятся предотвращение ошибок , отказоустойчивость , а также обнаружение и устранение ошибок . Предотвращение сбоев включает в себя упреждающие меры, принимаемые для минимизации возникновения сбоев. Эти упреждающие меры могут принимать форму транзакций , репликации и резервного копирования . Отказоустойчивость – это способность системы продолжать работу при наличии неисправности. В этом случае система должна обнаружить и восстановить полную функциональность. В любом случае при любых предпринимаемых действиях следует прилагать все усилия для сохранения единого образа системы .

Наличие [ править ]

Доступность — это доля времени, в течение которой система может отвечать на запросы.

Производительность [ править ]

Многие контрольные показатели позволяют количественно оценить производительность ; пропускная способность, время отклика, завершение заданий в единицу времени, загрузка системы и т. д. Что касается распределенной ОС, производительность чаще всего сводится к балансу между параллелизмом процессов и IPC. [ нужна цитата ] Управление степенью детализации задач параллелизма в разумном отношении к сообщениям, необходимым для поддержки, чрезвычайно эффективно. [ нужна цитата ] определить, когда более выгодно перенести процесс на его данные, а не копировать их. Кроме того, эффективно [ нужна цитата ]

Синхронизация [ править ]

Взаимодействующим параллельным процессам присуща потребность в синхронизации , которая гарантирует, что изменения происходят правильным и предсказуемым образом. Три основные ситуации, определяющие масштаб этой потребности:

  • один или несколько процессов должны синхронизироваться в данной точке, чтобы один или несколько других процессов могли продолжиться,
  • один или несколько процессов должны дождаться асинхронного состояния, чтобы продолжить работу,
  • или процесс должен установить монопольный доступ к общему ресурсу.

Неправильная синхронизация может привести к множеству режимов сбоя, включая потерю атомарности, согласованности, изоляции и долговечности , взаимоблокировку , активную блокировку и потерю сериализуемости . [ нужна цитата ]

Гибкость [ править ]

Гибкость распределенной операционной системы повышается за счет модульных характеристик распределенной ОС и предоставления более богатого набора сервисов более высокого уровня. Полнота и качество ядра/микроядра упрощает реализацию таких сервисов и потенциально дает поставщикам услуг более широкий выбор поставщиков таких услуг. [ нужна цитата ]

Исследования [ править ]

Реплицированная модель расширена до компонентной объектной модели [ править ]

 Архитектурный проект распределенной операционной системы E1 [38]
 Распределенная операционная система Cronus. [39]
 Проектирование и разработка распределенной операционной системы MINIX. [40]

Сложность/доверие ответственности через принятие

Масштабирование и производительность в изоляционном ядре Denali. [41]

Многоядерные/многоядерные системы [ править ]

Многоядерность: новая архитектура ОС для масштабируемых многоядерных систем. [42]
Corey: операционная система для многих ядер. [43]
Almos: операционная система расширенного управления локальностью для многоядерных процессоров cc-NUMA. [44]

в условиях неоднородности Распределенная обработка экстремальной

Helios: гетерогенная многопроцессорная обработка со сателлитными ядрами. [45]

Эффективен и стабилен на разных уровнях сложности [ править ]

Тесселяция: пространственно-временное разделение в многоядерной клиентской ОС. [46]

См. также [ править ]

Ссылки [ править ]

  1. ^ Перейти обратно: а б Таненбаум, Эндрю С. (сентябрь 1993 г.). «Распределенные операционные системы года выпуска 1992 года. Что мы уже узнали?» . Распределенная системная инженерия . 1 (1): 3–10. Бибкод : 1993DSE.....1....3T . дои : 10.1088/0967-1846/1/1/001 .
  2. ^ Натт, Гэри Дж. (1992). Централизованные и распределенные операционные системы . Прентис Холл. ISBN  978-0-13-122326-4 .
  3. ^ Перейти обратно: а б с д Это ж Госцинский, Анджей (1991). Распределенные операционные системы: логическое проектирование . Паб Аддисон-Уэсли. компании ISBN  978-0-201-41704-3 .
  4. ^ Фортье, Пол Дж. (1986). Проектирование распределенных операционных систем: концепции и технологии . Интертекстовые публикации. ISBN  9780070216211 .
  5. ^ Хансен, Пер Бринч, изд. (2001). Классические операционные системы: от пакетной обработки к распределенным системам . Спрингер. ISBN  978-0-387-95113-3 .
  6. ^ Использование LOTOS для указания ядра распределенной операционной системы CHORUS Pecheur, C. 1992. Использование LOTOS для указания ядра распределенной операционной системы CHORUS. Вычислить. Коммун. 15, 2 (март 1992 г.), 93–102.
  7. ^ COOL: поддержка ядра для объектно-ориентированных сред Хаберт, С. и Моссери, Л. 1990. COOL: поддержка ядра для объектно-ориентированных сред. В материалах Европейской конференции по объектно-ориентированному программированию по системам, языкам и приложениям объектно-ориентированного программирования (Оттава, Канада). ООПСЛА/ЭКОП '90. ACM, Нью-Йорк, штат Нью-Йорк, 269–275.
  8. ^ Перейти обратно: а б с д Это Синха, Прадип Кумар (1997). Распределенные операционные системы: концепции и проектирование . IEEE Пресс. ISBN  978-0-7803-1119-0 .
  9. ^ Перейти обратно: а б с Чоу, Рэнди; Теодор Джонсон (1997). Распределенные операционные системы и алгоритмы . Эддисон Уэсли. ISBN  978-0-201-49838-7 .
  10. ^ Сураджбали Б., Коулсон Г., Гринвуд П. и Грейс П. 2007. Дополнение отражающего промежуточного программного обеспечения слоем поддержки аспектной ориентации. В материалах 6-го международного семинара по адаптивному и рефлексивному промежуточному программному обеспечению: проведенного на международной конференции по промежуточному программному обеспечению ACM/IFIP/USENIX (Ньюпорт-Бич, Калифорния, 26–30 ноября 2007 г.). АРМ '07. ACM, Нью-Йорк, штат Нью-Йорк, 1–6.
  11. ^ Лейнер, Алан Л. (апрель 1954 г.). «Системные характеристики для DYSEAC». Журнал АКМ . 1 (2): 57–81. дои : 10.1145/320772.320773 . S2CID   15381094 .
  12. ^ Перейти обратно: а б Форги, Джеймс В. (26–28 февраля 1957 г.). Система ввода-вывода Lincoln TX-2 . Западная объединенная компьютерная конференция: методы обеспечения надежности. Лос-Анджелес, Калифорния: Ассоциация вычислительной техники. стр. 156–160. дои : 10.1145/1455567.1455594 . ISBN  9781450378611 .
  13. ^ Перейти обратно: а б Сай Ли (4–6 декабря 1962 г.). Взаимодействующие ячейки, основа распределенного логического компьютера . Осенняя совместная компьютерная конференция. Филадельфия, Пенсильвания: Ассоциация вычислительной техники. стр. 130–136. дои : 10.1145/1461518.1461531 .
  14. ^ Дрейфус, Филипп (1958-05-08) [1958-05-06], написанный в Лос-Анджелесе, «Системный дизайн Gamma 60» (PDF) , 6–8 мая 1958 г Материалы Западной объединенной компьютерной конференции .: Контрасты в компьютерах , ACM, Нью-Йорк, Нью-Йорк, США, стр. 130–133, IRE-ACM-AIEE '58 (западный), заархивировано (PDF) из оригинала 03 апреля 2017 г. , получено 3 апреля 2017 г.
  15. ^ Лейнер, А.Л., Нотц, В.А., Смит, Дж.Л. и Вайнбергер, А. 1958. Организация сети компьютеров для соблюдения сроков. В статьях и дискуссиях, представленных на Восточной объединенной компьютерной конференции 9–13 декабря 1957 г.: Компьютеры с соблюдением сроков (Вашингтон, округ Колумбия, 9–13 декабря 1957 г.). IRE-ACM-AIEE '57
  16. ^ Лейнер, А.Л., Смит, Дж.Л., Нотц, В.А., и Вайнбергер, А. 1958. ПИЛОТ, мультикомпьютерная система NBS. В статьях и дискуссиях, представленных на Восточной объединенной компьютерной конференции 3–5 декабря 1958 г.: Современные компьютеры: цели, конструкции, приложения (Филадельфия, Пенсильвания, 3–05 декабря 1958 г.). AIEE-ACM-IRE '58 (Восточный). ACM, Нью-Йорк, штат Нью-Йорк, 71–75.
  17. ^ Бауэр, В.Ф. 1958. Компьютерный дизайн с точки зрения программиста. В статьях и дискуссиях, представленных на Восточной объединенной компьютерной конференции 3–5 декабря 1958 г.: Современные компьютеры: цели, конструкции, приложения (Филадельфия, Пенсильвания, 3–05 декабря 1958 г.). AIEE-ACM-IRE '58 (Восточный). ACM, Нью-Йорк, штат Нью-Йорк, 46–51.
  18. ^ Лейнер, А.Л., Нотц, В.А., Смит, Дж.Л., и Вайнбергер, А. 1959. ПИЛОТ — новая многокомпьютерная система. J. ACM 6, 3 (июль 1959 г.), 313–335.
  19. ^ Эстрин, Г. 1960. Организация компьютерных систем: компьютер с фиксированной и переменной структурой . В статьях, представленных на Западной совместной компьютерной конференции IRE-AIEE-ACM 3–5 мая 1960 г. (Сан-Франциско, Калифорния, 3–05 мая 1960 г.). IRE-AIEE-ACM '60 (вестерн). ACM, Нью-Йорк, штат Нью-Йорк, 33–40.
  20. ^ Мартин Х. Вейк, «Третий обзор отечественных электронных цифровых вычислительных систем», Отчет лабораторий баллистических исследований № 1115, стр. 234-5, Абердинский полигон, Мэриленд, март 1961 г.
  21. ^ Меллор-Крамми, Дж. М. и Скотт, М. Л. 1991. Алгоритмы масштабируемой синхронизации на мультипроцессорах с общей памятью . АКМ Транс. Вычислить. Сист. 9, 1 (февраль 1991 г.), 21–65.
  22. ^ Baker, M. G., Hartman, J. H., Kupfer, M. D., Shirriff, K. W., and Ousterhout, J. K. 1991. Measurements of a distributed file system. In Proceedings of the Thirteenth ACM Symposium on Operating Systems Principles (Pacific Grove, California, United States, October 13–16, 1991). SOSP '91. ACM, New York, NY, 198-212.
  23. ^ Ли, К. и Худак, П. 1989. Когерентность памяти в системах общей виртуальной памяти. АКМ Транс. Вычислить. Сист. 7, 4 (ноябрь 1989 г.), 321–359.
  24. ^ Гарсиа-Молина, Х. и Салем, К. 1987. Саги. В материалах международной конференции ACM SIGMOD 1987 г. по управлению данными (Сан-Франциско, Калифорния, США, 27–29 мая 1987 г.). У. Даял, Ред. СИГМОД '87. ACM, Нью-Йорк, штат Нью-Йорк, 249–259.
  25. ^ Харрис Т., Марлоу С., Пейтон-Джонс С. и Херлихи М. 2005. Составные транзакции с памятью . В материалах десятого симпозиума ACM SIGPLAN по принципам и практике параллельного программирования (Чикаго, Иллинойс, США, 15–17 июня 2005 г.). ППоПП '05. ACM, Нью-Йорк, Нью-Йорк, 48–60.
  26. ^ Херлихи, М. и Мосс, Дж. Э. 1993. Транзакционная память: архитектурная поддержка структур данных без блокировки . В материалах 20-го ежегодного международного симпозиума по компьютерной архитектуре (Сан-Диего, Калифорния, США, 16–19 мая 1993 г.). ИСКА '93. ACM, Нью-Йорк, штат Нью-Йорк, 289–300.
  27. ^ Херлихи М., Лучанко В., Мойр М. и Шерер В.Н. 2003. Программная транзакционная память для структур данных динамического размера . В материалах двадцать второго ежегодного симпозиума по принципам распределенных вычислений (Бостон, Массачусетс, 13–16 июля 2003 г.). ПОДК '03. ACM, Нью-Йорк, штат Нью-Йорк, 92–101.
  28. ^ Шавит, Н. и Туиту, Д. 1995. Программное обеспечение транзакционной памяти . В материалах четырнадцатого ежегодного симпозиума ACM по принципам распределенных вычислений (Оттава, Онтарио, Канада, 20–23 августа 1995 г.). ПОДК '95. ACM, Нью-Йорк, штат Нью-Йорк, 204–213.
  29. ^ Кубятович Дж., Биндел Д., Чен Ю., Червински С., Итон П., Гилс Д., Гуммади Р., Рея С., Уэзерспун Х., Уэллс К. и Чжао Б. 2000. OceanStore: архитектура постоянного хранилища глобального масштаба . В материалах девятой международной конференции по архитектурной поддержке языков программирования и операционных систем (Кембридж, Массачусетс, США). АСПЛОС-IX. ACM, Нью-Йорк, штат Нью-Йорк, 190–201.
  30. ^ Гиффорд, ДК, 1979. Взвешенное голосование за реплицированные данные . В материалах седьмого симпозиума ACM по принципам операционных систем (Пасифик Гроув, Калифорния, США, 10–12 декабря 1979 г.). СОСП '79. ACM, Нью-Йорк, штат Нью-Йорк, 150–162.
  31. ^ Дворк К., Линч Н. и Стокмейер Л. 1988. Консенсус при наличии частичной синхронности . J. ACM 35, 2 (апрель 1988 г.), 288–323.
  32. ^ Лампорт Л., Шостак Р. и Пиз М. 1982. Проблема византийских генералов . АКМ Транс. Программа. Ланг. Сист. 4, 3 (июль 1982 г.), 382–401.
  33. ^ Шлихтинг, Р.Д. и Шнайдер, Ф.Б. 1983. Отказоустойчивые процессоры: подход к проектированию отказоустойчивых вычислительных систем. АКМ Транс. Вычислить. Сист. 1, 3 (август 1983 г.), 222–238.
  34. ^ Чанди, К.М. и Лэмпорт, Л. 1985. Распределенные снимки: определение глобальных состояний распределенных систем. АКМ Транс. Вычислить. Сист. 3, 1 (февраль 1985 г.), 63–75.
  35. ^ Стром Р. и Йемини С. 1985. Оптимистическое восстановление в распределенных системах. АКМ Транс. Вычислить. Сист. 3, 3
  36. ^ Перейти обратно: а б с Галли, Дорин Л. (2000). Распределенные операционные системы: концепции и практика . Прентис Холл. ISBN  978-0-13-079843-5 .
  37. ^ Таненбаум, Эндрю С. (1995). Распределенные операционные системы . Прентис Холл. ISBN  978-0-13-219908-7 .
  38. ^ Л. Б. Рыжик, А. Ю. Бурцев. Архитектурный проект распределенной операционной системы dE1. Международный научно-технический журнал «Системные исследования и информационные технологии», октябрь 2004, Киев, Украина.
  39. ^ Винтер, С.Т. и Шанц, Р.Э. 1986. Распределенная операционная система Cronus. В материалах 2-го семинара по обеспечению работы распределенных систем (Амстердам, Нидерланды, 8–10 сентября 1986 г.). EW 2. ACM, Нью-Йорк, Нью-Йорк, 1–3.
  40. ^ Рамеш, К.С. 1988. Проектирование и разработка распределенной операционной системы MINIX. В материалах шестнадцатой ежегодной конференции ACM по информатике 1988 года (Атланта, Джорджия, США). ЦСК '88. ACM, Нью-Йорк, штат Нью-Йорк, 685.
  41. ^ Уитакер А., Шоу М. и Гриббл С.Д. 2002. В материалах 5-го симпозиума по проектированию и внедрению операционных систем.
  42. ^ Бауманн А., Бархам П., Даганд П., Харрис Т., Айзекс Р., Питер С., Роско Т., Шюпбах А. и Сингхания А. 2009. В материалах 22-го симпозиума ACM SIGOPS по принципам операционных систем (Биг-Скай, Монтана, США, 11–14 октября 2009 г.). СОСП '09.
  43. ^ С. Бойд-Викайзер, Х. Чен, Р. Чен, Ю. Мао, Ф. Кашук, Р. Моррис, А. Пестерев, Л. Штайн, М. Ву, Ю. Дай, Ю. Чжан и З. Чжан. Материалы симпозиума 2008 г. по проектированию и внедрению операционных систем (OSDI), декабрь 2008 г.
  44. ^ Алмалесс, Г. и Вайсбюрт, Ф. 2011. В материалах 5-го национального семинара SoC-SIP ГДР, Лион, Франция, 2011.
  45. ^ Найтингейл, Э.Б., Ходсон, О., Макилрой, Р., Хаублицель, К., и Хант, Г. 2009. В материалах 22-го симпозиума ACM SIGOPS по принципам операционных систем (Биг-Скай, Монтана, США, 11 октября – 14, 2009). СОСП '09.
  46. ^ Роуз Лю, Кевин Клюс и Сара Берд, Калифорнийский университет в Беркли; Стивен Хофмейр, Национальная лаборатория Лоуренса Беркли; Крсте Асанович и Джон Кубятович, Калифорнийский университет в Беркли. HotPar09.

Дальнейшее чтение [ править ]

Внешние ссылки [ править ]


Arc.Ask3.Ru: конец оригинального документа.
Arc.Ask3.Ru
Номер скриншота №: 931FA61A7F3358E98F2D59FF4855A690__1713233400
URL1:https://en.wikipedia.org/wiki/Distributed_operating_system
Заголовок, (Title) документа по адресу, URL1:
Distributed operating system - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть, любые претензии не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, денежную единицу можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)