wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Virtual Memory

profile
Rishi Sheth
Jul 11, 2023
1 Like
0 Discussions
77 Reads

A virtual memory is a fundamental concept in operating systems that facilitates the efficient management of memory resources. Utilizing a combination of RAM and disk storage, it creates the illusion that there is more memory available than is actually available.

Each process in a virtual memory system has its own virtual address space, which is divided into pages. Page memory is a smaller unit of memory that can be loaded into RAM or swapped out to disk as needed. Virtual memory systems translate virtual addresses into physical addresses when a process references a memory location, allowing the process to access data corresponding to the virtual address.

When a program or process is running, it uses virtual memory addresses to access data and instructions. The operating system intercepts these addresses and checks the page table to determine if the corresponding page is in physical memory or on disk. If the page is in memory, the operating system translates the virtual address to the corresponding physical address and allows the process to access the data. This process is transparent to the running program.If a required page is not present in physical memory, it results in a page fault. The operating system then selects a page to evict from memory (if all page frames are occupied) and brings in the required page from disk. This swapping of pages between disk and memory is known as paging.

It has several advantages, including the ability to increase memory capacity for processes, the ability to protect processes from one another, and the ability to allocate memory more efficiently. In spite of limited physical memory, it is able to support larger programs and multiple processes concurrently.

In addition, virtual memory facilitates memory management techniques such as demand paging, which loads pages into memory only when they are accessed, and memory sharing between processes. Furthermore, it provides mechanisms for handling memory exceptions, such as page faults, when a required page is not present in RAM.

Overall, virtual memory plays a significant role in modern operating systems by providing an abstraction layer that simplifies memory management and enhances the efficiency and flexibility of the system.


Comments ()


Sign in

Read Next

Kernel in Operating System

Blog banner

Understanding - Proof of Work!

Blog banner

Google classroom

Blog banner

(Input/Output) in os

Blog banner

Security issues

Blog banner

Memory Management

Blog banner

PROCESS STATES OF OPERATING SYSTEM

Blog banner

My favourite food

Blog banner

A small world of Sockets

Blog banner

The Future of Web Development in 2026: Trends Every Business Must Know

Blog banner

Linux 94

Blog banner

Types of Threads

Blog banner

How To Invest in Indian Stock Market For Beginners. ~ Tutorial 2 (NSDL And CSDL) Continued...

Blog banner

How Puppet Shows and Role Play Teach Empathy to Preschoolers

Blog banner

What is Spyware? and examples of them.

Blog banner

MAJOR ACHIEVEMENTS OF OS

Blog banner

From Model Mistakes to Metrics

Blog banner

Service Design Principles

Blog banner

Balance

Blog banner

My Favorite Country

Blog banner

RAID

Blog banner

Discover The Top 3 Places To Stay in London

Blog banner

Decrypting Cryptocurrency: Tracing Transactions in Cyber Investigations

Blog banner

Docker Framework

Blog banner

Health and fitness

Blog banner

Impact of social media on the human life

Blog banner

Digital Forensics Challenges and Tools

Blog banner

Ethical Hacking

Blog banner

Security Issues and Countermeasures

Blog banner

Revolutionary AI Tool: ChatGPT

Blog banner

Direct Memory Access

Blog banner

Place to visit in pune

Blog banner

Deadlock in operating system

Blog banner

The Memory Hierarchy

Blog banner

Virtual Machine

Blog banner

Software Piracy & Online Data Protection in Digital World

Blog banner

I/O Management and Disk Scheduling

Blog banner

RACI model in IT services

Blog banner

INTERNET

Blog banner

Review on Cyber Forensics and its Analysis Tools

Blog banner

Worms, viruses and Bots

Blog banner

Uniprocessor Scheduling

Blog banner