
The new graphical Operating System for your C64 with
CMD SuperCPU
Technical Details
Kernal Architecture
It is one aim of CLiPS to be flexible and expandable. That's why we didn't
build a monolithic system but a micro kernel instead. The Kernel of CLiPS
is very small (less than 32K) and consists of four different parts as you
can see on the image below.

The four parts of the CLiPS Kernel
These four parts are called Kernel Managers. Each of them is responsible for
some fundamental functions of an operating system:
- Memory Manager
The duty of this part is assigning code and data memory to the
applications. In addition, it prevents processes from using
the same memory.
- Process Manager
This part grants CPU time to the processes and decides, which
process may run next. Since CLiPS is a preemptive multitasking OS,
the Process Manager also interrupts processes when their
scheduled time has run out.
- Message Passing
Delivering messages from one process to another is the task of this
Kernel Manager. Message passing is a very important component of
CLiPS. We'll see that later when we talk about "Resource Managers".
- I/O Manager
The internal C64 hardware is controlled by this Manager. Whether
you move the mouse or press a key, the I/O Manager realizes your
actions and passes corresponding messages to the Kernel.
Resource Managers
As you can see, the Kernel alone won't be able to provide functions for
accessing disk drives, controlling modems or painting windows. It needs the
help of the so-called Resource Managers. These Resource Managers are
processes that provide additional functions to the system. They differ from
the other processes in that way that they don't run all the time; they wait
for commands that applications can send them via message passing. So
Resource Managers won't waste CPU time, when they've nothing to do.
For example, device drivers will be realized as Resource Managers. Imagine,
you're using a CMD HD with CLiPS. The Resource Manager "CMDHD.DRV" provides
all functions that CLiPS needs to access the HD. CLiPS just sends messages
to this Resource Manager without even knowing what a HD is or does. If you
add devices, you just add Resource Managers, one for each device.
The GUI of CLiPS has its own Resource Managers for drawing windows, handling
mouse events and so on. So even CLiPS itself uses Resource Managers for
expanding its own functions!
All in all we can say that CLiPS consists of a small Kernel surrounded by
several Resource Managers which finally boost the power to the OS. The
image below visualizes this model in a good way.

The surrounded CLiPS Kernel
Back to main page
The C64 Banner Exchange