

{
{   The purpose of this procedure is to reset or initialize heap information. The parameters
{to this procedure are:
{ XHP: (type: ^ost$heap)
{ HEAP_LENGTH: (type: integer)
{ LOCK_OPTION: (type: boolean)
{ ALGORITHM: (type: 0 .. 255)
{
{   A new field was added to the type ost$hp_heap. An integer field (range 0 ..
{255), algorithm eliminates the need to check for a NIL pointer on allocates in MP,
{W, MP, JF, JP, TS, and TP. If a full heap is encountered, a system_error is call
{ed.  The new field retains the value of the algorithm passed as a parameter
{into osp$reset_heap.
{
{ Algorithm definitions:
{  0: Run with traps enabled.  Used only by PF catalogs.  Return NIL on full.
{  1: Run with traps disabled.  Used by everybody else.  Call system error on full.
{     This is the default used by hpp$initialize
{  2: Run with traps disabled.  Used by networks.  Return NIL on full.
