Porting the Chorus Supervisor and related low-level functions to the PA-RISC
Ravi B. Konuru · PDXScholar (Portland State University) · 2018
This document is part of a series of reports describing the design decisions made in porting the Chorus Operating System to the Hewlett-Packard 9000 Series 800 workstation. The Supervisor is the name given by Chorus to a collection of low-level functions that are machine dependent and have to be implemented when Chorus is ported from one machine to another. The Supervisor is responsible for interrupt, trap and exception handling, managing low-level thread initialization, context switch, kernel initialization, managing simple devices (timer and console) and offering a low-level debugger. This document describes the port of the Supervisor and related low-level functions. The informacion contained in this paper will be of interest, to people who wish to understand: • The main characteristics of Chorus and PA-RISC architecture that are useful in understanding the port of the Chorus Supervisor. • The requirements and implementation of the Chorus Supervisor. • The requirements and implementation of Chorus page fault interface • The requirements and implementation Chorus System call interface • The requirements and implementation of 'mutex' interface which is a part of the Chorus system call interface for efficient thread synchronization. • Reasons for the modifications to the portable layers of Chorus kernel to implement the above requirements. A summary of the modifications is also presented. It is useful to read the port overview before reading this document. It is also a good idea to have the Precision Architecture and Instruction Set Reference Manual and Chorus v3.3 implementation guide on hand although it is not absolutely necessary.