Виртуализация памяти

Термин из области компьютерных наук

В компьютерной науке виртуализация памяти отделяет ресурсы энергозависимой памяти с произвольным доступом (RAM) от отдельных систем в центре обработки данных, а затем объединяет эти ресурсы в виртуализированный пул памяти, доступный любому компьютеру в кластере. [ необходима цитата ] К пулу памяти обращается операционная система или приложения, работающие поверх операционной системы. Распределенный пул памяти затем может использоваться как высокоскоростной кэш, уровень обмена сообщениями или большой ресурс общей памяти для приложения ЦП или ГП.

Описание

Виртуализация памяти позволяет сетевым и, следовательно, распределенным серверам совместно использовать пул памяти для преодоления ограничений физической памяти, что является распространенным узким местом в производительности программного обеспечения. [ требуется ссылка ] Благодаря этой возможности, интегрированной в сеть, приложения могут использовать очень большой объем памяти для улучшения общей производительности, использования системы, повышения эффективности использования памяти и включения новых вариантов использования. Программное обеспечение на узлах пула памяти (серверах) позволяет узлам подключаться к пулу памяти для предоставления памяти, а также хранения и извлечения данных. Управляющее программное обеспечение и технологии избыточного выделения памяти управляют общей памятью, политиками вставки, вытеснения и предоставления данных, назначением данных участвующим узлам и обрабатывают запросы от клиентских узлов. Доступ к пулу памяти может осуществляться на уровне приложения или на уровне операционной системы. На уровне приложения доступ к пулу осуществляется через API или как к сетевой файловой системе для создания высокоскоростного кэша общей памяти. На уровне операционной системы кэш страниц может использовать пул как очень большой ресурс памяти, который намного быстрее локального или сетевого хранилища.

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

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

Продукция

  • Платформа виртуализации памяти RNA Networks — пул памяти с низкой задержкой, реализованный как общий кэш и решение для обмена сообщениями с низкой задержкой.
  • ScaleMP — платформа для объединения ресурсов нескольких компьютеров с целью создания единого вычислительного экземпляра.
  • Wombat Data Fabric – инфраструктура обмена сообщениями на основе памяти для предоставления рыночных данных в сфере финансовых услуг.
  • Oracle Coherence — это продукт Oracle для работы с сеткой данных в оперативной памяти на базе Java.
  • AppFabric Caching Service — это распределенная платформа кэширования для кэшей в памяти, распределенных по нескольким системам, разработанная корпорацией Microsoft .
  • IBM Websphere extremeScale — это распределенный кэш на базе Java, очень похожий на Oracle Coherence.
  • GigaSpaces XAP — это программная платформа вычислений в оперативной памяти на базе Java, подобная Oracle Coherence и VMware Gemfire.

Реализации

Интеграция на уровне приложений

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

Кластер, реализующий виртуализацию памяти на уровне приложения. Участники 1...n вносят память в пул. Приложения считывают и записывают данные в пул с помощью API Java или C или API файловой системы.

Интеграция на уровне операционной системы

В этом случае операционная система подключается к пулу памяти и делает объединенную память доступной для приложений.

Кластер, реализующий виртуализацию памяти. Участники 1...n вносят память в пул. Операционная система подключается к пулу памяти через систему кэширования страниц . Приложения потребляют объединенную память через операционную систему.

Фон

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

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

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

Смотрите также

Ссылки

  • Олег Гольдшмидт, Виртуализация: Современные операционные системы
  • «Стартап RNA Networks виртуализирует память на нескольких серверах». InformationWeek . 13 февраля 2009 г. Получено 24 марта 2009 г.
  • "Пять тенденций виртуализации, за которыми стоит следить". Computerworld . 3 февраля 2009 г. Архивировано из оригинала 16 марта 2009 г. Получено 24 марта 2009 г.
  • «Сети РНК и виртуализация памяти». ZDNet . 2 февраля 2009 г. Архивировано из оригинала 14 февраля 2009 г. Получено 24 марта 2009 г.
  • Кузнецки, Дэн (28 января 2007 г.). «Сортировка различных уровней виртуализации». ZDNet . Архивировано из оригинала 3 июля 2007 г. . Получено 24 марта 2009 г. .
Взято с "https://en.wikipedia.org/w/index.php?title=Виртуализация_памяти&oldid=1235076519"