Segments
Areas of memory.
Defined by the programmer.
Used for different purpose, such as code, data & stack.
1Registers of 80386Friday, August 22, 2014
Segment Descriptor
A segment is described by a special structure called as
segment descriptor.
Defined( Created) by the programmer.
Used for different purpose, such as code, data & stack.
Must be created for each segment.
2Registers of 80386Friday, August 22, 2014
Segment Descriptor Functions
Determines segment’s base address.
(Base Address- Starting Address of a segment, which can be
any arbitrary address in the 32-bit linear address space.)
Determines a segment’s size.
Determines a segments use.
Determines a segments privilege level.
3Registers of 80386Friday, August 22, 2014
Base Address of Segment
(0-FFFFFFFF)
Length of Segment
(0-FFFFFFFF)
Segment
Type
Privilege
Level
Miscellaneous
Fig1 :Segment Descriptor Fields
*****All this is to know about segment of memory
Segment Descriptor Defines
Base address(32 bit).
Segment Limit(20 bit).
Type of segment(4 bit).
Privilege level of segment(2 bits).
5Registers of 80386Friday, August 22, 2014
Descriptor Tables
The Segment descriptors that you define must be grouped
and placed one after the other in contiguous memory
locations.(Min – 0 & Max – 8192 descriptor tables)
This group Arrangement is known as descriptor tables.
6Registers of 80386Friday, August 22, 2014
Segment Descriptor1
Segment Descriptor2
Segment Descriptor3
Group Of Segment
Descriptor
.
.
.
Types of Descriptor Tables
Global Descriptor Table.
Local Descriptor Table.
Interrupt Descriptor Table.
Task State Segment Descriptor Table(TSS).
7Registers of 80386Friday, August 22, 2014
1. Global Descriptor Table(GTD).
Main, General Purpose table of Descriptor .
Used by all programs to reference segments of memory.
Contains description table about memory segments
CS,DS,SS & ES.
Maintains a list of most segments.
8Registers of 80386Friday, August 22, 2014
2. Local Descriptor Table(GTD).
Contains memory segment descriptors like size of memory,
access privilege.
Can be used in addition to the GTD to expand the number
of available descriptors.
Allocated to each task at time of multitasking.
3. Interrupt Descriptor Table(ITD).
Holds segment descriptors that define interrupts.
Maintains a list of interrupt service routines.
9Registers of 80386Friday, August 22, 2014
2. Local Descriptor Table(LTD).
Segments
Segments
Segments
Segments
Segments
Segments

Segments

  • 1.
    Segments Areas of memory. Definedby the programmer. Used for different purpose, such as code, data & stack. 1Registers of 80386Friday, August 22, 2014
  • 2.
    Segment Descriptor A segmentis described by a special structure called as segment descriptor. Defined( Created) by the programmer. Used for different purpose, such as code, data & stack. Must be created for each segment. 2Registers of 80386Friday, August 22, 2014
  • 3.
    Segment Descriptor Functions Determinessegment’s base address. (Base Address- Starting Address of a segment, which can be any arbitrary address in the 32-bit linear address space.) Determines a segment’s size. Determines a segments use. Determines a segments privilege level. 3Registers of 80386Friday, August 22, 2014
  • 4.
    Base Address ofSegment (0-FFFFFFFF) Length of Segment (0-FFFFFFFF) Segment Type Privilege Level Miscellaneous Fig1 :Segment Descriptor Fields *****All this is to know about segment of memory
  • 5.
    Segment Descriptor Defines Baseaddress(32 bit). Segment Limit(20 bit). Type of segment(4 bit). Privilege level of segment(2 bits). 5Registers of 80386Friday, August 22, 2014
  • 6.
    Descriptor Tables The Segmentdescriptors that you define must be grouped and placed one after the other in contiguous memory locations.(Min – 0 & Max – 8192 descriptor tables) This group Arrangement is known as descriptor tables. 6Registers of 80386Friday, August 22, 2014 Segment Descriptor1 Segment Descriptor2 Segment Descriptor3 Group Of Segment Descriptor . . .
  • 7.
    Types of DescriptorTables Global Descriptor Table. Local Descriptor Table. Interrupt Descriptor Table. Task State Segment Descriptor Table(TSS). 7Registers of 80386Friday, August 22, 2014
  • 8.
    1. Global DescriptorTable(GTD). Main, General Purpose table of Descriptor . Used by all programs to reference segments of memory. Contains description table about memory segments CS,DS,SS & ES. Maintains a list of most segments. 8Registers of 80386Friday, August 22, 2014
  • 9.
    2. Local DescriptorTable(GTD). Contains memory segment descriptors like size of memory, access privilege. Can be used in addition to the GTD to expand the number of available descriptors. Allocated to each task at time of multitasking. 3. Interrupt Descriptor Table(ITD). Holds segment descriptors that define interrupts. Maintains a list of interrupt service routines. 9Registers of 80386Friday, August 22, 2014
  • 10.