wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Memory management

profile
Jash Makwana
Aug 14, 2024
0 Likes
0 Discussions
75 Reads


1. Memory Hierarchy

  • Registers: Small, fast storage locations within the CPU.
  • Cache Memory: A small-sized type of volatile computer memory that provides high-speed data access to the processor.
  • Main Memory (RAM): The primary storage that holds data and programs currently in use.
  • Secondary Storage: Non-volatile storage (e.g., hard drives, SSDs) used for long-term data storage.

2. Memory Allocation

  • Static vs. Dynamic Allocation: Static allocation assigns memory at compile-time, while dynamic allocation assigns it at run-time.
  • Contiguous vs. Non-Contiguous Allocation: Contiguous allocation assigns a single block of memory to a process, while non-contiguous allocation allows a process to be allocated memory in multiple blocks.

3. Memory Partitioning

  • Fixed Partitioning: Memory is divided into fixed-size partitions. Each process occupies an entire partition.
  • Dynamic Partitioning: Memory is divided into partitions dynamically according to the size of the process.

4. Paging

  • Concept: Memory is divided into fixed-size blocks called pages. The process is divided into pages, and pages are mapped to physical memory frames.
  • Page Table: Maintains the mapping between virtual addresses and physical addresses.

5. Segmentation

  • Concept: Memory is divided into segments based on the logical divisions of a program (e.g., code, data, stack).
  • Segment Table: Maps the segment's starting address and size.

6. Virtual Memory

  • Concept: Extends the available memory by using disk space as an extension of RAM.
  • Demand Paging: Loads pages into memory only when they are needed, reducing memory usage.
  • Page Replacement Algorithms: Determines which pages to swap out when memory is full (e.g., FIFO, LRU, Optimal).

7. Memory Management Techniques

  • Swapping: Moves processes between main memory and disk to free up memory for other processes.
  • Compaction: Reduces fragmentation by relocating processes to merge free memory spaces.
  • Garbage Collection: Automatically reclaims memory that is no longer in use by the program.

8. Fragmentation

  • Internal Fragmentation: Wasted memory within allocated regions due to fixed partition sizes.
  • External Fragmentation: Wasted memory outside allocated regions due to scattered free space.

9. Protection and Security

  • Memory Protection: Ensures that one process does not interfere with another's memory space.
  • Access Control: Defines which processes can access specific memory segments.

10. Examples of Memory Management in Different OS

  • Windows: Uses a combination of paging and segmentation with a focus on virtual memory.
  • Linux: Uses paging and implements virtual memory through a hierarchical page table structure.
  • macOS: Implements advanced memory management with techniques like copy-on-write and shared memory.

Understanding these topics provides a solid foundation in how operating systems manage memory to ensure efficient and secure execution of processes.


Comments ()


Sign in

Read Next

Disk Management

Blog banner

Data Visualization

Blog banner

Sweet Mango Murabba

Blog banner

Real-time Scheduling - 53003230061

Blog banner

social media issue

Blog banner

What is OS Fingerprinting?

Blog banner

Google classroom

Blog banner

Microsoft Windows Overview

Blog banner

RAID - LEVELS OF RAID

Blog banner

RAID

Blog banner

objectives and functions of operating system

Blog banner

Threads and concurrency

Blog banner

Multithreading in Operating System

Blog banner

NodeJs

Blog banner

First-Order Logic (FOL): The Foundation of Modern Logic

Blog banner

Digital marketing spotlight “Dove’s Real Beauty Campaign”

Blog banner

Education: Key to your Prosperity

Blog banner

Virtual memory in Operating System

Blog banner

MPL and how its effects?

Blog banner

EID UL FITR

Blog banner

Modern operating system

Blog banner

Concurrency and memory

Blog banner

Introduction to Solidity Programming for Blockchain Development

Blog banner

Hot Mango Pickle (Methiyu)

Blog banner

AutoML: The Future of Automated Data Science

Blog banner

Why You Need 2FA (Two-Factor Authentication) On Your Email And Other Online Accounts

Blog banner

Deadlock and Starvation

Blog banner

Artificial Intelligence and I

Blog banner

Impact of social media on the human life

Blog banner

Privacy in Social Media and Online Services

Blog banner

LTE Technology

Blog banner

MUTUAL EXCLUSION

Blog banner

OPERATING SYSTEM OBJECTIVES AND FAULT TOLERENCE.

Blog banner

Bots and Cyber Security

Blog banner

Sleep Matters: The Science Behind Toddler Naps

Blog banner

Challenges and risks in service operations

Blog banner

Operating System

Blog banner

Respondo Launches Revolutionary Video Discussion App

Blog banner

Smitten Kitchen Keepers

Blog banner

Phishing

Blog banner

Clustering Techniques

Blog banner

Jamming Attacks in Network Security: Disrupting Communication Signals

Blog banner