Top Banner
ITFN 2601 Introduction to Operating Systems Lecture 16 Segmentation
12
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: ITFN 2601 Introduction to Operating Systems Lecture 16 Segmentation.

ITFN 2601Introduction to Operating

Systems

Lecture 16

Segmentation

Page 2: ITFN 2601 Introduction to Operating Systems Lecture 16 Segmentation.

Segmentation vs Paging?

Paging is incidental

Page-data is heterogeneous

Statically Sized

Segments are intentional

Segment data is homogenous

Dynamically Sized

Page 3: ITFN 2601 Introduction to Operating Systems Lecture 16 Segmentation.
Page 4: ITFN 2601 Introduction to Operating Systems Lecture 16 Segmentation.

Pure Segmentation

Segment size varies and changesExternal Fragmentation

Also called “Checkerboarding”Swapping large segments for smallResolution: Compaction

Page 5: ITFN 2601 Introduction to Operating Systems Lecture 16 Segmentation.
Page 6: ITFN 2601 Introduction to Operating Systems Lecture 16 Segmentation.

MULTICS Implementation

Similar to Multi-Level PagingAddress contains Segment # for tableSegment table holds Segment DescriptorsDescriptor contains page table locationStandard Page Table

Has 218 segments 216 Pages With 36-bit entries234 Total Pages

Page 7: ITFN 2601 Introduction to Operating Systems Lecture 16 Segmentation.

MULTICS Segment Descriptor

Page Table addressSegment SizeScale and Paged bits

Page 8: ITFN 2601 Introduction to Operating Systems Lecture 16 Segmentation.

Multics Lookup

Page 9: ITFN 2601 Introduction to Operating Systems Lecture 16 Segmentation.

Pentium Implementation

Local/Global Descriptor TableLocal contains program informationGlobal is OS information3-level Paging (Segment +2-level Virtual)

213 Global + 213 Local (per Program) Segments214 Total Segments per program232 Pages with 32-bit entries246 Total Pages

Page 10: ITFN 2601 Introduction to Operating Systems Lecture 16 Segmentation.

Pentium Code Descriptor

In-memorySystem or Application segmentType & Protection (Code/Data)Segment Scale (16-bits or all 32?)

Page 11: ITFN 2601 Introduction to Operating Systems Lecture 16 Segmentation.

Pentium 2-level Paging

Page 12: ITFN 2601 Introduction to Operating Systems Lecture 16 Segmentation.

Pentium Protection

2-bit Protection EntryAccess granted to all

higher levels00 (0) Can access all11 (3) Can access 3

Easy to decide access rights

Must make paths for system calls