wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Virtual memory

profile
Abhijit Rajpurohit
Jul 11, 2023
0 Likes
0 Discussions
99 Reads

Virtual memory is a way of representing your memory that's abstracted from the physical memory on your machine. It makes use of both your RAM and your storage space, whether that's on a traditional hard drive or an SSD. In Linux, this is done at the kernel and hardware levels².

Linux supports virtual memory, that is, using a disk as an extension of RAM so that the effective size of usable memory grows correspondingly. The kernel will write the contents of a currently unused block of memory to the hard disk so that the memory can be used for another purpose¹.

Virtual memory takes advantage of the fact that not all of the memory that's being used in theory is being used all of the time. Programs in memory are broken down into pages and the parts that the kernel deems as unnecessary are "swapped out," or moved to the hard drive. When they're needed, they can be "swapped in," or brought back into RAM².

The space used for virtual memory on a drive is known as "backing store," or "swap space." In the Windows world, it's usually implemented as a file, known as a "swap file." It's also possible to do this in Linux, but it's much more common to use a dedicated disk partition².

The upshot of virtual memory is that it's possible to run large programs by using more memory than the physical RAM in your machine. Virtual memory also allows developers to create applications without having to know how a computer's memory is organized².

The main downside historically with virtual memory has been that hard drives have been slower than RAM. If a machine doesn't have enough RAM, the system can keep swapping pages in and out endlessly, a process known as "thrashing." This is less of an issue on modern PCs with more RAM and faster SSDs displacing mechanical hard drives, but it's still something to be aware of


Comments ()


Sign in

Read Next

Operating System Objectives and Functions

Blog banner

ahh wait a min

Blog banner

Understanding the 'Ambiverts'

Blog banner

INTRODUCTION

Blog banner

Chicken Dum Biryani

Blog banner

What is Data, Information and Knowledge?

Blog banner

MEMORY MANAGEMENT FILE

Blog banner

Deadlock

Blog banner

Introduction to Virtual Memory - 080

Blog banner

Disk Management

Blog banner

Fashion design

Blog banner

Kernel in Operating System

Blog banner

Video games

Blog banner

Raid

Blog banner

A-B-C of Networking: Part-1 (Basics)

Blog banner

Data Visualization

Blog banner

Child labour

Blog banner

Title: Network Sniffing Techniques: Uncovering the Secrets of Data Transfer

Blog banner

Embedded Operating System

Blog banner

The functions of operating system

Blog banner

Maharashtrian culture: Tradition, Art, Food

Blog banner

What is thread and multithreading ?

Blog banner

Importance of education

Blog banner

Hacking Mobile Platforms

Blog banner

Threats To Computer System

Blog banner

What is Virtual Memory

Blog banner

S-Tool : Steganography

Blog banner

Uniprocessor scheduling

Blog banner

Music is life

Blog banner

Processing Crime and Incident Scenes

Blog banner

OS Assignment 1

Blog banner

Full Disk Encryption on Digital Forensics

Blog banner

DATA VAULT

Blog banner

Sage business cloud accounting

Blog banner

Health and fitness

Blog banner

10 Interesting Facts about Attack on Titan

Blog banner

Introduction to Solidity Programming for Blockchain Development

Blog banner

A MODERN OPERATING SYSTEM

Blog banner

Hosting basics

Blog banner

To travel is to live

Blog banner

Top 3 Places To Stay In Vienna

Blog banner

Cross site scripting Attack

Blog banner