Interested Article - KSM

KSM ( англ. kernel same-page merging , иногда трактуется как kernel shared memory ) — технология ядра Linux , которая позволяет ядру объединять одинаковые страницы памяти между различными процессами или виртуальными гостевыми системами в одну для совместного использования; реализация дедупликации данных для оперативной памяти. Технология предусматривает сканирование памяти в целях поиска дубликатов страниц, каждая пара дубликатов объединяется в одну страницу, помечаемую как подлежащую копированию при записи , таким образом ядро будет автоматически разделять страницы памяти, как только один процесс изменит данные .

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

Наиболее широко применяется в системах виртуализации на базе ядра Linux, изначально — в KVM , впоследствии поддержана в Xen и Virtuozzo (в гипервизорах VMware , также построенных на базе ядра Linux, используется собственная технология дедупликации страниц оперативной памяти). Вместе с техниками вытеснения неиспользуемой памяти, подкачки на стороне гипервизора и непосредственного сжатия , KSM обеспечивает системам виртуализации возможность ( англ. ); в условиях достаточно однородных экземпляров гостевых операционных систем возможен значительный эффект, в частности, экспериментальная реализация KSM от Red Hat показала, что 52 виртуальных экземпляра Windows XP с выделенными 1 ГБ памяти, могут работать на компьютере с 16 ГБ оперативной памяти .

Также установлена применимость и эффективность в определённых случаях вне рамок задач виртуализации .

Примечания

  1. . lwn.net . kernel.org. Дата обращения: 21 августа 2010. Архивировано из 16 сентября 2012 года.
  2. . IBM DeveloperWorks . IBM. Дата обращения: 21 августа 2010. Архивировано из 16 сентября 2012 года.
  3. . kernel.org . kernel.org. Дата обращения: 21 августа 2010. Архивировано из 16 сентября 2012 года.
  4. . kernelnewbies . kernelnewbies. Дата обращения: 21 августа 2010. Архивировано из 16 сентября 2012 года.

Ссылки

Источник —

Same as KSM