next up previous
Next: Registering a Timer with Up: oskit_tut Previous: oskit_tut

OSKit's Startup Code- Introduction

OSkit's startup code does all the necessary hardware initialization (booting , setting up segmentation etc), initializes the C library and them jumps to the main of your function. Inside your main, you have the same interface available to you as in any other Linux code. For example you can call other functions, do malloc etc. Check the examples/x86 directory for some simple examples.

However there are a few limitations. By default OSKit does not provide any notion of processes or threads. For OSkit, there is only one process, the main function. You have to bulid the thread package over OSKit's basic C library interface. That is you have to compile your thread package (which runs on Linux) with OSkit's startup library (which will provide the C interface). And this should give a thread package which runs on raw hardware.

There is however one more catch. OSKit does not support signals. The reason for this is obvious. Because OSKit does not have any notion of threads or processes, it cannot support signals(signals to whom?). So your Linux thread library package would require slight modification. You cannot register the timer alarm.


next up previous
Next: Registering a Timer with Up: oskit_tut Previous: oskit_tut
Soumyadeb Mitra 2002-10-23