Browse Prior Art Database

Uniqueness of the AIX Storage Management Design

IP.com Disclosure Number: IPCOM000110178D
Original Publication Date: 1992-Sep-01
Included in the Prior Art Database: 2005-Mar-25
Document File: 2 page(s) / 137K

Publishing Venue

IBM

Related People

Bohrer, KA: AUTHOR [+2]

Abstract

The AIX* Storage Management design protects the kernel from data overruns, validates input data, allows for multiple heaps and allocates from a static area. The Storage Management Design rises above the ordinary allocation scheme by creating a very protective and closely monitored environment for the allocation of data areas to kernel processes. The elements of the design that make the AIX scheme unique from all other UNIX** based operating systems will be addressed in this article. Definitions: Kernel: The base Operating System responsible for the control, access and allocation of all hardware resources is the kernel.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Uniqueness of the AIX Storage Management Design

       The AIX* Storage Management design protects the kernel
from data overruns, validates input data, allows for multiple heaps
and allocates from a static area.  The Storage Management Design
rises above the ordinary allocation scheme by creating a very
protective and closely monitored environment for the allocation of
data areas to kernel processes.  The elements of the design that make
the AIX scheme unique from all other UNIX** based operating systems
will be addressed in this article.
Definitions:
Kernel:
      The base Operating System responsible for the control, access
and allocation of all hardware resources is the kernel.  The kernel
is a collection of routines and extensions that include runtime
services used only by other parts of the kernel, and SVCs (supervisor
calls) which are made from user mode and requests the kernel to
perform a particular task for the user level program.
Virtual Memory Segment:
      In a virtual memory system, the memory is divided up into
segments. Each such segment is 256 MB. Each segment in the system
will have a unique segment identifier.  The system has 16 segment
registers to handle addressability to the various segments.
Address Space:
      The kernel can access any segment it wishes, but the primary
segments of the kernel's address space are the kernel segment in
which the code for the kernel is located and the kernel extension
segment which contains mostly large data structures used to maintain
the system.
Storage Management:
      Storage Management is the collection of policies, resources
and routines that control the allocation and deallocation of memory.
A Heap:
      A heap is contiguous memory from which storage is allocated and
freed. There must be a way to describe the storage within a heap and
to determine what storage is allocated and what storage should be
allocated upon the next request for memory.  Heaps are of a known and
static size and begin on page boundaries.
Descriptor:
      A descriptor is a structure used by the allocation routine to
describe areas of memory. The descriptor will have the size of the
area it describes along with the starting address for the area. A bit
in the size field is used to determine if the area has been allocated
or is free and can be allocated to another process.
Heap Anchor:
      The heap anchor is a structure which describes the heap.  Each
heap has one anchor.  The anchor describes where the heap begins
(th...