This document, "Part 3: The DOS/Batch Monitor," describes the functionalities and usage of the PDP-11 Disk Operating System (DOS/BATCH) Monitor. It serves as a powerful, keyboard and batch-oriented program development system, facilitating the use of various peripherals on PDP-11 computers.
The Monitor supports program development and execution by providing access to system utilities (like compilers, assemblers, linkers, debuggers, editors), handling input/output (I/O) transfers at three distinct levels (READ/WRITE, RECORD/BLOCK, and TRAN) with an emphasis on device independence, and managing secondary storage through a file system. Users interact with the Monitor via versatile keyboard commands or through programmed requests (macro calls) embedded in their programs.
Key aspects covered include:
- Core Organization: Details how memory is allocated for user programs, stack, free core, resident Monitor, and interrupt vectors, with dynamic core management.
- Hardware Configurations: Lists minimum hardware setups supported by the operating system.
- User Interaction: Explains Monitor messages (Action, Fatal, Informational, System Program error, Warning), the procedures for starting the Monitor, and defines terminology related to file and device management.
- Keyboard Commands: A significant portion of the document is dedicated to explaining various interactive commands such as
LOGIN, FINISH, RUN, GET, ASSIGN, MODIFY, DUMP, ECHO, PRINT, ODT, STOP, WAIT, KILL, and END, outlining their functions, usage conditions, and system state changes.
- User Identification and Protection: Describes User Identification Codes (UIC) and file protection codes, which control access and operations (read, write, delete, run) for files.
- Filenames: Specifies conventions for naming files and using wildcards.
- Special Keyboard Characters: Explains control characters like RETURN, RUBOUT, CTRL/C, CTRL/U, Semicolon, and ESCAPE for command and input control.
- Programmed Requests: Details how user programs invoke Monitor services (I/O, directory management, miscellaneous utilities) via macro calls. It thoroughly describes the three I/O transfer levels, their respective requests (.INIT, .OPEN, .READ, .WRITE, .BLOCK, .RECRD, .TRAN, .WAIT, .CLOSE, .RLSE), and the control blocks (Link, Filename, Line Buffer, Record, Block, TRAN, Run Blocks) required to pass parameters.
- Device Independence and Restrictions: Highlights the ease of writing device-independent programs and outlines certain restrictions and best practices for programmers when interacting with the Monitor's services.
- Special I/O Functions: Describes device-specific functions for peripherals like magtape, card reader, and line printer accessible through the
.SPEC request.
The document concludes with example programs illustrating the use of programmed requests and a comprehensive summary table of all Monitor commands and programmed requests.