segments

Post on 11-Jul-2015

58 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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)

SegmentType

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 TablesThe 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 SegmentDescriptor

.

.

.

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).

top related