Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Allocating Heap and Stack Memory

IP.com Disclosure Number: IPCOM000122041D
Original Publication Date: 1991-Oct-01
Included in the Prior Art Database: 2005-Apr-04
Document File: 2 page(s) / 76K

Publishing Venue

IBM

Related People

Kaleda, LV: AUTHOR

Abstract

This invention relates to a computer-implemented method for allocating heap and stack portions of memory during runtime execution of compiled code. The method steps comprise: (a) synchronizing allocation of storage under the stack manager; and (b) releasing the allocation (re FREEMAIN) only after the call return of an executable compiled sequence.

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

Allocating Heap and Stack Memory

      This invention relates to a computer-implemented method
for allocating heap and stack portions of memory during runtime
execution of compiled code.  The method steps comprise: (a)
synchronizing allocation of storage under the stack manager; and (b)
releasing the allocation (re FREEMAIN) only after the call return of
an executable compiled sequence.

      In theory, user data areas are established without regard to
the pattern of code invocation and use.  In practice, those data
areas are more closely related.  This implies that the user data
areas and the linkage stack, which is used to control program
invocation and use, can be more closely related.

      This invention suggests that each linkage stack frame include
the information used to control user data areas. The stack manager
then uses this information to assist in allocating and deallocating
the user data areas in a user data stack.  This is in contrast to the
current methodologies used by PL/I, C, and APL, for example.  These
languages manage the user data areas independently of the stack
manager, and each language has developed its own approach for
management of this storage.

      Use of this invention would allow such languages to take
advantage of a consistent approach to user area management.  One
consistent approach allows the use of additional resources for
improvements, such as code optimization, because the cost is then
shared through use in multiple products.  Use of this invention would
also allow the programmer to use the regular stack manager for
control and management of the user data areas.  This would free the
programmer from managing the user data areas as a separate task
needing attention.  It would also replace 2 space managers (linkage
stack and user data) with just one, the linkage stack manager.

      The invention would not b...