请输入您要查询的百科知识:

 

词条 Kernel same-page merging
释义

  1. Security risks

  2. References

  3. External links

{{Use mdy dates|date=August 2015}}

In computing, kernel same-page merging (abbreviated as KSM, and also known as kernel shared memory and memory merging) is a kernel feature that makes it possible for a hypervisor system to share identical memory pages amongst different processes or virtualized guests. While not directly linked, Kernel-based Virtual Machine (KVM) can use KSM to merge memory pages occupied by virtual machines.

KSM performs the memory sharing by scanning through the main memory and finding duplicate pages. Each detected duplicate pair is then merged into a single page, and mapped into both original locations. The page is also marked as "copy-on-write" (COW), so the kernel will automatically separate them again should one process modify its data.[1]

KSM was originally intended to run more virtual machines on one host by sharing memory between processes as well as virtual machines. Upon its implementation, different users found KSM to also be useful for non-virtualized environments in which memory is at a premium.[1][2] An experimental implementation of KSM by Red Hat found that 52 virtual instances of Windows XP with 1 GB of memory, could run on a host computer that had only 16 GB of RAM.[3]

KSM was merged into the Linux kernel mainline in kernel version 2.6.32, which was released on December 3, 2009.[1][3] To be effective, the operating system kernel must find identical memory pages held by different processes. The kernel also needs to decide whether the pages are going to update infrequently enough that the merging would be an efficient use of processor resources.[2] A concern is that although memory usage is reduced, CPU usage is increased, thus negating potential increases in performance.[4]

Security risks

Security is also a concern:

  • Allows circumvention of address space layout randomization (ASLR)[5][6]
  • Exposes information via timing attacks[7]
  • Allows contamination of cryptographic resources in other virtualized guests via the memory row hammer attack[8]

References

1. ^{{Cite web | url = http://www.ibm.com/developerworks/linux/library/l-kernel-shared-memory/index.html | publisher = IBM | accessdate = 2010-08-21 | title = Anatomy of Linux Kernel Shared Memory| work = IBM DeveloperWorks}}
2. ^{{Cite web | url = https://www.kernel.org/doc/ols/2009/ols2009-pages-19-28.pdf | accessdate = 2010-08-21 | title = Increasing memory density by using KSM | website = kernel.org}}
3. ^{{cite web | url = http://kernelnewbies.org/Linux_2_6_32#head-d3f32e41df508090810388a57efce73f52660ccb | title = Linux kernel 2.6.32, Section 1.3. Kernel Samepage Merging (memory deduplication) | date = 2009-12-03 | accessdate = 2015-08-12 | website = kernelnewbies.org}}
4. ^{{Cite web| url= https://lwn.net/Articles/330589/ | publisher= kernel.org | accessdate= 2010-08-21 | title= KSM tries again| work= lwn.net }}
5. ^{{Cite web | url = http://staff.aist.go.jp/k.suzaki/EuroSec2011-suzaki.pdf | title = Memory Deduplication as a Threat to the Guest OS | authors = Kuniyasu Suzaki, Kengo Iijima, Toshiki Yagi, Cyrille Artho}}
6. ^{{cite web | url = https://www.usenix.org/system/files/conference/woot15/woot15-paper-barresi.pdf | title = CAIN: Silently Breaking ASLR in the Cloud | author1 = Antonio Barresi | author2 = Kaveh Razavi | author3 = Mathias Payer | author4 = Thomas R. Gross | date = August 2015 | accessdate = 2015-08-12 | publisher = USENIX | format = PDF}}
7. ^{{cite web|author1=Red Hat|last2=Polyakov|first2=Andy|title=It's all a question of time - AES timing attacks on OpenSSL|url=https://access.redhat.com/blogs/766093/posts/1976303|website=access.redhat.com|publisher=Red Hat|accessdate=4 August 2016}}
8. ^{{cite web|title=New FFS Rowhammer Attack Hijacks Linux VMs|url=http://news.softpedia.com/news/new-ffs-rowhammer-attack-targets-linux-vm-setups-507290.shtml|accessdate=17 August 2016}}

External links

  • [https://www.kernel.org/doc/Documentation/vm/ksm.txt Linux kernel documentation]
  • [https://web.archive.org/web/20140702045709/http://linux-kvm.com/content/using-ksm-kernel-samepage-merging-kvm Using KSM] (archived from the original on July 2, 2014)
  • [https://fedoraproject.org/wiki/Features/KSM Fedora KSM page]
  • Kernel-based virtual machine site - KSM
{{Linux kernel}}{{Linux}}{{DEFAULTSORT:Kernel Samepage Merging}}

2 : Computer memory|Linux kernel features

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/11/16 5:18:55