• Keine Ergebnisse gefunden

Original uCode

Im Dokument PERQ Workstations (Seite 37-44)

PERQs and everyone that I knew of to have ever used, or knew anything about, PERQs. The results of this were quite interesting, to say the least!

While some very useful and interesting information was posted to the mailing list as a result of this, there were also a lot of angry people who demended to be removed from the mailing list. They were quite angry that they were

“automatically” subscribed to it without their permission. This “automatic subscription” occured on July 29, 1993, a few weeks after Jamie, Malcolm and myself debated the ethics of subscribing people in this manner.

4.4 Original uCode

“They told me they developed a lot of it [PERQ microcode] on a PDP-11 running RSX (or something like that). The floppy format was the same fot that reason.” [Tom Brusehaver, mailing list, Nov. 30, 1992]

38 CHAPTER 4. MORE PERQ HISTORY

Chapter 5

The Accent OS

Accent was developed jointly by PERQ Systems Corp and the SPICE Project in the Computer Science Department at Carnegie-Mellon University. “SPICE”

is an acronym for Scientific Personal Integrated Computing Environment.

• fundamentally designed to enhance network services

• processes that are remote communicate with each other, by the use of messages, in the same way as processes on a local machine

• is a product of over 5 years of research dedicated to achieving a very attractive alternative to time shared computing systems

• provides interprocess communication

• transparent access to network resources

• multiple language support

• demand paging

• advanced virtual memory management

• a multi-process, message based, operating system

• provides a 32 bit paged virtual address space for each user process

• workstation memory and disk space are managed by a demand paging feature which offers a 512 byte page size

39

40 CHAPTER 5. THE ACCENT OS

• another facet of Accent substantially reduces network traffic by per-mitting users to access remote files, without the need to transfer all the information to their own disk. Only those file pages that are actually needed are moved.

• priority scheduling with preemption and aging

• compute bound processes (those that don’t require user interaction) are automatically lowered in priority, giving faster response to current user commands

• the Accent user interface includes a multiple window display controlled by the Accent window manager. Users can simultaneously access as many as 64 different windows on the screen. These windows can be overlapped and manipulated on the screen as if they were papers on a desk. A series of icons displays the status of each active process.

• Languages supported include: Pascal, FORTRAN 77, LISP, ADA (Adaplus from Siemens/CMU?), Modula-2 and C.

• A messge-based, multiprocess operating system providing a demand-paged 32-bit virtual address space for each user process.

• designed to be a truly distributed, transparent operating environment

• network-wide interprocess communication, concurrent active windows, multiple instruction sets, multiple processes with a flexible process scheduling facility

Accent provides a transparent remote file and server prcess access; for example, a LISP program on one machine may invoke a process on a second machine, access data on a third and and send screen output to a fourth, all managed by the operating system without the program having to know where these resouces are or even understand how they are accessed.

Simultaneously supports co-equal environments which include the na-tive Accent environment, LISP and Qnix, a UNIX System V environment licensed from A.T. & T. The fact that these environments are co-equal means that a program in LISP, for instance, has access to all the facilities of either native Accent or Qnix.

With LINQ, provides multiprocessing capabilities, a distributed file sys-tem and transparent access to network graphics, computation and data re-sources.

41 Original PR release about Accent, “PERQ Systems Announces New Vir-tual Memory Operating System”? Article bearing Pittsburgh phone num-bers appears to originate in Anaheim, Calif. on May 15, 1984.

Developed jointly with the Computer Science Department of Carnegie-Mellon University over the last five years (five years back from 1984; 1980-1984?)

Provides high performance graphics and transparent access to network resources.

Features multiple, co-equal instruction set architectures.

A multi-processing operating system with network-wide 32-bit memory addressability. It incorporates a hierarchical file structure and supports demand paging, diskless nodes and multiple languages such as C, FORTRAN and Pascal.

Conceived from the beginning to be a portable operating system, the first release of Accent supports the PERQ Systems line of high-performance graphics workstations.

Window manager supports the covered window paradigm, supporting as many as 64 different windows on the screen simultaneously. Windows can also be overlapped.

Status reporting icons provide current performance information to the user. According to Aaron Coleman, PERQ Systems president, these icons differe from others currently available from other manufacturers; “...they show the user exactly what process is occuring and provide information or prompts. It’s one of the ways in which we allow users to get maximum performance from out systems.”.

“Transparency means that when a user calls on a process residing on an-other machine in the network, Accent will respond as if the function resided on the user’s machine. The user won’t need to know where functions reside in the network” [Coleman]

System functions on the LINQ network are activated by sending mes-sages to the appropriate server process through the Accent kernel. The kernel provides low-level support for the operating system by managing in-terprocess communication.

Allows optimal software development and operational flexibility because it supports multiple, co-equal, environments. These environments include the native Accent, a LISP environment for artificial intelligence applications, as well as an advanced UNIX System V implementation, QNIX. These en-vironments can reside simultaneously under Accent. “For example,” says Coleman, “a window on the screen can be running LISP while at the same time a second window is running QNIX, and a third is operating under the

42 CHAPTER 5. THE ACCENT OS native Accent environment. Programs written in LISP or under the UNIX operating system can be easily ported to Accent using this feature.”

The Accent kernel provides facilities which offer unique microcode-implemented language support that yield multiple co-equal instruction set architectures.

Each process utilizes an instruction set that is optimized for the language on which the process is written; Pascal, C, FORTRAN or LISP.

Says Coleman, “Accent changes instruction sets dynamically, depending upon the language of the process it is executing. This allows processes to run more efficiently.”

Allows processes in different languages to communicate with each other through Accent Interprocess Communication (using MatchMaker?)

• Priced at less than $1,000

• Available for shipment in July, 1984

• integrated on-line help facility

• icons for window control and process status

• windows can be on local machine or on another machine on the network

• progress bars in both the icon and window title

• over 100 utilities (oh really???)

• virtual terminal emulation (what does this mean?)

• Accent architecture can be divided into three basic levels:

– Accent kernel

– co-equal environments – Accent window manager

5.1 The Accent Kernel

Accent employs a small kernel. An Accent process consists of:

• a 32-bit virtual address space, process state

• process state (including the state of any macrocode and microcode registers

5.1. THE ACCENT KERNEL 43

• access to one or more port capabilities

An Accent port is a kernel-managed and protected simplex communica-tions channel.

Message passing is the sole means of communication in Accent, both process to process and process to kernel.

One of the Kernel’s main functions is to handle the interprocess com-munication (IPC). Most other operating system functions are provided by sending messages through the IPC facility to server processes.

Server processes may reside on the local machine or may be accessed through the network. Neither the client process nor the server process ever needs to know that the partner in the transaction is not on the local machine.

Provides priority scheduling with preemption and aging; an aging algo-rythm automatically lowers the priority of a compute-bound process, thus allowing fast response for highly interactive processes. This is a typical sit-uation found in makeup sitsit-uations where compute- bound background tasks must not interfere with cursor tracking or placement routines.

Memory and disk space are managed by a demand paging feature in the kernel; this paging feature is responsible for handling references to virtual addresses which are not currently resident in physical memory. This job is done completely by passing messages between the kernel, the pager, and other server processes. The Accent message system and virtual memory systems interact so that it is possible to send a very large (megabytes) message between two local or remote processes.

Provides facilities which offer unique microcode implemented language support, yielding multiple virtual machine environments. Under Accent, each process utilizes an instruction set which is optimized for the language in which the process is written. Accent changes instruction sets dynamically depending upon the language of the process which is executing.

The file system incorporated into the Accent kernel features a tree-structured directory. Reliability has been enhanced through the use of special hardware (what special hardware?). The file system is transpar-ent across the network, so access to remote files is the same as access to local files. Access control lists protect file access for system security. Files are mapped into the process virtual address space and are treated as virtual memory.

44 CHAPTER 5. THE ACCENT OS

Im Dokument PERQ Workstations (Seite 37-44)