Object-Orientation FAQ


KEOBJ is an object-oriented micro-kernel optimized for advanced embedded
applications, and it particularly targets Digital Signal Processors (DSP)
and RISC processors in multimedia environments.
Its main features are object-orientation, real-time behavior, signal processing
support, micro-kernel architecture and scalability.
1.1 Object-orientation
The kernel is a collection of system classes exported to the applications
(e.g Process, Thread, Memory, ...).
An object name space provides a way to locate any public object (e.g. IPC,
memory) using a symbolic path.
The kernel is written in C++ and is easily portable.
1.2 Real-time behavior
The design stresses fast response time and predictability to qualify for the
real-time label. The kernel is reentrant and preeemptable.
1.3 Signal processing support
Besides providing an architecture appropriate for most general purpose
applications, the kernel incorporates dedicated features for signal processing
applications. This includes two phases interrupt processing, time-deadline
scheduling, Inter Process Communications, multiple memory pools, awareness of
the constraints due to a single data type (word).
1.4 Micro-kernel architecture
Probably the most important feature of the kernel is the ability to be
extended at run-time with new services such as devices drivers, public
classes (IPC, file systems, windowing systems). Applications and system
services are dynamically loaded by a COFF compatible loader.
The core kernel is customizable at run-time through a personality mechanism
to emulate other environments (Operating systems) or to tailor the processes
1.5 Scalability
The API supports physical and virtual memory organizations with the same
Applications source code will be portable across DSP and RISC processors.
The architecture supports symmetric multiprocessing and distribution (Available
by mid-1994).

This document was translated by ms2html v1.8 on 01.06.95.