codescracker


operating system os

OS Segmentation



« Previous Tutorial Next Tutorial »


Segments are completely independent address spaces that are provided to machine.

Each and every segment consists of a linear sequence of addresses, from 0 to maximum allowed.

Each segment length may be anything but from 0 to the maximum allowed.

The length of the segment may change during execution.

The stack segment length may be increased when something is pushed onto the stack and decreased whenever something is popped off the stack.

Different segments can grow/shrink without affecting one another because each segment constitutes a separate address space.

Segmentation also facilitates sharing procedures/data between some processes.

Consideration Paging Segmentation
Need the computer programmer be aware that this technique is being used ? No Yes
How many linear address spaces are there ? 1 Many
Can the total address space exceed the size of physical memory ? Yes Yes
Can procedures and data be distinguished and separately protected ? No Yes
Can tables whose size fluctuates be accommodated easily ? No Yes
Is sharing of procedures between users facilitated ? No Yes
Why was this technique invented ? To get a large linear address space To allow the programs and data to be broken up into logically independent address spaces and to aid sharing and protection

« Previous Tutorial Next Tutorial »




Tools
Calculator

Quick Links
Signup - Login - Give Online Test