Browse Prior Art Database

Termination of a Pool of Memory Selectors with a Single API Call

IP.com Disclosure Number: IPCOM000108604D
Original Publication Date: 1992-Jun-01
Included in the Prior Art Database: 2005-Mar-22
Document File: 2 page(s) / 67K

Publishing Venue

IBM

Related People

Cox, D: AUTHOR [+3]

Abstract

This article describes a method for releasing memory back to the operating system in OS/2* applications using a single API call, and without requiring the application to keep track of each of the memory selectors it wishes to free.

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

Termination of a Pool of Memory Selectors with a Single API Call

       This article describes a method for releasing memory back
to the operating system in OS/2* applications using a single API
call, and without requiring the application to keep track of each of
the memory selectors it wishes to free.

      OS/2 Memory Management provides no mechanism to easily cleanup
multiple memory segments.  An application may request many memory
segments over time.  An application must keep track of each of these
memory segments, and make an API call to the system to free each one,
one at a time, when they are no longer needed.

      Due to the level of application code which would be required to
maintain proper memory management within an application, many
application programs simply allow the system to free associated
memory when a program is terminated.  This, however, causes unneeded
memory to remain in storage and can cause the OS/2 system to swap.
Additionally, segments which are shared reside in the LDT for each
Process in the system, causing additional performance overhead in
OS/2 if they are not removed when they are no longer needed.

      In order to overcome this and other related memory problems in
our application systems, OfficeVision*/2 (OV/2) Office built a Memory
Management subsystem, providing a layer of independence between
applications programs and the OS/2 operating system.  This subsystem
is described in (*).

      This subsystem was...