wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Memory management

profile
Jash Makwana
Aug 14, 2024
0 Likes
0 Discussions
76 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

A Survey of Anti-Forensic Techniques: Methods, Challenges, and Countermeasures

Blog banner

MPL and how its effects?

Blog banner

Data Lake

Blog banner

PPT methodology

Blog banner

Having passion in life

Blog banner

This too shall pass

Blog banner

OS DESIGN CONSIDERATIONS FOR MULTIPROCESSOR

Blog banner

NIKE

Blog banner

DEVELOPMENTS LEADING TO MODERN OPERATING SYSTEMS

Blog banner

MQTT (MQ Telemetry Transport) in Data Science

Blog banner

Broken Authentication Attacks

Blog banner

Craziness of dream 11 and how it impacts on our life

Blog banner

Developments in Modern Operating Systems

Blog banner

World’s rarest passport owned by 500 people.

Blog banner

IP ADDRESS

Blog banner

Cloud Security: Trends and Innovations

Blog banner

DISK SCHEDULING

Blog banner

Deadlock

Blog banner

Scheduling

Blog banner

Evolution of Operating System

Blog banner

How To Secure Operating Systems ?

Blog banner

Google App Engine

Blog banner

File management

Blog banner

Rules and Regulations of Networking: "Standards and Protocols" - Part 2

Blog banner

Personalized Movie Recommendations with Data Science

Blog banner

Service Design Principles

Blog banner

WORKFRONT SOFTWARE

Blog banner

Some web vulnerabilities

Blog banner

AI and cyber Security

Blog banner

Process states

Blog banner

MD5 Collisions and the impact on computer forensics

Blog banner

Web Site

Blog banner

Google classroom

Blog banner

Virtual memory

Blog banner

Webmail

Blog banner

INDIAN CHEAPEST COSMETICS BRAND

Blog banner

Cryptanalysis tool

Blog banner

Top 3 Places To Stay In Vienna

Blog banner

Pipedrive

Blog banner

Why Soft Skills Matter as Much as Grades?

Blog banner

Raising Emotionally Intelligent Students: The Classroom Beyond Academics

Blog banner

Should you be using a mouthwash? Know from the experts

Blog banner