Presentation Title
Memory management
Serial No.                               Topics
    1        Introduction to Memory & Memory hierarchy
    2        Introduction to MMU & its working
    3        Techniques of Memory Management( Paging and segmentation)
    4        segmentation
    5        Mono programming without Swapping or Paging (M. Fayyaz)
    6        Multiprogramming with fixed partitions. (M.Bilal)
    7        Swapping
    8        Managing Free Memory (Hiba Abdul Rauf)
    9        Memory Management with Bitmaps
   10        Dynamic Partitioning Placement Algorithm (Imran Bin Ramzan)
Memory is the internal storage area of the computer. Memory identifies
the data storage. The physical memory usually referred to us main
memory or RAM.
Memory Management Unit of the operating system handles the
memory hierarchy.



1. Keep track of what parts of memory are in use.
2. Allocate memory to processes when needed.
3. Deallocate when processes are done.
4. Swapping, or paging, between main memory and disk, when disk is
too small to hold all current processes.
It’s a term used to describe how operating systems handles the available RAM, it is
managed by multiple levels.


                          Techniques of M.M
In segmentation the virtual address space is divided into a number of variable-size
pieces called segments. One can view the designs we have studied so far as having
just one segment, the entire address space of the process.

Memory Management Scheme that supports user view of memory.
A program is a collection of segments.
A segment is a logical unit such as
          main program, procedure, function
          local variables, global variables, common block
          stack, arrays
       Protect each entity independently
       Allow each segment to grow independently
       Share each segment independently
1
                 2


 1
             4


             2   4
3

                 3




User Space       Physical Memory
– Logical address consists of a two tuple
        <segment-number, offset>
– Segment Table
    • Maps two-dimensional user-defined addresses into one-dimensional
      physical addresses. Each table entry has
        – Base - contains the starting physical address where the segments
          reside in memory.
        – Limit - specifies the length of the segment.
    • Segment-table base register (STBR) points to the segment table’s
      location in memory.
    • Segment-table length register (STLR) indicates the number of
      segments used by a program; segment number is legal if s < STLR.
Segmentation Architecture (cont.)


– Relocation is dynamic - by segment table
– Sharing
   • Code sharing occurs at the segment level.
   • Shared segments must have same segment number.
– Allocation - dynamic storage allocation problem
   • use best fit/first fit, may cause external fragmentation.
– Protection
   • protection bits associated with segments
      – read/write/execute privileges
      – array in a separate segment - hardware can check for illegal
        array indexes.
Shared segments

                                                       Limit  Base
             editor                                      25286 43602
                                                   0      4425 68348
           segment 0                               1                           43062
                          data 1                            Segment Table              editor
                                                             process P1        68348
                                                                                       data 1
                      segment 1                                                72773
Logical Memory
 process P1


                            editor                           Limit  Base
                                                               25286 43602     900
                                          data 2        0                              data 2
                          segment 0
                                                        1
                                                                8850 90003     03
                                                                               985
                                                               Segment Table
                                                                               53
        Logical Memory                                          process P2
         process P2                  segment 1
Segmented Paged Memory


– Segment-table entry contains not the base address of
  the segment, but the base address of a page table for
  this segment.
   • Overcomes external fragmentation problem of segmented
     memory.
   • Paging also makes allocation simpler; time to search for a
     suitable segment (using best-fit etc.) reduced.
   • Introduces some internal fragmentation and table space
     overhead.
– Multics - single level page table
– IBM OS/2 - OS on top of Intel 386
   • uses a two level paging scheme
Entire process remains in memory from start to finish.
The sum of the memory requirements of all jobs in the system
cannot exceed the size of physical memory.




   These are three simple ways of organizing memory an
   operating system with one user process
Memory management
Memory management
•Allocating space for growing data segment
•Allocating space for growing stack & data segment
Memory management
Managing Free Memory
When memory is assigned dynamically, the operating system must manage
it. In general terms, there are two ways to keep track of memory usage:
bitmaps and free lists. In this section and the next one we will look at these
two methods.
Memory management
Operating system must decide which free block to allocate to a process


Best-fit algorithm
    Chooses the block that is closest in size to the request
    Worst performer overall
    Since smallest block is found for process, the smallest
  amount of fragmentation is left
    Memory compaction must be done more often
First-fit algorithm
     Scans memory form the beginning and chooses
   the first available block that is large enough
     Fastest
     May have many process loaded in the front end
   of memory that must be searched over when
   trying to find a free block
Next-fit-Algorithm
    Scans memory from the location of the last
  placement
    More often allocate a block of memory at the
  end of memory where the largest block is found
    The largest block of memory is broken up into
  smaller blocks
    Compaction is required to obtain a large block
  at the end of memory
Worst Fit Algorithm:
 Search entire list.
  Produces the largest left over hole.
 Allocate the largest hole.
Memory management
Memory management

More Related Content

PPTX
Memory Management in OS
PPT
Artificial1 ppt
PPTX
Introduction to embedded systems
PPTX
DeadLock in Operating-Systems
PPTX
Mobile cloud Computing
PDF
Gstreamer: an Overview
PPTX
Introducing CSS Grid
PPTX
Graphics card
Memory Management in OS
Artificial1 ppt
Introduction to embedded systems
DeadLock in Operating-Systems
Mobile cloud Computing
Gstreamer: an Overview
Introducing CSS Grid
Graphics card

What's hot (20)

PPT
Chapter 12 - Mass Storage Systems
PPT
Paging.ppt
PDF
Memory management
PPT
Parallel processing
PPTX
Memory Organization
PPS
Cache memory
PPT
Memory Management in OS
PPTX
Predicate logic
PPTX
Memory management ppt
PDF
Process Scheduling in OS
PPT
Chapter 13 - I/O Systems
PPTX
Paging and segmentation
PPTX
Inter Process Communication
PPTX
Distributed file system
PDF
Distributed Operating System_1
PPTX
Memory organization (Computer architecture)
PPTX
Operating system memory management
PPT
Chapter 10 - File System Interface
PPTX
Computer architecture virtual memory
Chapter 12 - Mass Storage Systems
Paging.ppt
Memory management
Parallel processing
Memory Organization
Cache memory
Memory Management in OS
Predicate logic
Memory management ppt
Process Scheduling in OS
Chapter 13 - I/O Systems
Paging and segmentation
Inter Process Communication
Distributed file system
Distributed Operating System_1
Memory organization (Computer architecture)
Operating system memory management
Chapter 10 - File System Interface
Computer architecture virtual memory
Ad

Viewers also liked (15)

PDF
Array Processor
PDF
Organising - MANAGEMENT PROCESS
PPT
Process management in os
PPT
Virtual memory
PPTX
Operating System-Memory Management
PDF
Virtual memory
PDF
8 memory management strategies
PDF
Virtual Memory and Paging
PPTX
Process management
PPTX
Paging and Segmentation in Operating System
PPTX
Pipelining and vector processing
PPT
Os Swapping, Paging, Segmentation and Virtual Memory
PPT
Memory management
Array Processor
Organising - MANAGEMENT PROCESS
Process management in os
Virtual memory
Operating System-Memory Management
Virtual memory
8 memory management strategies
Virtual Memory and Paging
Process management
Paging and Segmentation in Operating System
Pipelining and vector processing
Os Swapping, Paging, Segmentation and Virtual Memory
Memory management
Ad

Similar to Memory management (20)

PPTX
UNIT-2 OS.pptx
PDF
Memory management OS
PPTX
Main Memory
DOCX
Opetating System Memory management
PPTX
Paging +Algorithem+Segmentation+memory management
PDF
Unit iiios Storage Management
PPT
Bab 4
 
PDF
IRJET - The 3-Level Database Architectural Design for OLAP and OLTP Ops
PDF
Introduction to Memoria
DOCX
PAGIN AND SEGMENTATION.docx
PPT
Memory comp
PPTX
Segmentation
PPTX
Memory Hierarchy
PPTX
Memory management
PPTX
OPERATING SYSTEM-UNIT 3.pptxMemory management for UNIX, Solaris, Linux, Windo...
PPT
Cache memory
PPTX
local_media3192961381667787861026781.pptx
PDF
DB ppt OS unit - 3.pdf
PPTX
Operating system 34 contiguous allocation
UNIT-2 OS.pptx
Memory management OS
Main Memory
Opetating System Memory management
Paging +Algorithem+Segmentation+memory management
Unit iiios Storage Management
Bab 4
 
IRJET - The 3-Level Database Architectural Design for OLAP and OLTP Ops
Introduction to Memoria
PAGIN AND SEGMENTATION.docx
Memory comp
Segmentation
Memory Hierarchy
Memory management
OPERATING SYSTEM-UNIT 3.pptxMemory management for UNIX, Solaris, Linux, Windo...
Cache memory
local_media3192961381667787861026781.pptx
DB ppt OS unit - 3.pdf
Operating system 34 contiguous allocation

More from Muhammad Fayyaz (7)

PDF
need order on fiverr.pdf
PDF
10 productivity booster hotkeys of Elmentor Page Builder.pdf
PDF
WPForms Plugin Review 2023 - Everything you need to know!
PDF
how to keep wordpress website secured.pdf
PPTX
Networking essentials
PPTX
Brainstorming
PPTX
Pak America Rationships
need order on fiverr.pdf
10 productivity booster hotkeys of Elmentor Page Builder.pdf
WPForms Plugin Review 2023 - Everything you need to know!
how to keep wordpress website secured.pdf
Networking essentials
Brainstorming
Pak America Rationships

Recently uploaded (20)

DOCX
Ibrahim Suliman Mukhtar CV5AUG2025.docx
PDF
1.Salivary gland disease.pdf 3.Bleeding and Clotting Disorders.pdf important
PDF
faiz-khans about Radiotherapy Physics-02.pdf
PDF
Everyday Spelling and Grammar by Kathi Wyldeck
PPTX
Integrated Management of Neonatal and Childhood Illnesses (IMNCI) – Unit IV |...
PDF
Hospital Case Study .architecture design
PDF
fundamentals-of-heat-and-mass-transfer-6th-edition_incropera.pdf
PDF
Journal of Dental Science - UDMY (2020).pdf
PDF
Controlled Drug Delivery System-NDDS UNIT-1 B.Pharm 7th sem
PPTX
CAPACITY BUILDING PROGRAMME IN ADOLESCENT EDUCATION
PDF
M.Tech in Aerospace Engineering | BIT Mesra
PDF
Environmental Education MCQ BD2EE - Share Source.pdf
PDF
THE CHILD AND ADOLESCENT LEARNERS & LEARNING PRINCIPLES
DOCX
Cambridge-Practice-Tests-for-IELTS-12.docx
PDF
Journal of Dental Science - UDMY (2022).pdf
PPTX
Climate Change and Its Global Impact.pptx
PDF
Disorder of Endocrine system (1).pdfyyhyyyy
PPTX
Reproductive system-Human anatomy and physiology
PPTX
Thinking Routines and Learning Engagements.pptx
PDF
Solved Past paper of Pediatric Health Nursing PHN BS Nursing 5th Semester
Ibrahim Suliman Mukhtar CV5AUG2025.docx
1.Salivary gland disease.pdf 3.Bleeding and Clotting Disorders.pdf important
faiz-khans about Radiotherapy Physics-02.pdf
Everyday Spelling and Grammar by Kathi Wyldeck
Integrated Management of Neonatal and Childhood Illnesses (IMNCI) – Unit IV |...
Hospital Case Study .architecture design
fundamentals-of-heat-and-mass-transfer-6th-edition_incropera.pdf
Journal of Dental Science - UDMY (2020).pdf
Controlled Drug Delivery System-NDDS UNIT-1 B.Pharm 7th sem
CAPACITY BUILDING PROGRAMME IN ADOLESCENT EDUCATION
M.Tech in Aerospace Engineering | BIT Mesra
Environmental Education MCQ BD2EE - Share Source.pdf
THE CHILD AND ADOLESCENT LEARNERS & LEARNING PRINCIPLES
Cambridge-Practice-Tests-for-IELTS-12.docx
Journal of Dental Science - UDMY (2022).pdf
Climate Change and Its Global Impact.pptx
Disorder of Endocrine system (1).pdfyyhyyyy
Reproductive system-Human anatomy and physiology
Thinking Routines and Learning Engagements.pptx
Solved Past paper of Pediatric Health Nursing PHN BS Nursing 5th Semester

Memory management

  • 3. Serial No. Topics 1 Introduction to Memory & Memory hierarchy 2 Introduction to MMU & its working 3 Techniques of Memory Management( Paging and segmentation) 4 segmentation 5 Mono programming without Swapping or Paging (M. Fayyaz) 6 Multiprogramming with fixed partitions. (M.Bilal) 7 Swapping 8 Managing Free Memory (Hiba Abdul Rauf) 9 Memory Management with Bitmaps 10 Dynamic Partitioning Placement Algorithm (Imran Bin Ramzan)
  • 4. Memory is the internal storage area of the computer. Memory identifies the data storage. The physical memory usually referred to us main memory or RAM.
  • 5. Memory Management Unit of the operating system handles the memory hierarchy. 1. Keep track of what parts of memory are in use. 2. Allocate memory to processes when needed. 3. Deallocate when processes are done. 4. Swapping, or paging, between main memory and disk, when disk is too small to hold all current processes.
  • 6. It’s a term used to describe how operating systems handles the available RAM, it is managed by multiple levels. Techniques of M.M
  • 7. In segmentation the virtual address space is divided into a number of variable-size pieces called segments. One can view the designs we have studied so far as having just one segment, the entire address space of the process. Memory Management Scheme that supports user view of memory. A program is a collection of segments. A segment is a logical unit such as main program, procedure, function local variables, global variables, common block stack, arrays Protect each entity independently Allow each segment to grow independently Share each segment independently
  • 8. 1 2 1 4 2 4 3 3 User Space Physical Memory
  • 9. – Logical address consists of a two tuple <segment-number, offset> – Segment Table • Maps two-dimensional user-defined addresses into one-dimensional physical addresses. Each table entry has – Base - contains the starting physical address where the segments reside in memory. – Limit - specifies the length of the segment. • Segment-table base register (STBR) points to the segment table’s location in memory. • Segment-table length register (STLR) indicates the number of segments used by a program; segment number is legal if s < STLR.
  • 10. Segmentation Architecture (cont.) – Relocation is dynamic - by segment table – Sharing • Code sharing occurs at the segment level. • Shared segments must have same segment number. – Allocation - dynamic storage allocation problem • use best fit/first fit, may cause external fragmentation. – Protection • protection bits associated with segments – read/write/execute privileges – array in a separate segment - hardware can check for illegal array indexes.
  • 11. Shared segments Limit Base editor 25286 43602 0 4425 68348 segment 0 1 43062 data 1 Segment Table editor process P1 68348 data 1 segment 1 72773 Logical Memory process P1 editor Limit Base 25286 43602 900 data 2 0 data 2 segment 0 1 8850 90003 03 985 Segment Table 53 Logical Memory process P2 process P2 segment 1
  • 12. Segmented Paged Memory – Segment-table entry contains not the base address of the segment, but the base address of a page table for this segment. • Overcomes external fragmentation problem of segmented memory. • Paging also makes allocation simpler; time to search for a suitable segment (using best-fit etc.) reduced. • Introduces some internal fragmentation and table space overhead. – Multics - single level page table – IBM OS/2 - OS on top of Intel 386 • uses a two level paging scheme
  • 13. Entire process remains in memory from start to finish. The sum of the memory requirements of all jobs in the system cannot exceed the size of physical memory. These are three simple ways of organizing memory an operating system with one user process
  • 16. •Allocating space for growing data segment •Allocating space for growing stack & data segment
  • 18. Managing Free Memory When memory is assigned dynamically, the operating system must manage it. In general terms, there are two ways to keep track of memory usage: bitmaps and free lists. In this section and the next one we will look at these two methods.
  • 20. Operating system must decide which free block to allocate to a process Best-fit algorithm Chooses the block that is closest in size to the request Worst performer overall Since smallest block is found for process, the smallest amount of fragmentation is left Memory compaction must be done more often
  • 21. First-fit algorithm Scans memory form the beginning and chooses the first available block that is large enough Fastest May have many process loaded in the front end of memory that must be searched over when trying to find a free block
  • 22. Next-fit-Algorithm Scans memory from the location of the last placement More often allocate a block of memory at the end of memory where the largest block is found The largest block of memory is broken up into smaller blocks Compaction is required to obtain a large block at the end of memory
  • 23. Worst Fit Algorithm: Search entire list. Produces the largest left over hole. Allocate the largest hole.