Home Technical Microkernel Microkernel

Microkernel

E-mail Print PDF
User Rating: / 0
PoorBest 

The Diamond kernel is a highly-optimised software component that manages the underlying DSP hardware. Typically the code and data of the kernel occupy less than 20KB.   The kernel is a passive component; it uses CPU cycles only when the user program requests service.

The only exception to this is the maintenance of the internal cock, which typically uses a small number of cycles every millisecond.  Even this can be disabled to allow 100% of the CPU to be used in your code.


The kernel provides the following main services:

semaphores & events

Initialise, signal, and wait for semaphores and events.

timer

Read the system clock, wait for a number of ticks or until a time has passed.

threads 

Create & destroy threads, change thread priorities, schedule the execution of threads.

context switching

Transfer control between threads. Typical times to transfer from one thread to another (thread_deschedule) are: 225MHz Texas Instruments C6713,   470ns  400MHz Texas Instruments C6415    250ns  1GHz Texas Instruments C6416T    100n

 

Try Diamond Now!

DemoSystem1

Did You Know?

You can reduce the size of tasks that do not access the host server by making them stand-alone.