• Post category:StudyBullet-11
  • Reading time:11 mins read


Master the basics of Operating System memory management, virtual memory, page replacement, thrashing from scratch.

What you will learn

Memory management terminology

Where do memory addresses come from?

What are the required memory management properties?

What are some simple memory allocation schemes?

What is fragmentation? (Internal, external fragmentation.)

What is paging?

What is the key idea behind paging?

How paging works?

How is address translation done with paging?

How does paging hardware work?

How is memory address translated by the paging hardware?

How do memory management systems perform address translation without division?

How to make paging efficient?

What is TLB cache?

How does TLB cache work?

What are the performance implications of a TLB cache?

How is the main memory initialized when a process is started?

How context switches are performed in presence of paging?

How does paging facilitate memory sharing?

What is demand paging?

How does demand paging work?

When to load a page in demand paging?

How is demand paging implemented?

What is swap space?

What are the performance implications of demand paging?

How is TLB cache updated with demand paging?

What are page replacement algorithms?

What is FIFO page replacement?

What is MIN page replacement?

What is Random page replacement?

What is LRU page replacement?

What is Belady’s anomaly?

What is thrashing?

How to limit thrashing?

What is working set?

Description

Ace operating systems (OS) memory management, paging, virtual memory, page replacement, thrashing, working set questions in competitive exams, job interviews, and OS course exams.

Do you know: How the OS presents an illusion of infinite memory to users? How can the OS execute processes much bigger than the RAM (main memory)? Where do memory addresses come from? How does OS keep several processes inside the RAM for execution? How OS makes room for new processes when the RAM is full? What happens if there are too many processes in the RAM? Learn the explanations to these and many more intriguing questions in this course!

Specifically, the course will cover the following in detail.


Get Instant Notification of New Courses on our Telegram channel.


  1. Memory management terminology
  2. Where do memory addresses come from?
  3. What are the required memory management properties?
  4. What are some simple memory allocation schemes?
  5. What is fragmentation?
  6. What is internal fragmentation?
  7. What is external fragmentation?
  8. What is paging?
  9. What is the key idea behind paging?
  10. How paging works?
  11. How is address translation done with paging?
  12. How does paging hardware work?
  13. How is memory address translated by the paging hardware?
  14. How do memory management systems perform address translation without division?
  15. How to make paging efficient?
  16. What is TLB cache?
  17. How does TLB cache work?
  18. What are the performance implications of a TLB cache?
  19. How is the main memory initialized when a process is started?
  20. How context switches are performed in presence of paging?
  21. How does paging facilitate memory sharing?
  22. What is demand paging?
  23. How does demand paging work?
  24. When to load a page in demand paging?
  25. How is demand paging implemented?
  26. What is swap space?
  27. What are the performance implications of demand paging?
  28. How is TLB cache updated with demand paging?
  29. What are page replacement algorithms?
  30. What is FIFO page replacement?
  31. What is MIN page replacement?
  32. What is Random page replacement?
  33. What is LRU page replacement?
  34. What is Belady’s anomaly?
  35. What is thrashing?
  36. How to limit thrashing?
  37. What is working set?

30 day money back guaranteed by Udemy.

Wisdom scholarships. If you are interested in taking one of our courses but cannot purchase it, you can apply for a scholarship to enroll. Learn more about the application process at my website.

English
language

Content

Introduction

Course introduction
Memory management terminology
Where do addresses come from?
Required memory management properties
Simple memory allocation schemes
Memory allocation and fragmentation
Fragmentation heuristics
Quiz 1

Paging

Paging idea
Paging – motivation and features I
Paging – motivation and features II
Paging – example
Paging – address translation
Paging hardware
Paging hardware – address translation
Paging hardware – practical details
Quiz 2

Address translation

Address translation example I
Address translation example II
Address translation without division
Quiz 3

How to make paging efficient?

Making paging efficient
TLB cache key idea
TLB cache in action I
TLB cache in action II
Performance cost of using TLB cache
Quiz 4

Processes and paging

Initializing memory when starting a process
Context switch in presence of paging
Memory sharing with paging
Quiz 5

Demand paging

Demand paging key ideas
Demand paging details
Demand paging example
When to load a page I?
When to load a page II?
Implementation of demand paging
Swap space
Demand paging performance
Demand paging – updating the TLB
Quiz 6

Page replacement algorithms

Page replacement algorithms – FIFO
Page replacement algorithms – MIN
Page replacement algorithms – Random
Page replacement algorithms – LRU
FIFO page replacement example
MIN page replacement example
LRU page replacement example
Quiz 7

Unusual scenarios for page replacement algorithms

LRU page replacement bad scenario
FIFO page replacement unexpected behavior I
FIFO page replacement unexpected behavior II
Adding memory with LRU page replacement
Quiz 8

Thrashing

Thrashing
How to limit thrashing?
Working set example
Using page fault rate to prevent thrashing
Demand paging summary
Quiz 9