This document, the "ULTRIX Guide to Languages and Programming" (Order Number: AA-ML94B-TE), published in June 1990 by Digital Equipment Corporation, is a technical guide for application programmers and system engineers using ULTRIX Version 4.0 or higher.
It provides a comprehensive overview of the ULTRIX compiler system, covering its components such as compiler drivers (for C, Pascal, FORTRAN, and Assembler), the link editor, object file tools, and archive libraries. The guide details storage mapping for C and Pascal on both RISC and VAX architectures, explaining how data types, arrays, structures, and unions are allocated in memory.
It addresses language interfaces, specifically how C and Pascal routines can call each other and pass arguments on both RISC and VAX systems. Significant attention is given to improving program performance on RISC and VAX processors through code profiling (PC sampling, invocation/basic block counting) and various optimization techniques.
Debugging is extensively covered, outlining the use of tools like ctrace, dbx (interactive debugger), error, gcore (core image creation), lint (code checking), and trace (system call tracing). Dedicated sections also cover kernel debugging for both RISC and VAX.
A notable addition in this version is a new chapter on programming in a POSIX environment, detailing shell choices, header files, and function libraries for standard-conformant programs. Crucially, the document provides detailed security guidelines for programmers, covering secure practices for handling file descriptors, signals, search paths, permanent/temporary files, errors, privileged programs (SUID/SGID), user authentication, and programming in a DECwindows environment. It also lists ULTRIX system calls and library routines with specific security implications.
The manual is intended for users already familiar with C programming and ULTRIX development tools, focusing on implementation details rather than teaching programming concepts or language syntax.
Site structure and layout ©2025 Majenko Technologies