Glossary of Terms

[Contents] [Prev]
Table of Contents


A specification for a remotely-accessible object, including methods provided and exceptions which can be thrown. In ILU, interfaces are specified using either the Interface Specification Language (ISL) or CORBA's Interface Definition Language (IDL).


A component of the Knowbot Operating System (KOS), which encompasses the core functionality of a Knowbot Service Station (KSS). At any KSS, there may be several Knowbot Programs (KPs) running, each inside its own Supervisor process. All KP Supervisors on a KSS communicate with the same kernel, which tracks and manages Supervisor and plugin processes, and handles the submission of incoming KPs.

The word ``Knowbot'' should never be used as a noun. It must be used as an adjective, e.g. ``Knowbot Program''.
Knowbot Operating Environment
The term describing the whole Knowbot universe. The KOE consists of all the interoperably linked Knowbot Service Stations (KSSes), along with all the Knowbot Programs (KPs) in existance.

KOS (plural: KOSs)
Knowbot Operating System
The software component of a Knowbot Service Station (KSS), layered on top of the host's native operating system. The KOS consists of a kernel, optionally many extensions or plugins, and Supervisors controlling the environment of KPs.

Note that while the plural of KOS is KOSs, this can be difficult to read, so when possible you should rewrite the sentence in a different way. E.g. ``Each KOS'' or ``Several Knowbot Operating Systems''.

The root of the KOE source tree.

KP (plural: KPs)
Knowbot Program
A mobile program.

KSS (plural: KSSs)
Knowbot Service Station
A node in the Knowbot Operating Environment (KOE) that supports the running of Knowbot Programs (KP). The KSS consists of a hardware component and software components, including the Knowbot Operating System (KOS).

Note that while the plural of KSS is KSSs, this can be difficult to read, so when possible you should rewrite the sentence in a different way. E.g. ``Each KSS'' or ``Several Knowbot Service Stations''.


padded cell
A term describing the mechanism that the KOS uses to insulate itself from harm potentially perpetrated by KPs. The Supervisor process creates a padded cell environment in which KPs operate, and this environment controls the KP's access to system and external resources. Potentially harmful function calls are either removed from the KP's environment or are re-implemented such that the Supervisor can monitor, verify, and control the KP's access to these resources.
Addon KOS programs that have full access to the system and its resources. Plugins behave much like a Knowbot Programs - they can create services and communicate with other processes. There are two key difference between plugins an KPs. First, plugins do not run in the restricted execution environment. Second, plugins are stationary programs installed by the KOS administrator.


A Knowbot Operating System (KOS) process that implements the security model for Knowbot Programs (KPs). The Supervisor controls the access of KPs to external and underlying resources via a padded cell model. Every KP runs inside its own Supervisor process. Every Supervisor on a KSS communicates with a single kernel process. The Supervisor is the only system component that is language specific; it must provide a secure environment for the KP to run in the KP's native implementation language. Thus for Python KPs, there is a Supervisor written in Python.

Table of Contents

[Contents] [Prev]
Copyright © 1998 by the Corporation for National Research Initiatives.