OpenVMS Internals I

Course Code: U3719S
Length: 5 days

Schedule and Registration

This course is not currently scheduled.

Course Description

This course is designed to examine the components, structures and mechanisms of the OpenVMS operating system. It is intended for those students requiring an extensive understanding of these areas. This part of the course lays the foundations for understanding the mechanisms that will be used throughout the rest of the internals offerings at a programming level. the course will use the System Dump Analyzer to illustrate the concepts presented in the course materials. The majoity of the code will be written in DEC C and will be current as OpenVMS Version 8.3.

Who Should Attend

HP OpenVMS system programmers


Before taking this course, students should be able to:

Benefits of Attending this Class

This course features the foundations for understanding the mechanisms that will be used throughout the rest of the internals offerings. Students will learn the mechanisms that support the system and how to interact with them at a programming level.

Course Contents

Internals concepts
  • Data Structures
  • Data Structure
  • Fields Linked
  • Lists Stacks
  • Asynchronous Events and Context
  • Synchronization
  • OpenVMS Symbolic Naming Conventions
General Alpha architecture
  • CISC vs. RISC Architectures
  • Computer Architectures
  • Alpha RISC Architecture Overview
  • Privileged Architecture Library
  • VAX vs. Alpha Architecture
Data formats and general instructions
  • Data Representation
  • Floating Point Data Representation
  • Instruction Formats
  • Data Alignment Issues
HP OpenVMS calling standard
  • Alpha Calling Standard
  • Descriptors
  • Alpha Calling Standard Mechanics
  • Procedure Descriptors Variable-Size Stack Frame
  • Alpha Calling Standard
HP OpenVMS PAL code
  • General Non-Privileged PALcode
  • OpenVMS Queues
  • OpenVMS Internal Processor Regis
Synchronization: Alpha architectural issues
  • Atomicity
  • Unintentionally Shared Data
  • Read/write Ordering
Introduction to SDA
  • Debugging Tools Available
  • SDA Requirements and Uses
  • Command Summary
  • Commonly Used SDA SHOW Options
  • Symbols and Operators
  • CLUE
The process
  • Process concepts
  • The Process and Kernel Threads
  • Process Data Structures Overview
  • Job Information Block (JIB)
  • Kernel Threads
  • PCB Vector Table
  • Virtual Address Spa
Interrupts and exceptions
  • Interrupts and Exceptions
  • Processor Status Register
  • SCB
  • OpenVMS Access Modes
  • Change Mode Instructions
  • System Service Dispatching
Programming and system context synchronization
  • The Change Mode System Services
  • Using IPL for Synchronization
  • Symmetric Multiprocessing Systems
  • Spinlock Acquire Timeouts
  • Mutual Exception Semaphores (Mutexes)
  • Mutex Tracing
  • Dynamic Memory Mechanisms
  • v7.3 (v7.2-1H1) Pool Reclamation Change Review
Process context synchronization
  • AST Concepts
  • Timer Queue Entries
  • Timer Queue Entry Changes
  • Distributed Locking Mechanism
  • Dynamic Resource Remastering
  • Pre-v8.3 Dydnamic Resource Remastering
  • v8.3 Lock Manager Changes
  • Pre v7.3 Remastering Method
  • Deadlock Detection in a Cluster
  • Sub-Second Deadlock Wait
  • Lock Review
  • Monitoring Lock Activity
  • Resolving Lock Resource Contention
  • Dedicated CPU Lock Manager
  • Dedicated CPU Lock Manager Interaction
Big picture review
  • Calling Standard
  • Process Structures
  • Locating Structures
  • Kernel Threads
  • System Mechanisms
  • AST Delivery
  • Synchronization
  • Nonpaged Pod Summary

Cookie Manager

We use cookies to enhance the features of our web site. We don't set optional cookies unless you enable them. Using this tool sets a cookie on your device to remember your preferences. For more detailed information about the cookies we use, see our Cookies page.

Necessary Cookies

Necessary cookies enable core functionality such as security, network management, and accessibility. You may disable these by changing your browser settings, but this may affect how the website functions.

Preference Cookies

Preference cookies enable this site to remember information that changes the way the website behaves or looks.

Statistics Cookies

Statistic cookies help us to understand how visitors interact with the site by collecting and reporting information anonymously.

Marketing Cookies

Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.