{  This deck mmt$manage_memory_utility contains types defined for the Manage Memory Utility.

  TYPE
    mmt$manage_memory_utility = record
      gpql: mmt$mmu_gpql_default,
      ma: mmt$mmu_ma_data,
    recend,

    mmt$mmu_gpql_default = mmt$global_page_queue_list,

    mmt$mmu_ma_data = array [mmt$mmu_memory_attributes] of mmt$mmu_ma_info,

    mmt$mmu_ma_default = array [mmt$mmu_memory_attributes] of integer,

    mmt$mmu_ma_info = record
      default: integer,
      case value_type: mmt$mmu_value_types of
      = mmc$mmu_mvt_integer =
        integer_p: ^integer,
      = mmc$mmu_mvt_byte =
        byte_p: ^0 .. 255,
      casend,
    recend,

    mmt$mmu_ma_values = array [mmt$mmu_memory_attributes] of integer,

    mmt$mmu_memory_attributes = (
{      mmv$age_interval_ceiling         } mmc$mmu_ma_aic,
{      mmv$age_interval_floor           } mmc$mmu_ma_aif,
{      mmv$aggressive_aging_level       } mmc$mmu_ma_aal,
{      mmv$aggressive_aging_level_2     } mmc$mmu_ma_aal2,
{      mmv$aging_algorithm              } mmc$mmu_ma_aa,
{      mmv$avail_modified_queue_max     } mmc$mmu_ma_amqmax,
{      mmv$write_aged_out_pages         } mmc$mmu_ma_amqmin,
{      mmv$avail_mod_q_floor_min        } mmc$mmu_ma_amqfm,
{      mmv$avail_mod_q_decr_per_task    } mmc$mmu_ma_amqdpt,
{      mmv$avail_mod_waitq_dequeue_int  } mmc$mmu_ma_amwqdi,
{      mmv$mem_wait_q_dequeue_interval  } mmc$mmu_ma_mwqdi,
{      mmv$io_error_q_age_interval      } mmc$mmu_ma_ieqai,
{      mmv$jws_queue_age_interval       } mmc$mmu_ma_jwsai,
{      mmv$min_avail_pages              } mmc$mmu_ma_minap,
{      mmv$page_streaming_random_limit  } mmc$mmu_ma_psrl,
{      mmv$page_streaming_reads         } mmc$mmu_ma_psr,
{      mmv$page_streaming_prestream     } mmc$mmu_ma_psp,
{      mmv$page_streaming_threshold     } mmc$mmu_ma_pst,
{      mmv$page_streaming_transfer      } mmc$mmu_ma_psts,
{      mmv$periodic_call_interval       } mmc$mmu_ma_pci,
{      mmv$shared_queue_age_interval    } mmc$mmu_ma_swsai,
{      mmv$swapping_aic_modified        } mmc$mmu_ma_sam,
{      mmv$swapping_aic_unmodified      } mmc$mmu_ma_sau,
{      mmv$tick_time                    } mmc$mmu_ma_tt,
{      mmv$dynamic_available_floor      } mmc$mmu_ma_daf,
{      mmv$dynamic_avail_emergency_min  } mmc$mmu_ma_daem,
{      mmv$dynamic_available_max        } mmc$mmu_ma_damax,
{      mmv$dynamic_available_min        } mmc$mmu_ma_damin,
{      mmv$dynamic_neg_increment_max    } mmc$mmu_ma_dnim,
{      mmv$dynamic_pos_increment_max    } mmc$mmu_ma_dpim),

    mmt$mmu_reset_value_kind = (mmc$mmu_nominal_value, mmc$mmu_default_value, mmc$mmu_current_value,
          mmc$mmu_specified_value),

    mmt$mmu_queue_attributes = (mmc$mmu_age_interval_modified, mmc$mmu_age_interval_unmodified,
          mmc$mmu_minimum, mmc$mmu_maximum),

    mmt$mmu_reset_values = array [mmt$mmu_queue_attributes] of mmt$mmu_reset_value,

    mmt$mmu_reset_value = record
      case kind: mmt$mmu_reset_value_kind of
      = mmc$mmu_nominal_value =
        ,
      = mmc$mmu_default_value =
        ,
      = mmc$mmu_current_value =
        ,
      = mmc$mmu_specified_value =
        specified_value: 0 .. osc$max_page_frames,
      casend,
    recend,

    mmt$mmu_value_types = (mmc$mmu_mvt_integer, mmc$mmu_mvt_byte);

*copyc mmt$page_queue_list
