wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Introduction to Virtual Memory - 080

profile
Meet Darji
Aug 15, 2024
0 Likes
0 Discussions
124 Reads

What is Virtual Memory? Virtual memory is a memory management technique used by operating systems to provide an "illusion" of a large and contiguous memory space, even when the physical memory (RAM) is limited. It allows a computer to run larger applications or multiple applications simultaneously without running out of memory.

Why Do We Need Virtual Memory?

  • Limited Physical Memory: Computers have a finite amount of RAM. Virtual memory allows systems to overcome this limitation by using disk space as an extension of RAM.
  • Process Isolation: Virtual memory ensures that each process runs in its own memory space, providing protection and isolation. This prevents one process from interfering with another's memory, enhancing system stability and security.
  • Efficient Memory Usage: It allows systems to load only the necessary parts of a program into RAM, keeping the less frequently used parts on disk. This optimizes the usage of available memory.

How Does Virtual Memory Work?

  • Address Translation: Virtual memory involves translating virtual addresses (used by programs) into physical addresses (used by hardware). This is managed by the Memory Management Unit (MMU) within the CPU.
  • Paging: Virtual memory is typically implemented using a technique called paging. The memory is divided into fixed-size blocks called pages. The virtual address space of a process is divided into pages, which can be mapped to any location in physical memory or stored on disk.
  • Virtual Pages: These are the blocks of virtual memory. They do not need to be contiguous.
  • Page Frames: These are the blocks of physical memory (RAM) that correspond to virtual pages.
  • Page Tables: A page table is maintained for each process, mapping virtual pages to physical page frames. When a program accesses memory, the MMU uses the page table to translate the virtual address to a physical address.

Basic Concepts:

  • Page Fault: A page fault occurs when a process tries to access a page that is not currently in physical memory (RAM). The operating system must then load the page from disk into RAM, which can cause a delay.
  • Swap Space: This is a portion of the disk allocated for storing pages that are not currently in physical memory. It acts as an extension of RAM.



Comments ()


Sign in

Read Next

A Deep Dive

Blog banner

The Evolution of Operating Systems

Blog banner

Business Engineering

Blog banner

Puri Jagannath temple

Blog banner

Types of Threads

Blog banner

OPERATING SYSTEM

Blog banner

"Mahakali cave"

Blog banner

Decision Tree: A Diagram Model

Blog banner

TEAMWORK

Blog banner

How to tie a Tie

Blog banner

BLOCKCHAIN MACHANISM

Blog banner

Apache Spark :- Powerful Data Processing Tool

Blog banner

Sarasota Polo Club, Myakka City — A Luxury Day Trip from Oak Tree Hotel, Arcadia

Blog banner

Senseless Teeths

Blog banner

Race Condition in Operating Theatre

Blog banner

Kernel Memory Allocation In Linux.

Blog banner

CONCURRENCY

Blog banner

What is a Dumpster Diving Attack?

Blog banner

Toothache Causes: Common Tooth Pain Reasons & When to See a Dentist

Blog banner

How Does SSO Works

Blog banner

note taker app

Blog banner

10 Amazing facts about Tokyo Ghoul

Blog banner

Understanding the 'Ambiverts'

Blog banner

Evolution of Operating system

Blog banner

Worms, viruses and Bots

Blog banner

Place to visit in pune

Blog banner

NodeJs

Blog banner

What makes Nugget RC Racing Florida’s Most Exciting Racing Events?

Blog banner

Mobile Security

Blog banner

MEMORY MANAGEMENT REQUIREMENT

Blog banner

Why White Bedding Has Become a Hotel Industry Standard?

Blog banner

Meal Maharaj — 3 CP, 5 CP, 8 CP. Same Love, Different Portions

Blog banner

My First Dream Bike

Blog banner

Device driver

Blog banner

The art of being alone

Blog banner

Stephen Hawking : A Remarkable Physicist

Blog banner

PERSONALITY DEVELOPMENT

Blog banner

Big Data Architecture

Blog banner

Modern Operating System - Suren Kotian

Blog banner

Virtual machine

Blog banner

Memory Management in an Operating System

Blog banner

Intrusion Detection System

Blog banner