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

редактировать
Операционная система, предназначенная для работы в нескольких системах в сети

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

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

Содержание
  • 1 Описание
  • 2 Обзор
    • 2.1 Ядро
    • 2.2 Управление системой
    • 2.3 Совместная работа в качестве операционной системы
    • 2.4 Цена сложности
  • 3 История
    • 3.1 1950-е годы
    • 3.2 DYSEAC
    • 3.3 Lincoln TX-2
    • 3.4 Взаимодействующие ячейки
    • 3.5 Базовая работа
      • 3.5.1 Когерентная абстракция памяти
      • 3.5.2 Абстракция файловой системы
      • 3.5.3 Абстракция транзакции
      • 3.5.4 Абстракция сохраняемости
      • 3.5.5 Абстракция координатора
      • 3.5.6 Абстракция надежности
  • 4 Модели распределенных вычислений
    • 4.1 Три основных распределения
      • 4.1.1 Организация
      • 4.1.2 Соединение
      • 4.1.3 Управление
  • 5 Соображения по конструкции
    • 5.1 Прозрачность
    • 5.2 Межпроцессное взаимодействие
    • 5.3 Управление процессами
    • 5.4 Управление ресурсами
    • 5.5 Надежность
    • 5.6 Доступность
    • 5.7 Производительность
    • 5.8 Синхронизация
    • 5.9 Гибкость
  • 6 Исследования
    • 6.1 Реплицируемая модель расширена до объектной модели компонента
    • 6.2 Сложность / доверие через h принятая ответственность
    • 6.3 Многоядерные / многоядерные системы
    • 6.4 Распределенная обработка в экстремальных условиях неоднородности
    • 6.5 Эффективность и стабильность на нескольких уровнях сложности
  • 7 См. также
  • 8 Ссылки
  • 9 Внешние ссылки
Описание
Структура монолитного ядра, микроядра и гибридных операционных систем на основе ядра

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

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

Обзор

Ядро

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

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

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

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

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

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

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

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

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

Цена сложности

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

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

История

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

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

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

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

1950-е годы

DYSEAC

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

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

— АЛАН Л. ЛЕЙНЕР, Системные спецификации для DYSEAC

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

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

— АЛАН Л. ЛАЙНЕР, Системные спецификации для DYSEAC

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

Lincoln TX-2

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

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

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

Intercommunicating Cells

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

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

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

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

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

— Чун-Йоль (CY) Ли, Межкоммуникационные ячейки, основа для распределенного логического компьютера

Основополагающая работа

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

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

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

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

Абстракция транзакций

Транзакции. Sagas

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

Абстракция сохраняемости

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

Координатор абстракции

Вес ed голосование за реплицированные данные. Консенсус при наличии частичной синхронизации

Абстракция надежности

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

Восстанавливаемость. Распределенные моментальные снимки: определение глобального состояния распределенных систем. Оптимистичное восстановление в распределенных системах

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

Три основных распределения

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

Организация

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

Соединение

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

Управление

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

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

Соображения дизайна

Прозрачность

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

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

  • Прозрачность местоположения - Прозрачность местоположения включает два различных аспекта прозрачности, прозрачности наименования и мобильности пользователя. Прозрачность именования требует, чтобы ничто в физических или логических ссылках на какой-либо системный объект не отображало какое-либо указание на местонахождение объекта или его локальную или удаленную связь с пользователем или приложением. Мобильность пользователя требует согласованного обращения к системным объектам, независимо от того, из какого местоположения в системе исходит ссылка.
  • Прозрачность доступа - Локальные и удаленные системные объекты должны оставаться неразличимыми при просмотре через пользовательский интерфейс. Распределенная операционная система поддерживает это восприятие посредством раскрытия единого механизма доступа для системного объекта, независимо от того, является ли этот объект локальным или удаленным для пользователя. Прозрачность диктует, что любые различия в методах доступа к любому конкретному объекту системы - локальному или удаленному - должны быть невидимы для пользователя и не обнаруживаться пользователем.
  • Прозрачность миграции - ресурсы и действия переносятся из одного элемента в другой под контролем исключительно системой и без ведома или действий пользователя / приложения.
  • Прозрачность репликации - процесс или факт того, что ресурс был дублирован в другом элементе, происходит под контролем системы и без ведома пользователя / приложения или вмешательства.
  • Прозрачность параллелизма - Пользователи / приложения не знают и не подвержены влиянию присутствия / действий других пользователей.
  • Прозрачность отказов - система отвечает за обнаружение и устранение сбоев системы. Никаких знаний / действий пользователя не требуется, кроме ожидания, пока система решит проблему.
  • Прозрачность производительности - система отвечает за обнаружение и устранение локальных или глобальных недостатков производительности. Обратите внимание, что системные политики могут предпочесть одних пользователей / классы / задачи другим пользователям. Никаких пользовательских знаний или взаимодействия.
  • Прозрачность размера / масштаба - система отвечает за управление своим географическим охватом, количеством узлов, уровнем возможностей узла без каких-либо необходимых знаний или взаимодействия со стороны пользователя.
  • Прозрачность редакции - система несет ответственность за обновления, изменения и изменения в инфраструктуре системы без ведома пользователя или действий.
  • Прозрачность управления - система отвечает за предоставление всей системной информации, констант, свойств, настроек конфигурации и т. д. в единообразном виде, коннотации и обозначения для всех пользователей и приложений.
  • Прозрачность данных - система отвечает за предоставление данных приложениям без ведома пользователя или действий, связанных с тем, где система их хранит.
  • Прозрачность параллелизма - Система отвечает за использование любой возможности распараллеливать выполнение задач без ведома пользователя или взаимодействия. Возможно, это самый сложный аспект прозрачности, который Таненбаум назвал «Святым Граалем» для разработчиков распределенных систем.

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

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

Управление процессами

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

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

Управление ресурсами

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

Надежность

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

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

Доступность

Доступность - это промежуток времени, в течение которого система может отвечать на запросы.

Производительность

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

Синхронизация

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

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

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

Гибкость

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

Исследования

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

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

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

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

Многоядерные / многоядерные системы

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

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

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

Эффективность и стабильность на нескольких уровнях сложности

Тесселяция: пространственно-временное разделение в клиентской ОС Manycore.
См. Также
Ссылки
Внешние ссылки

.

Последняя правка сделана 2021-05-17 09:16:16
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте