SlideShare a Scribd company logo
Segmentation

CS 537 – Introduction to Operating Systems
Segmentation
• Segmentation is a technique for breaking memory
  up into logical pieces
• Each “piece” is a grouping of related information
   –   data segments for each process
   –   code segments for each process
   –   data segments for the OS
   –   etc.
• Like paging, use virtual addresses and use disk to
  make memory look bigger than it really is
• Segmentation can be implemented with or without
  paging
Segmentation

      P1 data                              P2 code

                     print
                     function
                                     P2 data
   P1 code



OS Code             OS data               OS stack


             logical address space
Addressing Segments
• Let’s first assume no paging in the system
• User generates logical addresses
• These addresses consist of a segment number and
  an offset into the segment
• Use segment number to index into a table
• Table contains the physical address of the start of
  the segment
   – often called the base address
• Add the offset to the base and generate the
  physical address
   – before doing this, check the offset against a limit
   – the limit is the size of the segment
Addressing Segments

                                     limit         base
    S             o

logical address


                                          segment table




                                    yes                   Physical Address
                        o < limit                    +

                        no

                         error
Segmentation Hardware
• Sounds very similar to paging
• Big difference – segments can be variable in size
• As with paging, to be effective hardware must be
  used to translate logical address
• Most systems provide segment registers
• If a reference isn’t found in one of the segment
  registers
   – trap to operating system
   – OS does lookup in segment table and loads new
     segment descriptor into the register
   – return control to the user and resume
• Again, similar to paging
Protection and Sharing
• Like page tables, each process usually gets
  its own segment table
• Unlike page tables, there usually exists a
  global segment table for everyone
  – this, however, is usually used by OS
• Access rights for segment are usually
  included in table entry
• Multiple processes can share a segment
Protection and Sharing

 limit base                   200
0 1000 200                   1200
1 3500 9000
                             2000
    LDT        limit base
                             2300
              0 500   2500   2500
              1 9000 20000   3000

                  GDT        9000
 limit base
0 1000 200
1 300 2000
                             12500
    LDT
Segmentation Issues
• Entire segment is either in memory or on
  disk
• Variable sized segments leads to external
  fragmentation in memory
• Must find a space big enough to place
  segment into
• May need to swap out some segments to
  bring a new segment in
Segmentation with Paging
• Most architectures support segmentation and
  paging
• Basic idea,
   – segments exist in virtual address space
   – base address in segment descriptor table is a virtual
     address
   – use paging mechanism to translate this virtual address
     into a physical address
• Now an entire segment does not have to be in
  memory at one time
   – only the part of the segment that we need will be in
     memory
Linear Address
• The base address gotten from the segment
  descriptor table is concatenated with the
  offset
• This new address is often referred to as a
  linear address
• This is the address that is translated by the
  paging hardware
virtual address from user
      descriptor              offset




             limit   base                     +




             segment table

                 linear address   directory        page        offset
                                                                        page frame
                 PT directory                     page table




directory base

More Related Content

PPTX
Paging and segmentation
PPTX
Presentation on Segmentation
PPTX
Paging and Segmentation
PPT
Os Swapping, Paging, Segmentation and Virtual Memory
PDF
Main Memory
PPTX
Segmentation in Operating Systems.
PPT
Paging and Segmentation
PPT
Ch9 OS
 
Paging and segmentation
Presentation on Segmentation
Paging and Segmentation
Os Swapping, Paging, Segmentation and Virtual Memory
Main Memory
Segmentation in Operating Systems.
Paging and Segmentation
Ch9 OS
 

What's hot (20)

PPT
Memory+management
PPT
Memory management
PPTX
Paging and Segmentation in Operating System
PPT
Csc4320 chapter 8 2
PPT
Memory Management
PPT
Mca ii os u-4 memory management
PPTX
Memory management
PPT
Computer memory management
PPTX
Paging,Segmentation & Segment with Paging
PPTX
Introduction of Memory Management
PPTX
Combined paging and segmentation
PPT
34 single partition allocation
PPTX
Operating system paging and segmentation
PDF
Memory Management
PPTX
Memory management
PPTX
Operation System
PPT
Memory management
PPTX
Memory management
Memory+management
Memory management
Paging and Segmentation in Operating System
Csc4320 chapter 8 2
Memory Management
Mca ii os u-4 memory management
Memory management
Computer memory management
Paging,Segmentation & Segment with Paging
Introduction of Memory Management
Combined paging and segmentation
34 single partition allocation
Operating system paging and segmentation
Memory Management
Memory management
Operation System
Memory management
Memory management
Ad

Similar to Segmentation geekssay.com (20)

PPT
37 segmentation
DOCX
PAGIN AND SEGMENTATION.docx
PPT
unit-4 class (2).ppt,Memory managements part-1
PPTX
Segmentation in operating systems
PPTX
ppt on Segmentation in operationg system
PPTX
Paging & segmentation; advantages and disadvantage
PDF
Memory Management Strategies - III.pdf
PPT
Segmentation
PPTX
VIRTUAL MEMORY
PPT
Cs416 08 09a
PPTX
Paging +Algorithem+Segmentation+memory management
PPT
Chapter 2 part 1
PPTX
Main Memory
PPTX
Unit 5Memory management.pptx
PDF
CSI-503 - 8.Paging and Segmentation
PPT
Segmentation with paging methods and techniques
PPT
virtual memory
37 segmentation
PAGIN AND SEGMENTATION.docx
unit-4 class (2).ppt,Memory managements part-1
Segmentation in operating systems
ppt on Segmentation in operationg system
Paging & segmentation; advantages and disadvantage
Memory Management Strategies - III.pdf
Segmentation
VIRTUAL MEMORY
Cs416 08 09a
Paging +Algorithem+Segmentation+memory management
Chapter 2 part 1
Main Memory
Unit 5Memory management.pptx
CSI-503 - 8.Paging and Segmentation
Segmentation with paging methods and techniques
virtual memory
Ad

More from Hemant Gautam (8)

PPS
Make a fool geekssay.com sharing
PPS
1 men die-younger geekssay.com sharing
PPT
Shopping cart project geekssay.com
PPT
Atm traffic management geekssay.com
PPT
Disk scheduling geekssay.com
PPT
Kruskals prims shared by: geekssay.com
PPT
Knapsack Algorithm www.geekssay.com
PPTX
College Monitoring system BY: Geekssay.com
Make a fool geekssay.com sharing
1 men die-younger geekssay.com sharing
Shopping cart project geekssay.com
Atm traffic management geekssay.com
Disk scheduling geekssay.com
Kruskals prims shared by: geekssay.com
Knapsack Algorithm www.geekssay.com
College Monitoring system BY: Geekssay.com

Recently uploaded (20)

PDF
Origin of periodic table-Mendeleev’s Periodic-Modern Periodic table
PPTX
Institutional Correction lecture only . . .
PPTX
human mycosis Human fungal infections are called human mycosis..pptx
PDF
Complications of Minimal Access Surgery at WLH
PDF
Classroom Observation Tools for Teachers
PDF
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 9 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PPTX
Cell Types and Its function , kingdom of life
PPTX
Week 4 Term 3 Study Techniques revisited.pptx
PDF
Basic Mud Logging Guide for educational purpose
PDF
2.FourierTransform-ShortQuestionswithAnswers.pdf
PDF
01-Introduction-to-Information-Management.pdf
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PDF
FourierSeries-QuestionsWithAnswers(Part-A).pdf
PPTX
Microbial diseases, their pathogenesis and prophylaxis
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PDF
STATICS OF THE RIGID BODIES Hibbelers.pdf
PDF
102 student loan defaulters named and shamed – Is someone you know on the list?
PDF
Microbial disease of the cardiovascular and lymphatic systems
PDF
RMMM.pdf make it easy to upload and study
Origin of periodic table-Mendeleev’s Periodic-Modern Periodic table
Institutional Correction lecture only . . .
human mycosis Human fungal infections are called human mycosis..pptx
Complications of Minimal Access Surgery at WLH
Classroom Observation Tools for Teachers
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 9 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
Abdominal Access Techniques with Prof. Dr. R K Mishra
Cell Types and Its function , kingdom of life
Week 4 Term 3 Study Techniques revisited.pptx
Basic Mud Logging Guide for educational purpose
2.FourierTransform-ShortQuestionswithAnswers.pdf
01-Introduction-to-Information-Management.pdf
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
FourierSeries-QuestionsWithAnswers(Part-A).pdf
Microbial diseases, their pathogenesis and prophylaxis
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
STATICS OF THE RIGID BODIES Hibbelers.pdf
102 student loan defaulters named and shamed – Is someone you know on the list?
Microbial disease of the cardiovascular and lymphatic systems
RMMM.pdf make it easy to upload and study

Segmentation geekssay.com

  • 1. Segmentation CS 537 – Introduction to Operating Systems
  • 2. Segmentation • Segmentation is a technique for breaking memory up into logical pieces • Each “piece” is a grouping of related information – data segments for each process – code segments for each process – data segments for the OS – etc. • Like paging, use virtual addresses and use disk to make memory look bigger than it really is • Segmentation can be implemented with or without paging
  • 3. Segmentation P1 data P2 code print function P2 data P1 code OS Code OS data OS stack logical address space
  • 4. Addressing Segments • Let’s first assume no paging in the system • User generates logical addresses • These addresses consist of a segment number and an offset into the segment • Use segment number to index into a table • Table contains the physical address of the start of the segment – often called the base address • Add the offset to the base and generate the physical address – before doing this, check the offset against a limit – the limit is the size of the segment
  • 5. Addressing Segments limit base S o logical address segment table yes Physical Address o < limit + no error
  • 6. Segmentation Hardware • Sounds very similar to paging • Big difference – segments can be variable in size • As with paging, to be effective hardware must be used to translate logical address • Most systems provide segment registers • If a reference isn’t found in one of the segment registers – trap to operating system – OS does lookup in segment table and loads new segment descriptor into the register – return control to the user and resume • Again, similar to paging
  • 7. Protection and Sharing • Like page tables, each process usually gets its own segment table • Unlike page tables, there usually exists a global segment table for everyone – this, however, is usually used by OS • Access rights for segment are usually included in table entry • Multiple processes can share a segment
  • 8. Protection and Sharing limit base 200 0 1000 200 1200 1 3500 9000 2000 LDT limit base 2300 0 500 2500 2500 1 9000 20000 3000 GDT 9000 limit base 0 1000 200 1 300 2000 12500 LDT
  • 9. Segmentation Issues • Entire segment is either in memory or on disk • Variable sized segments leads to external fragmentation in memory • Must find a space big enough to place segment into • May need to swap out some segments to bring a new segment in
  • 10. Segmentation with Paging • Most architectures support segmentation and paging • Basic idea, – segments exist in virtual address space – base address in segment descriptor table is a virtual address – use paging mechanism to translate this virtual address into a physical address • Now an entire segment does not have to be in memory at one time – only the part of the segment that we need will be in memory
  • 11. Linear Address • The base address gotten from the segment descriptor table is concatenated with the offset • This new address is often referred to as a linear address • This is the address that is translated by the paging hardware
  • 12. virtual address from user descriptor offset limit base + segment table linear address directory page offset page frame PT directory page table directory base