Symposium Collection from the VMS/Languages and Tools SIG, Part 1 of 2, Spring 1993, Atlanta (VS0172)


contain files of sources from Digital Systems Journal (formerly VAX Pro)
courtesy of the publisher. The following are some of the items.

ALIGN.DESC;1
 
This file features a routine previously published in the March/April 1993 
issue of Digital Systems Journal. It was first run as part of Eric M. 
LaFranchi and Kathleen D. Morse' article "Alpha AXP Migration: 
Understanding Data Alignment on OpenVMS AXP Systems," which ran on page 22.
When you migrate your VAX application to an OpenVMS AXP system, you may 
lose some performance advantage. The alignment of data and the type of data 
used by the application can affect the size and performance of the 
application on OpenVMS AXP systems. This article explains this migration 
issue and explains how to handle it.

 
CALRMS.DESC;1
 
This file features code previously published in the January/February 1993 
issue of Digital Systems Journal. Originally run as part of Hunter 
Goatley's article "MACRO Made Easy: Readin', Writin', and MACRO," which 
ran on page 32, the routines provide a look at doing file I/O from MACRO 
using RMS.
 
CSPY.DESC;1
 
This file features code previously published in the January/February 1993 
issue of Digital Systems Journal. Originally run as part of J. Wren Hunt's
article, "CSPY: A Clusterwide SPY Utility" which ran on page 27, the program
here was written to perform the $SHOW PROCESS/CONTINUOUS/ID=pid over a
different cluster node.
 
EACH.DESC;1
 
This file features a routine published in the January/February 1993 issue 
of Digital Systems Journal. The code was first run in Jerrold Leichter, 
Ph.D.'s article "OpenVMS Kernels: To EACH His Own," which appeared on page 
39. EACH is a command file that gives you a flexible was of applying one 
or several commands in succession to a group of files. It can select files 
based on any of the DIRECTORY command's fairly extensive set of file 
selection qualifiers.
 
EXTENS.DESC;1
 
This file features a program previously published in the March/April 1993 
issue of Digital Systems Journal. It was first run in Patrick L. Mahan's 
article "X Views: X Extensions," which ran on page 42. X extensions allow 
you to implement new functions into X without changing the X protocol. The 
source code here shows you how.
 
FAOMSG.DESC;1
 
This file features code previously published in the May/June 1993 issue of 
Digital Systems Journal. It was originally run as part of Hunter Goatley's 
article, "MACRO Made Easy: Readin', Writin', and MACRO," which ran on page 
35. The article describes the $FAO system service and the MESSAGE utility. 
Both provide the OpenVMS programmer with an easy-to-use way to produce 
nice-looking output from programs. These methods can be used by programmers 
using all OpenVMS languages, not just MACRO-32.
 
FID.DESC;1
 
This file features code previously published in the March/April 1993 issue 
of Digital Systems Journal. It was first published as part of George 
Merriman's article "Improve I/O Performance With OpenVMS File 
Indentifiers," which ran on page 12. For some OpenVMS applications, the 
overhead cost of directory processing outweighs the advantages of the 
hierarchical directory structure. You can use OpenVMS file identifiers and 
RMS temporary files to avoid this costly directory processing.

 
LOADBL.DESC;1
 
This file features code previously published in the January/February 1993 
issue of Digital Systems Journal. it originally ran as part of Brian 
Schenkenberger's article "OpenVMS VAX Loadable Executive Images," which ran 
on page 19. The article explores the mechanisms of the loadable image, its 
role in the executive reorganization, operating system support for loading 
the image and how to write and load a loadable executive image.
 
LOGNAM.DESC;1
 
This file features a routine previously published in the May/June 1993 
issue of Digital Systems Journal. It was originally run as part of David N. 
Greene's article, "Using Shareable Logical Name Tables for Applicationwide 
Communications," which ran on page 25. The article provides reasons to use 
logical names as an applicationwide communications technique, as well as 
alternative techniques for application communications. It also looks at the 
details of using shareable logical name tables and provides some suggestions
for their use in large applications.
 
MNOWAIT.DESC;1
 
This file offers a routine previously published in the January/February 
1993 issue of Digital Systems Journal. The code comes from OpenVMS guru 
Bruce Ellis' article "OPenVMS Internals: Oh Wait, MNOWAIT!" which ran on 
page 42. In this article, Bruce Ellis explains techniques for deleting 
processes that are in the RWAST and/or MUTEX wait states and seem unable to 
be deleted.
 
NAMXAB.DESC;1
 
This file contains code previously published in the March/April 1993 issue 
of Digital Systems Journal. It was first run as part of Hunter Goatley's 
article "MACRO Made Easy: Readin', Writin', and MACRO," which ran on page 
35. The article takes a look at the NAM blocks and eXtended Attribute 
Blocks (XAB). The NAM blocks are used in processing file names, while the 
XABs are used for additional file information.
 
PAGE.DESC;1
 
This file features a program previously published in the January/February 
1993 issue of Digital Systems Journal. It was originally published as part 
of Eric M. LaFranchi and Kathleen D. Morse' article titled "Alpha 
Migration: Understanding and Identifying Page-Size Dependencies in 
Migrating Applications to Alpha AXP Systems," which ran on page 10. The 
article focuses on migration issues dealing with page size dependencies.
 
PASWRD.DESC;1
 
This file contains code previously published in the March/April 1993 issue 
of Digital Systems Journal. Originally run on page 16, as part of Sridhar 
Seshadri's article "A Utility to Save and Restore a User's Passwords," this 
privileged installed image provides the ability to save and restore a 
user's password. Discussion focuses on OpenVMS password encryption, 
UAF-related system services and security implications.
 
PRCPRV.DESC;1
 
This file contains a routine previously run in the January/February 1993 
issue of Digital Systems Journal. It comes from Ehud Gavron's article, 
"Setting Other Processes' Privileges," which ran on page 28. In the 
article, you'll learn how to change the privileges for another process. 
Then you'll find out how to build a program that knows all the current 
privilege names for the version of OpenVMS under which it's built.
 
QCLEAN.DESC;1
 
This file features code previously published in the May/June 1993 issue of 
Digital Systems Journal. It was first run in an article by J. Wren Hunt 
titled "Queue Cleanup Utility," which ran on page 15. QCLEAN allows any 
user with OPER privilege or delete access to the queue to delete a range of 
entries from a batch or print queue without deleting the entire queue. 
Also, it can selectively delete entries for a specified user throughout the 
queue. By default, it will ask for confirmation before it deletes an entry.
 
SUPUSR.DESC;1
 
This file contains code previously published in the May/June 1993 issue of 
Digital Systems Journal. It was originally run on page 19, as part of 
Russell Salerno's article, "SUPERUSER: An Enhanced $SHOW USERS Utility." 
The code here is a $SHOW USER utility with the addition of imagename, 
forceexit ability and stopid ability, as well as selection criteria. It 
uses a CLI interface so it can be used from batch. The selection criteria 
permit mass stop/ID and mass forcex.
 
TICKLR.DESC;1
 
This file features a program previously published in the March/April 1993 
issue of Digital Systems Journal. Originally run as part of Alan H. Beer's 
article, "TICKLER: A Daily Reminder System," which ran on page 14, this 
command procedure lets you prepare a tickler-file type reminder to be 
received in your VMSmail on the desired day. Mail will notify you of your 
message when you log in. The reminder can be updated until the day it is 
sent.
 
TSR.DESC;1
 
This file contains a program written by Paul Klissner, author of "A
Terminate and Stay Resident Calendar for OpenVMS," which ran on page 25
in the January/February 1993 issue of Digital Systems Journal. The program 
here can be activated while the user is in the middle of running unrelated 
software in the same user process. The example program is a terminate and 
stay resident calendar/clock that can be made to appear on your screen at 
virtually any time while you're logged in.
 
WSL.DESC;1
 
This file offers a program originally published in the March/April 1993 
issue of Digital Systems Journal. It was first run as part of Bruce Ellis' 
article, "OpenVMS Internals: Sizing Working Set Lists," which ran on page 
46. The working set list defines the amount of memory that a process can 
use at any given time. Proper assignment of the working set list sizes can 
be crucial to system performance, but sizing working set lists has 
traditionally been done in an arbitrary fashion. Bruce Ellis' article 
presents a method for calculating proper working set sizes.

Click on FTP to download from the FTP archives.
[FTP]