SlideShare a Scribd company logo
1 of 35
Operating System-Memory
      Management

          by
      Vishal Singh
     (Vishalchd11@yahoo.com)
Why Memory management ?
1. To ensure protection of different
   processes from each other (so that
   they do not interfere with each other’s
   operations).
2. To place the programs in memory
   (such that memory is utilized to its
   fullest extent.
Logical vs. physical address
               space
► A logical address is the address of an
 instruction or data as used by a program.

► A physical address is the effective memory
 address of an instruction or data i.e. it is the
 address obtained after binding of logical
 addresses has been done.
Program relocation
Relocation register
► Relocation register is a special register in
  the CPU used for program relocation means
  mapping of logical addresses used by the
  program to physical addresses of the
  system’s main memory
Storage Allocation and
    Management Techniques
The Storage allocation can be of two types:

 (i) Contiguous storage allocation.

 (ii) Non-contiguous storage allocation.
Contiguous Storage Allocation
► Contiguous storage allocation implies that a
  program’s data and instructions are assured
  to occupy a single contiguous memory area.
► It is further subdivided into Fixed-partition
  storage allocation strategy and variable-
  partition storage allocation strategy.
1. Fixed-partition contiguous
       storage allocation

► processes with small address space use
 small partitions and processes with large
 address space use large partitions. This is
 known as fixed partition contiguous storage
 allocation.
2. Variable - partition
contiguous storage allocation

This notion is derived from parking of vehicles on
the sides of streets where the one who manages
to enter will get the space. Two vehicles can
leave a space between them that cannot be used
by any vehicle. This means that whenever a
process needs memory, a search for the space
needed by it, is done. If contiguous space is
available to accommodate that process, then the
process is loaded into memory.
External Fragmentation
► This phenomenon of entering and leaving
 the memory can cause the formation of
 unusable memory holes (like the unused
 space between two vehicles). This is
 known as External Fragmentation.
Three strategies that can be used to
 allocate memory to Variable - partition
They are the following:

1. Best - Fit
2. Worst - fit
3. First - fit
Best - Fit - chooses a partition that is smallest and whose
     size is greater than equal to k. It leaves small-sized
     unusable partitions or holes.
First - fit - chooses the first partition whose
    size is greater than equal to k.
Worst - fit - chooses the largest partition and
   allocates it to process p. It can leave bigger
   unusable partitions.
Compaction means to move the processes in the
memory in such a way that scattered pieces of
unused (free) memory can be placed together so
that any other process demanding contiguous
memory for it can use it.
Non-contiguous Storage
          Allocation
► To resolve the problem     of external
 fragmentation and to enhance the
 degree of multiprogramming to a
 greater extent, it was decided to sacrifice
 the simplicity of allocating contiguous
 memory to every process. It was decided to
 have a non-contiguous physical address
 space of a process so that a process could
 be allocated memory wherever it was
 available.
Non-contiguous Storage Allocation
There are 2 techniques for non-contiguous
allocation:
1. Paging
2. Segmentation
1. Paging
► In this approach,physical memory is
 divided into fixed-size blocks called
 frames and the logical memory is
 divided into the fixed-sized blocks
 called pages. The size of a page is
 same as that of frame. The key idea of
 this method is to place the pages of a
 process into the available frames of
 memory, whenever, this process is to be
 executed. The address mapping is done
 by Page table.
Paging example
It works as:
Translate logical address 13 = 01101 in
   binary
Offset = 01 in binary or 1 in decimal
Page no. = 011 in binary or 3 in decimal
Physical address = pageframe*pagesize +
   offset i.e. 2*4+1 = 9 (which is the real
   address of page containing character “n”
   in the main memory)
Problem with paging
► It uses a page table per process for
  translating logical to physical address
  space. A basic issue associated with the
  use of page table is, that the look up in the
  page table should be very fast (which is
  generally slow), as it is done on every
  memory reference.
► So to make the look up time less, caching
  is used. In this case, the specific cache
  device is called a translation look aside
  buffer (TLB).
Translation look aside buffer (TLB).
► The TLB contains a set of entries, each of
  which contains a page number, the
  corresponding frame number, and the
  protection bits.
► So if we use TLB, then mapping is done
  by TLB and we generally find the entry in
  TLB but in case the entry is not found in
  TLB than we have a TLB miss and finally
  we go to page table.
Segmentation
► segmentation is another technique for the
  noncontiguous storage allocation. It is different
  from paging as it supports users’ view of his
  program.
► For a programmer it might be more relevant to
  divide the logical address space of his program
  into variable sized segments (with respect to his
  view of main program, subroutines, data, etc.)
  than to divide it into fixed size pages. Such
  variable sized segments, which are a collection
  of logically related information, are the basis of
  segmentation technique.
Segmentation example
Virtual Memory

► Virtual memory is a technique of executing
  program instructions that may not fit entirely in
  system memory. This is done by calling
  instructions as and when the application requires
  it. Virtual memory is implemented by using
  secondary storage to augment the main
  memory. Data is transferred from secondary to
  main storage as and when necessary and the
  data modified is written back to the secondary
  storage according to a predetermined algorithm.
Swapping
► Swapping is the technique of temporarily
  removing inactive programs from the main
  memory of a computer system. An
  inactive program is one that is neither
  executing nor performing an I/O operation.
► This may also happen when it is desired to
  place a higher-priority process in the
  memory. A lower priority process may be
  swapped out so that higher-priority
  process may be loaded and executed.
Demand Paging
► In virtual memory system, demand paging is a
  type of swapping in which pages of programs
  are not copied from disk to main memory until
  they are needed for execution.
► In demand paging, virtual address (logical
  address) is accessed by CPU, the
  corresponding page number is looked up in the
  page table and if it shows that currently this
  page is not in main memory, then this page must
  be brought into the main-memory.
► A page  fault occurs when an invalid
 page is addressed. Page fault must be
 followed by swapping-in the page
 (demanded just now by the CPU) from
 disk to main-memory or a trap should be
 generated to the operating system if the
 page being demanded is not within the
 logical address space of the process. To
 determine whether the reference to the
 requested page is within the logical
 address space or not, an internal table
 may be consulted
Pure Demand Paging
► Pure demand paging is the form of
 demand paging in which not even a
 single page is loaded into memory,
 initially. Thus, the very first instruction
 causes a page fault in this case. This kind
 of demand paging may significantly
 decrease the performance of a computer
 system by generally increasing the
 effective access time of memory.
Page Replacement
► Once the main memory fills up, a page
  must be swapped out to make room for
  any pages to be swapped in. This is
  known as page replacement.
► We have page replacement algorithms for
  page replacement purpose, which are as
  follows:
1.   The optimal page replacement
     algorithm
2.   The first-in, first-out (FIFO) page
     replacement algorithm
3.   The second chance page replacement
     algorithm
4.   The least recently used (LRU) page
     replacement algorithm
5.   Simulating LRU in Software (Not frequently
     used algorithm)
6.   The Working Set Page Replacement
     Algorithm

More Related Content

What's hot

Operating System-Memory Management
Operating System-Memory ManagementOperating System-Memory Management
Operating System-Memory ManagementAkmal Cikmat
 
Memory Management in OS
Memory Management in OSMemory Management in OS
Memory Management in OSvampugani
 
Paging and Segmentation in Operating System
Paging and Segmentation in Operating SystemPaging and Segmentation in Operating System
Paging and Segmentation in Operating SystemRaj Mohan
 
Segmentation in Operating Systems.
Segmentation in Operating Systems.Segmentation in Operating Systems.
Segmentation in Operating Systems.Muhammad SiRaj Munir
 
Memory Management in OS
Memory Management in OSMemory Management in OS
Memory Management in OSKumar Pritam
 
Computer architecture virtual memory
Computer architecture virtual memoryComputer architecture virtual memory
Computer architecture virtual memoryMazin Alwaaly
 
Chapter 12 - Mass Storage Systems
Chapter 12 - Mass Storage SystemsChapter 12 - Mass Storage Systems
Chapter 12 - Mass Storage SystemsWayne Jones Jnr
 
Os Swapping, Paging, Segmentation and Virtual Memory
Os Swapping, Paging, Segmentation and Virtual MemoryOs Swapping, Paging, Segmentation and Virtual Memory
Os Swapping, Paging, Segmentation and Virtual Memorysgpraju
 
Cache memory
Cache memoryCache memory
Cache memoryAnuj Modi
 
Pipelining and vector processing
Pipelining and vector processingPipelining and vector processing
Pipelining and vector processingKamal Acharya
 
File Management in Operating System
File Management in Operating SystemFile Management in Operating System
File Management in Operating SystemJanki Shah
 

What's hot (20)

Operating System-Memory Management
Operating System-Memory ManagementOperating System-Memory Management
Operating System-Memory Management
 
Memory Management in OS
Memory Management in OSMemory Management in OS
Memory Management in OS
 
Cache memory
Cache memoryCache memory
Cache memory
 
Paging and Segmentation in Operating System
Paging and Segmentation in Operating SystemPaging and Segmentation in Operating System
Paging and Segmentation in Operating System
 
Segmentation in Operating Systems.
Segmentation in Operating Systems.Segmentation in Operating Systems.
Segmentation in Operating Systems.
 
Memory Organization
Memory OrganizationMemory Organization
Memory Organization
 
Memory Management in OS
Memory Management in OSMemory Management in OS
Memory Management in OS
 
Computer architecture virtual memory
Computer architecture virtual memoryComputer architecture virtual memory
Computer architecture virtual memory
 
Page Replacement
Page ReplacementPage Replacement
Page Replacement
 
Distributed Operating System_1
Distributed Operating System_1Distributed Operating System_1
Distributed Operating System_1
 
Chapter 12 - Mass Storage Systems
Chapter 12 - Mass Storage SystemsChapter 12 - Mass Storage Systems
Chapter 12 - Mass Storage Systems
 
Os Swapping, Paging, Segmentation and Virtual Memory
Os Swapping, Paging, Segmentation and Virtual MemoryOs Swapping, Paging, Segmentation and Virtual Memory
Os Swapping, Paging, Segmentation and Virtual Memory
 
Paging and segmentation
Paging and segmentationPaging and segmentation
Paging and segmentation
 
System calls
System callsSystem calls
System calls
 
Cache memory
Cache memoryCache memory
Cache memory
 
operating system structure
operating system structureoperating system structure
operating system structure
 
Pipelining and vector processing
Pipelining and vector processingPipelining and vector processing
Pipelining and vector processing
 
CPU Scheduling Algorithms
CPU Scheduling AlgorithmsCPU Scheduling Algorithms
CPU Scheduling Algorithms
 
File Management in Operating System
File Management in Operating SystemFile Management in Operating System
File Management in Operating System
 
Mainframe systems
Mainframe systemsMainframe systems
Mainframe systems
 

Viewers also liked

Virtual Memory and Paging
Virtual Memory and PagingVirtual Memory and Paging
Virtual Memory and PagingEmery Berger
 
Data structure lecture 1
Data structure   lecture 1Data structure   lecture 1
Data structure lecture 1Samsil Arefin
 
Program Structure in GNU/Linux (ELF Format)
Program Structure in GNU/Linux (ELF Format)Program Structure in GNU/Linux (ELF Format)
Program Structure in GNU/Linux (ELF Format)Varun Mahajan
 
Software engineering introduction
Software engineering introductionSoftware engineering introduction
Software engineering introductionVishal Singh
 
8 memory management strategies
8 memory management strategies8 memory management strategies
8 memory management strategiesDr. Loganathan R
 
Knowledge Representation in Artificial intelligence
Knowledge Representation in Artificial intelligence Knowledge Representation in Artificial intelligence
Knowledge Representation in Artificial intelligence Yasir Khan
 
Knowledge representation in AI
Knowledge representation in AIKnowledge representation in AI
Knowledge representation in AIVishal Singh
 
Software Requirement Specification
Software Requirement SpecificationSoftware Requirement Specification
Software Requirement SpecificationVishal Singh
 
Issues in knowledge representation
Issues in knowledge representationIssues in knowledge representation
Issues in knowledge representationSravanthi Emani
 

Viewers also liked (20)

Virtual Memory and Paging
Virtual Memory and PagingVirtual Memory and Paging
Virtual Memory and Paging
 
The Internals of "Hello World" Program
The Internals of "Hello World" ProgramThe Internals of "Hello World" Program
The Internals of "Hello World" Program
 
Data structure lecture 1
Data structure   lecture 1Data structure   lecture 1
Data structure lecture 1
 
Linkers And Loaders
Linkers And LoadersLinkers And Loaders
Linkers And Loaders
 
Program Structure in GNU/Linux (ELF Format)
Program Structure in GNU/Linux (ELF Format)Program Structure in GNU/Linux (ELF Format)
Program Structure in GNU/Linux (ELF Format)
 
PE File Format
PE File FormatPE File Format
PE File Format
 
04 Cache Memory
04  Cache  Memory04  Cache  Memory
04 Cache Memory
 
Paging
PagingPaging
Paging
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Software engineering introduction
Software engineering introductionSoftware engineering introduction
Software engineering introduction
 
8 memory management strategies
8 memory management strategies8 memory management strategies
8 memory management strategies
 
Virtual memory
Virtual memoryVirtual memory
Virtual memory
 
Virtual memory
Virtual memoryVirtual memory
Virtual memory
 
Coding
CodingCoding
Coding
 
Knowledge Representation in Artificial intelligence
Knowledge Representation in Artificial intelligence Knowledge Representation in Artificial intelligence
Knowledge Representation in Artificial intelligence
 
Memory management
Memory managementMemory management
Memory management
 
Knowledge representation in AI
Knowledge representation in AIKnowledge representation in AI
Knowledge representation in AI
 
Software Requirement Specification
Software Requirement SpecificationSoftware Requirement Specification
Software Requirement Specification
 
Issues in knowledge representation
Issues in knowledge representationIssues in knowledge representation
Issues in knowledge representation
 
Computer memory
Computer memoryComputer memory
Computer memory
 

Similar to OS Memory Management Techniques

Similar to OS Memory Management Techniques (20)

OSCh9
OSCh9OSCh9
OSCh9
 
Ch9 OS
Ch9 OSCh9 OS
Ch9 OS
 
OS_Ch9
OS_Ch9OS_Ch9
OS_Ch9
 
Paging +Algorithem+Segmentation+memory management
Paging +Algorithem+Segmentation+memory managementPaging +Algorithem+Segmentation+memory management
Paging +Algorithem+Segmentation+memory management
 
Memory management
Memory managementMemory management
Memory management
 
UNIT-2 OS.pptx
UNIT-2 OS.pptxUNIT-2 OS.pptx
UNIT-2 OS.pptx
 
Virtual Memory
Virtual MemoryVirtual Memory
Virtual Memory
 
Chapter 9 OS
Chapter 9 OSChapter 9 OS
Chapter 9 OS
 
Os unit 2
Os unit 2Os unit 2
Os unit 2
 
Os unit 3
Os unit 3Os unit 3
Os unit 3
 
Unit 5Memory management.pptx
Unit 5Memory management.pptxUnit 5Memory management.pptx
Unit 5Memory management.pptx
 
unit5_os (1).pptx
unit5_os (1).pptxunit5_os (1).pptx
unit5_os (1).pptx
 
Memory management Assignment Help
Memory management Assignment HelpMemory management Assignment Help
Memory management Assignment Help
 
Opetating System Memory management
Opetating System Memory managementOpetating System Memory management
Opetating System Memory management
 
Operating system Memory management
Operating system Memory management Operating system Memory management
Operating system Memory management
 
Chapter 8 - Main Memory
Chapter 8 - Main MemoryChapter 8 - Main Memory
Chapter 8 - Main Memory
 
Virtual Memory
Virtual MemoryVirtual Memory
Virtual Memory
 
Ch8
Ch8Ch8
Ch8
 
virtual memory
virtual memoryvirtual memory
virtual memory
 
Memory Management
Memory ManagementMemory Management
Memory Management
 

Recently uploaded

USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...Postal Advocate Inc.
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxCarlos105
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxAnupkumar Sharma
 
Judging the Relevance and worth of ideas part 2.pptx
Judging the Relevance  and worth of ideas part 2.pptxJudging the Relevance  and worth of ideas part 2.pptx
Judging the Relevance and worth of ideas part 2.pptxSherlyMaeNeri
 
ENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomnelietumpap1
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxAshokKarra1
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Jisc
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYKayeClaireEstoconing
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONHumphrey A Beña
 
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxGrade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxChelloAnnAsuncion2
 
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfphamnguyenenglishnb
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17Celine George
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Celine George
 

Recently uploaded (20)

USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
 
Judging the Relevance and worth of ideas part 2.pptx
Judging the Relevance  and worth of ideas part 2.pptxJudging the Relevance  and worth of ideas part 2.pptx
Judging the Relevance and worth of ideas part 2.pptx
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
ENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choom
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptx
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
 
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxGrade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
 
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
 

OS Memory Management Techniques

  • 1. Operating System-Memory Management by Vishal Singh (Vishalchd11@yahoo.com)
  • 2. Why Memory management ? 1. To ensure protection of different processes from each other (so that they do not interfere with each other’s operations). 2. To place the programs in memory (such that memory is utilized to its fullest extent.
  • 3. Logical vs. physical address space ► A logical address is the address of an instruction or data as used by a program. ► A physical address is the effective memory address of an instruction or data i.e. it is the address obtained after binding of logical addresses has been done.
  • 5. Relocation register ► Relocation register is a special register in the CPU used for program relocation means mapping of logical addresses used by the program to physical addresses of the system’s main memory
  • 6. Storage Allocation and Management Techniques The Storage allocation can be of two types: (i) Contiguous storage allocation. (ii) Non-contiguous storage allocation.
  • 7. Contiguous Storage Allocation ► Contiguous storage allocation implies that a program’s data and instructions are assured to occupy a single contiguous memory area. ► It is further subdivided into Fixed-partition storage allocation strategy and variable- partition storage allocation strategy.
  • 8. 1. Fixed-partition contiguous storage allocation ► processes with small address space use small partitions and processes with large address space use large partitions. This is known as fixed partition contiguous storage allocation.
  • 9.
  • 10. 2. Variable - partition contiguous storage allocation This notion is derived from parking of vehicles on the sides of streets where the one who manages to enter will get the space. Two vehicles can leave a space between them that cannot be used by any vehicle. This means that whenever a process needs memory, a search for the space needed by it, is done. If contiguous space is available to accommodate that process, then the process is loaded into memory.
  • 11. External Fragmentation ► This phenomenon of entering and leaving the memory can cause the formation of unusable memory holes (like the unused space between two vehicles). This is known as External Fragmentation.
  • 12. Three strategies that can be used to allocate memory to Variable - partition They are the following: 1. Best - Fit 2. Worst - fit 3. First - fit
  • 13. Best - Fit - chooses a partition that is smallest and whose size is greater than equal to k. It leaves small-sized unusable partitions or holes.
  • 14. First - fit - chooses the first partition whose size is greater than equal to k.
  • 15. Worst - fit - chooses the largest partition and allocates it to process p. It can leave bigger unusable partitions.
  • 16. Compaction means to move the processes in the memory in such a way that scattered pieces of unused (free) memory can be placed together so that any other process demanding contiguous memory for it can use it.
  • 17. Non-contiguous Storage Allocation ► To resolve the problem of external fragmentation and to enhance the degree of multiprogramming to a greater extent, it was decided to sacrifice the simplicity of allocating contiguous memory to every process. It was decided to have a non-contiguous physical address space of a process so that a process could be allocated memory wherever it was available.
  • 18. Non-contiguous Storage Allocation There are 2 techniques for non-contiguous allocation: 1. Paging 2. Segmentation
  • 19. 1. Paging ► In this approach,physical memory is divided into fixed-size blocks called frames and the logical memory is divided into the fixed-sized blocks called pages. The size of a page is same as that of frame. The key idea of this method is to place the pages of a process into the available frames of memory, whenever, this process is to be executed. The address mapping is done by Page table.
  • 21. It works as: Translate logical address 13 = 01101 in binary Offset = 01 in binary or 1 in decimal Page no. = 011 in binary or 3 in decimal Physical address = pageframe*pagesize + offset i.e. 2*4+1 = 9 (which is the real address of page containing character “n” in the main memory)
  • 22. Problem with paging ► It uses a page table per process for translating logical to physical address space. A basic issue associated with the use of page table is, that the look up in the page table should be very fast (which is generally slow), as it is done on every memory reference. ► So to make the look up time less, caching is used. In this case, the specific cache device is called a translation look aside buffer (TLB).
  • 23. Translation look aside buffer (TLB). ► The TLB contains a set of entries, each of which contains a page number, the corresponding frame number, and the protection bits. ► So if we use TLB, then mapping is done by TLB and we generally find the entry in TLB but in case the entry is not found in TLB than we have a TLB miss and finally we go to page table.
  • 24. Segmentation ► segmentation is another technique for the noncontiguous storage allocation. It is different from paging as it supports users’ view of his program. ► For a programmer it might be more relevant to divide the logical address space of his program into variable sized segments (with respect to his view of main program, subroutines, data, etc.) than to divide it into fixed size pages. Such variable sized segments, which are a collection of logically related information, are the basis of segmentation technique.
  • 26. Virtual Memory ► Virtual memory is a technique of executing program instructions that may not fit entirely in system memory. This is done by calling instructions as and when the application requires it. Virtual memory is implemented by using secondary storage to augment the main memory. Data is transferred from secondary to main storage as and when necessary and the data modified is written back to the secondary storage according to a predetermined algorithm.
  • 27. Swapping ► Swapping is the technique of temporarily removing inactive programs from the main memory of a computer system. An inactive program is one that is neither executing nor performing an I/O operation. ► This may also happen when it is desired to place a higher-priority process in the memory. A lower priority process may be swapped out so that higher-priority process may be loaded and executed.
  • 28.
  • 29. Demand Paging ► In virtual memory system, demand paging is a type of swapping in which pages of programs are not copied from disk to main memory until they are needed for execution. ► In demand paging, virtual address (logical address) is accessed by CPU, the corresponding page number is looked up in the page table and if it shows that currently this page is not in main memory, then this page must be brought into the main-memory.
  • 30. ► A page fault occurs when an invalid page is addressed. Page fault must be followed by swapping-in the page (demanded just now by the CPU) from disk to main-memory or a trap should be generated to the operating system if the page being demanded is not within the logical address space of the process. To determine whether the reference to the requested page is within the logical address space or not, an internal table may be consulted
  • 31.
  • 32.
  • 33. Pure Demand Paging ► Pure demand paging is the form of demand paging in which not even a single page is loaded into memory, initially. Thus, the very first instruction causes a page fault in this case. This kind of demand paging may significantly decrease the performance of a computer system by generally increasing the effective access time of memory.
  • 34. Page Replacement ► Once the main memory fills up, a page must be swapped out to make room for any pages to be swapped in. This is known as page replacement. ► We have page replacement algorithms for page replacement purpose, which are as follows:
  • 35. 1. The optimal page replacement algorithm 2. The first-in, first-out (FIFO) page replacement algorithm 3. The second chance page replacement algorithm 4. The least recently used (LRU) page replacement algorithm 5. Simulating LRU in Software (Not frequently used algorithm) 6. The Working Set Page Replacement Algorithm