Browse Prior Art Database

OS/2 Application Performance Gains through Selector Caching

IP.com Disclosure Number: IPCOM000103597D
Original Publication Date: 1993-Jan-01
Included in the Prior Art Database: 2005-Mar-18
Document File: 2 page(s) / 74K

Publishing Venue

IBM

Related People

Cox, D: AUTHOR [+4]

Abstract

Disclosed is a means to improve OS/2* application performance by caching memory segment selectors as in use and those available for reuse as free in separate cache control tables.

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

OS/2 Application Performance Gains through Selector Caching

       Disclosed is a means to improve OS/2* application
performance by caching memory segment selectors as in use and those
available for reuse as free in separate cache control tables.

      Caching shared memory selectors and reusing them is a good way
to achieve performance gains in applications built to run on OS/2.
However, whenever a cached memory selector has been located in the
free cache control table, the access to it must first be validated
for the process which will be using it.

      Build a Memory Management subsystem which will provide a layer
of independence between application programs and the OS/2 operating
system which will keep track of memory selectors allocated by the
calling application.

      This subsystem will keep track of each memory segment allocated
by an application in a memory pool.  This memory pool will be
identified by a handle, which the application will pass to the Memory
Management subsystem with each request to allocate or free a memory
segment.

      This subsystem will keep a list of all in use memory segment
selectors and a list of all free memory segment selectors which are
potentially available for reuse.  Separate lists will be maintained
for shared memory and non-shared or private memory.

      It is possible that a memory segment could have been removed
from the system and may no longer be valid. This occurs if a shared
memory segment was freed outside the Memory Management subsystem
controls.  Therefore, there should be a way to remove that...