Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

vi50_map(3)

vi50_open(3)

xvi50(7)



  vi50_unmap(3)                       CLIX                       vi50_unmap(3)



  NAME

    vi50_unmap - Unmaps the VI50 space mapped by the user

  LIBRARY

    Intergraph Device Library (libix.a)

  SYNOPSIS

    #include <sys/xio/xerr.h>

    int vi50_unmap(
      int channel ,
      char *user_virt );

  PARAMETERS

    channel
           Specifies the VI50 channel.

    user_virt
           Specifies the user virtual address that was previously mapped to
           VI50 VME address space.

  DESCRIPTION

    The vi50_unmap() function unmaps the space specified by user_virt.  The
    space must have been previously mapped using vi50_map().

  NOTES

    The vi50_unmap() function cannot be used to free process page tables that
    map the VME address space.  This function is used only for freeing
    hardware resources.  Thus, it is possible for a process to exceed its
    allowed process space by calling vi50_map() repeatedly, regardless of
    whether vi50_unmap() is called.

    There should be ample resources to allow a process to map all of the VME
    address space for each available EVME swap mode.  We recommend that a
    process open the device, map the space it needs, perform processing, close
    the device, and exit.  This procedure avoids problems due to process space
    depletion.

  RETURN VALUES

    The vi50_unmap() function returns a value of 0 if successful.  If not
    successful, one of the failure codes listed in the ERRORS section is
    returned.

  ERRORS



  2/94 - Intergraph Corporation                                              1






  vi50_unmap(3)                       CLIX                       vi50_unmap(3)



    The vi50_unmap() function fails if one of the following is true:

    [XIO_FAILURE]
           The system does not contain the driver needed to support the
           request.

    [VI50_INVALID_DEVICE]
           There is no hardware corresponding to the channel.

    [VI50_NOT_OWNER]
           The device is not open.

    [VI50_NO_ACCESS]
           The requesting process does not have access to the device specified
           by channel.

    [VI50_COPY_FAIL]
           The driver could not copy input parameters into kernel space

    [VI50_SPACE_NOT_MAPPED]
           The user has not previously mapped the space given by user_virt.

  RELATED INFORMATION

    Functions:  vi50_map(3), vi50_open(3)

    Files:  xvi50(7)



























  2                                              Intergraph Corporation - 2/94




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