wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Virtual Memory

profile
Rishi Sheth
Jul 11, 2023
1 Like
0 Discussions
78 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

Operating System

Blog banner

Self-love: Being the reason of your own smile

Blog banner

A-B-C of Networking: Part-3 (Topology [Bus & Star])

Blog banner

Points to consider if you're planning to visit Florida in 2026

Blog banner

Personalized Movie Recommendations with Data Science

Blog banner

Docker Framework

Blog banner

Distributed Denial of Service (DDoS) attack

Blog banner

Data Lake

Blog banner

10 Unsolved Mysteries all over the world

Blog banner

The Role of Cyber Forensics in Addressing Cyber security Challenges in Smart Cities

Blog banner

differentiate thinking humanly and rationally

Blog banner

Dos (Denial of service) Attack

Blog banner

"Geographic Information Systems (GIS) and its Applications in Urban Planning"

Blog banner

Privacy LAWs in IT

Blog banner

Street foods

Blog banner

Direct memory access (DMA)

Blog banner

How to use open SSL for web server - browser communication

Blog banner

Virtual memory

Blog banner

FILE SHARING

Blog banner

Types of threads

Blog banner

Secure Hypertext transfer protocol

Blog banner

Booting Process In Operating System

Blog banner

Email Privacy

Blog banner

What is Spyware? and examples of them.

Blog banner

Critical success factors

Blog banner

Subnet Masking

Blog banner

10 Interesting facts you should know!!!

Blog banner

Why Businesses Are Investing More in Automation than Advertising?

Blog banner

Im Photographer

Blog banner

INTERNET SECURITY

Blog banner

Instagram

Blog banner

Virtual Machine

Blog banner

Pandas Matrix Applications

Blog banner

Data Science in Mental Health Prediction

Blog banner

FRIENDSHIP

Blog banner

Amazon

Blog banner

How to use GIT & GITHUB

Blog banner

Thumb Sucking: When It’s Normal and When It Becomes a Dental Problem

Blog banner

Understanding Regression Analysis

Blog banner

Segmentation and paging concept

Blog banner

Memory input output management

Blog banner

Embracing the power of Modern Machine UNIX

Blog banner