Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ loader_kg_lookup(A) — Apollo Domain/OS SR10.3.5

Media Vault

Software Library

Restoration Projects

Artifacts Sought

LOADER_$KG_LOOKUP                 Domain/OS                  LOADER_$KG_LOOKUP


NAME
     loader_$kg_lookup - look up a symbol

SYNOPSIS (C)
     #include <apollo/base.h>
     #include <apollo/loader.h>

     loader_$sym_flags loader_$kg_lookup(
          char *global_name,
          short &name_length,
          long &global_size,
          loader_$kg_lookup_opts &lookup_options,
          void **global_address)

SYNOPSIS (Pascal)
     %include '/sys/ins/base.ins.pas';
     %include '/sys/ins/loader.ins.pas';

     function loader_$kg_lookup(
          in global_name: univ loader_$string ;
          in name_length: loader_$string_index;
          in global_size: integer32;
          in lookup_options: loader_$kg_lookup_opts;
          out global_address: univ_ptr): loader_$sym_flags;

DESCRIPTION
     Loader_$kg_lookup looks up the symbol named global_name in the Known Glo-
     bal Table (KGT) and returns its attributes.

     The attributes are returned in a small set that may contain a combination
     of the following elements:

          loader_$sym_loaded
               The symbol is currently loaded.

          loader_$sym_known
               The symbol is publically available.

          loader_$sym_dynamic
               The symbol will not be loaded until the symbol is executed.

          loader_$sym_function
               The symbol is known to be a function.

          loader_$sym_data
               The symbol is known to be a data symbol.

          loader_$sym_section
               The symbol is a section name.

     global_name
          The name of a symbol.

     name_length
          The number of bytes in global_name.

     global_size
          This argument can be used with lookup_options to restrict the domain
          of the search that loader_$kg_lookup performs.  If global_size is
          set to loader_$kg_symbol and loader_$kg_data_only is specified in
          lookup_options, then loader_$kg_lookup will search only for a data
          symbol with the name global_name.  If global_size is set to
          something other than loader_$kg_symbol and loader_$kg_data_only is
          specified in lookup_options, then loader_$kg_lookup will search only
          for a data section with the name global_name and size equal to or
          greater than the specified global_size.

     lookup_options

          loader_$kg_force_load
               Load symbols from shared libraries if not loaded already.

          loader_$kg_public_only
               Look up only symbols in the public address space and ignore
               privately installed symbols.

          loader_$kg_function_only
               Look up only symbols marked as functions.

          loader_$kg_data_only
               Look up only symbols marked as data.

     global_address
          The address of the global symbol or section.

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026