qnx_osinfo

Gamma: Version 4.0
Prev |  | Next

# `qnx_osinfo`

`qnx_osinfo` -- returns a class very similar to QNX 4 `struct_osinfo`.

## Syntax

    qnx_osinfo (node)

## Arguments

`node`

  The node to query.

## Returns

An instance of the class Osinfo, or nil on failure.

## Description

This function returns a class very similar to the QNX 4 `struct _osinfo`. It is currently only available in QNX 4. The instance variables of this class are:

- bootsrc a single integer value that is the ASCII value for the character 'F' for floppy, 'H' for hard, or 'N' for network. Use char() function to convert.

- cpu processor type, typically given as the last 3 digits (386,486,586,686,etc.)

- cpu_speed a measure of the CPU speed using a 16-bit algorithm. A classic PC/XT is 96. A 133MHz Pentium is approx. 18000-19000.

- fpu the floating point processor type given as the last 3 digits of the chip (387,487,587,687,etc.)

- freememk free memory in the system

- machine machine name

- max_nodes the number of nodes you are licensed for

- nodename logical node numberof this cpu

- num_handlers maximum number of interrupt handlers

- num_names maximum number of names

- num_procs mamimum number of processes (programs + virtual curcuits + proxies)

- num_sessions maximum number of sessions

- num_timers maximum number of timers

- pidmask process ID bit mask

- release a single number that is the ASCII equivalent of the release letter. Use char() function to convert.

- reserve64k Relocation offset

- sflags System flags, see below

- tick_size tick size, in microseconds

- timesel segment in which the time is kept

- totmemk total memory (kB) in the system

- version the QNX 4 version number * 100

- The following system flags are available: nil

- _PSF_PROTECTED The system is running in protected mode

- _PSF_NDP_INSTALLED An 80x87 numeric processor is installed

- _PSF_EMULATOR_INSTALLED An 80x87 emulator is running

- _PSF_EMU16_INSTALLED The 16-bit 80x87 emulator is running

- _PSF_EMU32_INSTALLED The 32-bit 80x87 emulator is running

- _PSF_APM_INSTALLED Advanced Power Management is running in the BIOS of this system

- _PSF_32BIT_KERNEL This system is running with a 32 bit kernel

- _PSF_PCI_BIOS This system has a PCI BIOS

- _PSF_32BIT Proc32 is running

- _PSF_RESERVE_DOS The lower 640k is reserved for DOS

- _PSF_RESERVE_DOS32 ???

## Example

        Gamma> sin = qnx_osinfo(0);
        <instance of Osinfo class>
        Gamma> char(sin.bootsrc);
        "H"
        Gamma> sin.cpu;
        586
        Gamma> sin.cpu_speed;
        18883
        Gamma> sin.freememk;
        18260
        Gamma> sin.machine;
        "PCI"
        Gamma> sin.max_nodes;
        34
        Gamma> sin.nodename;
        2
        Gamma> sin.num_handlers;
        64
        Gamma> sin.num_names;
        100
        Gamma> sin.num_procs;
        500
        Gamma> sin.num_sessions;
        64
        Gamma> sin.num_timers;
        125
        Gamma> sin.pidmask;
        511
        Gamma> char(sin.release);
        "G"
        Gamma> sin.reserve64k;
        0
        Gamma> sin.ticksize;
        9999
        Gamma> sin.totmemk;
        32384
        Gamma> sin.version / 100;
        4.23
        //These examples use loaded constants.  Any return value greater
        //than zero indicates a positive result.
        require_lisp("const/QNXOS");
        Gamma> sin.sflags & _PSF_PROTECTED;
        1
        Gamma> sin.sflags & _PSF_NDP_INSTALLED;
        2
        Gamma> sin.sflags & _PSF_EMULATOR_INSTALLED
        0
        Gamma> sin.sflags & _PSF_RESERVE_DOS
        0

## See Also

`qnx_osstat`

Prev | Home | Next
`qnx_name_locate` | Up | `qnx_osstat`

Copyright 1995-2002 by Cogent Real-Time Systems, Inc.