OpenVMS Programming

( Duration: 5 Days )

The OpenVMS Programming training course is intended to quickly bring the application programmer up to speed in an OpenVMS environment. The scope of material is fairly broad from basic compiling to advanced system services. Although some of the material will be provided as an exposure to capabilities available to the programmer, it is expected that the Participants will be able to program at an in depth level upon completion of this Program. The Program covers the following categories: General Programming, Synchronization, File System and RMS, Processes and Scheduling, and Memory Management.

The OpenVMS Programming workshop is designed to take a programmer with basic understanding of a programming language and provide the foundations to take advantage of all available features of the OpenVMS operating system. Participants will learn to:

  • Compile and link a program
  • Read listing and map files
  • Understand how to call system procedures, including system services and run-time library routines
  • Create a process
  • Communicate with another process
  • Synchronize using event flags, mailboxes, global sections, and locks

Participants should have a fundamental understanding of OpenVMS System concepts and should be familiar with C, FORTRAN, COBOL, or BASIC programming languages, including the use of data structures.

  • OpenVMS Application and System Programmers




  • CISC versus RISC versus EPIC Architectures
  • Data Types
  • OpenVMS Access Modes
  • OpenVMS Processes
  • OpenVMS Alpha Memory Management
  • OpenVMS Calling Standard

Compiling and Linking

  • OpenVMS Compilers
  • Common Compiler Options
  • Link Command
  • Image Activation
  • Symbolic Debugger
  • Data Alignment
  • Symbolic Naming Conventions
  • Libraries Used by Compliers and Linkers

Library Routines

  • Floating Point Formats and Conversion
  • Run-Time Library Routines
  • General Purpose Library Routines
  • Screen Management Library
  • String Manipulation Library
  • Utility Routines
  • System Services

Events and Synchronization

  • Synchronization
  • Events Flags
  • The "I/O" Status Block
  • Asynchronous System Traps


  • RMS Concepts
  • RMS Structures
  • RMS Services
  • Special Language Considerations
  • RMS System Services Examples
  • File Sharing and Record Locking
  • Language Specific Considerations
  • RMS Utilities

Low Level I/O

  • Assigning Channels
  • The QIO System Service
  • File I/O
  • Terminal I/O
  • Mailbox I/O

Fast I/O

  • Buffer Objects
  • Fast I/O Concepts
  • Implementing Fast I/O

Lock Manager

  • Locking Concepts
  • OpenVMS Support for Locking
  • OpenVMS Lock Implementation

Time and Timers

  • Time Formats
  • System Time and Time Conversion
  • Coordinated Universal Time (UTC)
  • Library Routines Supporting Time
  • System Timers

Processes and Scheduling

  • The Process
  • Image Activation
  • Process Creation
  • Getting Job/Process Information
  • Process Selection
  • Process Management/Control
  • Terminating Images/Processes
  • Exit Handlers

Shareable and Resident Images

  • Shareable Images
  • Resident Images

Memory Management

  • Memory Allocation
  • Process Sections
  • Global Sections
  • Working Sets and Swapping
  • 64-bit Memory Usage

Encarta Labs Advantage

  • One Stop Corporate Training Solution Providers for over 4,000 Modules on a variety of subjects
  • All courses are delivered by Industry Veterans
  • Get jumpstarted from newbie to production ready in a matter of few days
  • Trained more than 50,000 Corporate executives across the Globe
  • All our trainings are conducted in workshop mode with more focus on hands-on sessions

View our other course offerings by visiting http://encartalabs.com/course-catalogue-all.php

Contact us for delivering this course as a public/open-house workshop/online training for a group of 10+ candidates.