Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Virtual memory
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Computer memory management technique}} {{About|the computer memory management technique| the technique of pooling multiple storage devices|Storage virtualization| the TBN game show|Virtual Memory (game show)}} {{distinguish|VRAM}} {{Use dmy dates|date=January 2023}} [[File:Virtual memory.svg|thumb|250px|Virtual memory combines active [[random-access memory|RAM]] and inactive memory on [[Direct-access storage device|DASD]]{{efn|Early systems used [[Drum memory|drums]]; contemporary systems use [[Disk storage|disks]] or [[Solid-state drive|solid state memory]]}} to form a large range of contiguous addresses.]] In [[computing]], '''virtual memory''', or '''virtual storage''',{{efn|IBM uses the term '''virtual storage''' on mainframe operating systems. This usage runs from [[TSS (operating system)|TSS]]<ref>{{cite book | title = System/360 Model 67 Time Sharing System Preliminary Technical Summary | id = C20-1647-0 | section = SYSTEM COMPONENTS: Dynamic Relocation | page = 21 | year = 1966 | url = http://bitsavers.org/pdf/ibm/360/tss/C20-1647-0_360-67_TSS_Tech.pdf | section-url = http://bitsavers.org/pdf/ibm/360/tss/C20-1647-0_360-67_TSS_Tech.pdf#page=21 | publisher = IBM }} </ref> on the [[IBM System/360 Model 67|360/67]] through [[z/OS]]<ref>{{cite book | title = z/OS Version 2 Release 4 z/OS Introduction and Release Guide | id = GA32-0887-40 | date = 22 September 2020 | section = BCP (Base Control Program) | section-url = https://www-01.ibm.com/servers/resourcelink/svc00100.nsf/pages/zOSV2R4ga320887/$file/e0za100_v2r4.pdf#page=24 | page = 3 | url = https://www-01.ibm.com/servers/resourcelink/svc00100.nsf/pages/zOSV2R4ga320887/$file/e0za100_v2r4.pdf | publisher = IBM }} </ref> on [[z/Architecture]].}} is a [[Memory management (operating systems)|memory management]] technique that provides an "idealized abstraction of the storage resources that are actually available on a given machine"<ref>{{cite book|last1=Bhattacharjee|first1=Abhishek|last2=Lustig|first2=Daniel|title=Architectural and Operating System Support for Virtual Memory|date=2017|publisher=Morgan & Claypool Publishers|isbn=9781627056021|page=1|url=https://books.google.com/books?id=roM4DwAAQBAJ|access-date=16 October 2017}}</ref> which "creates the illusion to users of a very large (main) memory".<ref>{{cite book|last1=Haldar|first1=Sibsankar|last2=Aravind|first2=Alex Alagarsamy|title=Operating Systems|date=2010|publisher=Pearson Education India|isbn=978-8131730225|page=269|url=https://books.google.com/books?id=orZ0CLxEMXEC&pg=PA269|access-date=16 October 2017}}</ref> The computer's [[operating system]], using a combination of hardware and software, maps [[memory address]]es used by a program, called ''[[Virtual address space|virtual addresses]]'', into ''physical addresses'' in [[computer memory]]. [[Main storage#Primary storage|Main storage]], as seen by a process or task, appears as a contiguous [[address space]] or collection of contiguous [[Memory segmentation|segments]]. The operating system manages [[virtual address space]]s and the assignment of real memory to virtual memory.<ref>{{Cite journal |last1=Zhou |first1=Xiangrong |last2=Petrov |first2=Peter |date=1 December 2008 |title=Direct address translation for virtual memory in energy-efficient embedded systems |url=https://dl.acm.org/doi/10.1145/1457246.1457251 |journal=ACM Transactions on Embedded Computing Systems |language=en |volume=8 |issue=1 |pages=1β31 |doi=10.1145/1457246.1457251 |s2cid=18156695 |issn=1539-9087|url-access=subscription }}</ref> Address translation hardware in the CPU, often referred to as a [[memory management unit]] (MMU), automatically translates virtual addresses to physical addresses. Software within the operating system may extend these capabilities, utilizing, e.g., [[disk storage]], to provide a virtual address space that can exceed the capacity of real memory and thus reference more memory than is physically present in the computer. The primary benefits of virtual memory include freeing applications from having to manage a shared memory space, ability to share memory used by [[Library (computing)|libraries]] between processes, increased security due to memory isolation, and being able to conceptually use more memory than might be physically available, using the technique of [[paging]] or segmentation.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)