HP 3000 Manuals

Resource Management Programmer's Guide : COPYRIGHT NOTICE [ Resource Management Programmer's Guide ] MPE/iX 5.0 Documentation


Resource Management Programmer's Guide

Resource Management
Programmer's Guide 

Printed in U.S.A.

900 Series HP 3000 Computers
HP Part No.  32650-90024
Edition E1187
Printed Nov 1987

The information contained in this document is subject to change without
notice.

HEWLETT-PACKARD MAKES NO WARRANTY OF ANY KIND WITH REGARD TO THIS
MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Hewlett-Packard
shall not be liable for errors contained herein or for incidental or
consequential damages in connection with the furnishing, performance or
use of this material.

Hewlett-Packard assumes no responsibility for the use or reliability of
its software on equipment that is not furnished by Hewlett-Packard.

This document contains proprietary information which is protected by
copyright.  All rights are reserved.  No part of this document may be
photocopied,reproduced or translated to another language without the
prior written consent of Hewlett-Packard Company.

Æ 1987 by HEWLETT-PACKARD COMPANY

Æ 1980, 1984 AT&T Technologies

Printing History 

New editions are complete revisions of the manual.  Update packages,
which are issued between editions, contain additional and replacement
pages to be merged into the manual by the customer.  The date on the
title page and back cover of the manual changes only when a new edition
is published.  When an edition is reprinted, all the prior updates to the
edition are incorporated.  No information is incorporated into a
reprinting unless it appears as a prior update.

First Edition             | November 1987             | A.01.00

List of Effective Pages The List of Effective Pages gives the date of the
current edition, and lists the dates of all changed pages.  Unchanged
pages are listed as "ORIGINAL" .  Within the manual, any page changed
since the last edition is indicated by printing the date the changes were
made on the bottom of the page.  Changes are marked with a vertical bar
in the margin.  If an update is incorporated when an edition is
reprinted, these bars and dates remain.  No information is incorporated
into a reprinting unless it appears as a prior update.

First Edition                       | November 1987
Documentation Map 

[]
[]
Preface Resource Management Programmer's Guide (32650-90024) is written for an experienced programmer who has a working knowledge of MPE XL and is familiar with: * A text editor * At least one programming language * Compiling, linking, and executing a program on MPE XL This manual contains detailed instructions describing how you can use system intrinsics within your application to accomplish two resource management tasks available through MPE XL: * Managing Shared Resources with Resource Identification Numbers (RINs) * Dynamically loading procedures located in executable libraries (XLs) This manual is part of the MPE XL Programmer's Series. This series consists of the MPE XL Intrinsics Reference Manual (32650-90028) and a set of task-oriented programmer's guides. Refer to the MPE XL Programmer's Series Documentation Map for a description of how this manual relates to the rest of the series. This manual contains the following chapters: Chapter 1 | Introduction provides you with an | overview of the contents of this | manual. Chapter 2 | Managing Shared Resources with RINs | describes how you can use Resource | Identification Numbers (RINs) to | manage a specific resource shared | by a set of jobs or sessions, so | that no two jobs or sessions can | use the resource at the same time. Chapter 3 | Dynamic Loading of Library | Procedures describes how you can | dynamically bind and load a | procedure located in an executable | library (XL). Appendix A | Global RIN Program Example is an HP | Pascal/XL program illustrating how | you can use RIN management | intrinsics to guarantee exclusive | access to a selected record in a | shared file. Appendix B | Dynamic Loading Program Example is | an HP Pascal/XL program | illustrating how you use the | HPGETPROCPLABEL intrinsic to | dynamically load a procedure | located in an executable library. Conventions NOTATION | DESCRIPTION UPPERCASE | Within syntax statements, characters in | uppercase must be entered in exactly the order | shown, though you can enter them in either | uppercase or lowercase. For example: | | SHOWJOB | Valid entries: showjob ShowJob SHOWJOB | Invalid entries: shojwob ShoJob SHOW_JOB italics | Within syntax statements, a word in italics | represents a formal parameter or argument that | you must replace with an actual value. In the | following example, you must replace filename | with the name of the file you want to release: | | | RELEASE filename punctuation | Within syntax statements, punctuation | characters (other than brackets, braces, | vertical parallel lines, and ellipses) must be | entered exactly as shown. { } | | Within syntax statements, braces enclose | | required elements. When several elements | | within braces are stacked, you must select | | one. In the following example, you must | | { ON } | select ON or OFF: SETMSG { OFF} [ ] | Within syntax statements, brackets enclose | optional elements. In the following example, | brackets around ,TEMP indicate that the | parameter and its delimiter are optional: | | PURGE {filename} [,TEMP] | | When several elements with brackets are | | stacked, you can select any one of the | | elements or none. In the following example, | | you can select devicename or deviceclass or | | [ devicename ] | neither: SHOWDEV [ deviceclass] NOTATION | DESCRIPTION [...] | Within syntax statements, a horizontal | ellipsis enclosed in brackets indicates that | you can repeatedly select elements that appear | within the immediately preceding pair of | brackets or braces. In the following example, | you can select itemname and its delimiter zero | or more times. Each instance of itemname must | be preceded by a comma: | | [,itemname][...] | If a punctuation character precedes the | ellipsis, you must use that character as a | delimiter to separate repeated elements. | However, if you select only one element, the | delimiter is not required. In the following | example, the comma cannot precede the first | instance of itemname: | | [itemname][,...] |...| | Within syntax statements, a horizontal | | ellipsis enclosed in parallel vertical lines | | indicates that you can select more than one | | element that appears within the immediately | | preceding pair of brackets or braces. | | However, each element can be selected only one | | time. In the following example, you must | | select ,A or ,B or ,A,B or ,B,A : { ,A}|...| | { ,B} | | If a punctuation character precedes the | | ellipsis, you must use that character as a | | delimiter to separate repeated elements. | | However, if you select only one element, the | | delimiter is not required. In the following | | example, you must select A or B or AB or BA. | | The first element cannot be preceded by a | | { A} | comma: { B}|,...| ... | Within examples, horizontal or vertical | ellipses indicate where portions of the | example are omitted. Å | Within syntax statements, the space symbol Å | shows a required blank. In the following | example, you must separate modifier and | variable with a blank: | | SET[(modifier)]Å(variable); shading | Within an example of interactive dialog, | shaded characters indicate user input or | responses to prompts. In the following | example, OMEGA is the user's response to the | NEW NAME prompt: | | NEW NAME? OMEGA NOTATION | DESCRIPTION [[ ]] | The symbol [[ ]] indicates a key on the | terminal's keyboard. For example, [[CTRL]] | indicates the Control key. [[CTRL]] char | [[CTRL]] char indicates a control character. | For example, [[CTRL]] Y means you have to | simultaneously press the Control key and the Y | key on the keyboard. base prefixes | The prefixes %, #, and $ specify the numerical | base of the value that follows: | | %num specifies an octal number. | #num specifies a decimal number. | $num specifies a hexadecimal number. | When no base is specified, decimal is assumed. Bit When a parameter contains more than one piece of data (bit:length) within its bit field, the different data fields are described in the format Bit (bit:length), where bit is the first bit in the field and length is the number of consecutive bits in the field. For example, Bits (13:3) indicates bits 13, 14, and 15: most significant least significant |--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--| | 0| | | | | | | | | | | | |13|14|15| |--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--| Bit (0:1) Bits(13:3)


MPE/iX 5.0 Documentation