Actor. The equivalent of a Unix process; it provides an execution context for one or more threads. An actor is the unit of distribution in Chorus, the smallest software entity that can be allocated to a site. It is not the smallest unit that can be allocated to an individual processor, however; Chorus can allocate the individual threads within an actor to different processors on a multiprocessor site, so that Chorus supports tightly coupled parallel computers as well as loosely coupled networked computers.
Ports. Queues attached to actors by which threads of one actor send messages to threads of another. Sending messages via ports rather than directly to the other thread decouples communication from execution, so communication in Chorus becomes transparent with respect to distribution; one thread need not know where another is executing in order to com
municate with it. A thread can only ever belong to one actor, but a port can migrate from one actor to another, redirecting all messages to the new actor.
Site. The basic unit of computing hardware under Chorus, consisting of one or more processors and some memory and I/O devices. It might be a whole computer or just a board in a rack. Each site runs one nucleus.
Thread. The unit of execution in Chorus. It has the same meaning (i.e., a lightweight process) as it does in Windows NT and OS/2. Unlike a heavyweight Unix process, a thread does not need a private address space but only its own stack, and many threads can share the same address space. Under Chorus, that address space belongs to an actor.