ADDING FUNCTIONALITY TO A COMPUTING DEVICE USING THREAD CALL TABLES
A computing device is provided with a plurality of personality layers, each implemented for a respective RTOSs. This enables multiple LRTAs to run on the same device while maintaining real time performance. It can also be used for debugging/diagnostic purposes because it is possible to install a new call table for a given thread which redirects all attempts by that thread to use kernel functionality to a debugger.
1 . A method of implementing a personality layer for an alien operating system on a computing device running a native operating system which enables software written for the said alien operating system to run on the device, the method comprising;
a. setting up each thread of execution running on the computing device with its own dispatch table used for making system calls to the native operating system; and
b. setting up threads executing applications written for the native operating system with a dispatch table pointing at the system calls for the native operating system; and
c. setting up threads executing applications written for the alien operating system with a variant dispatch table pointing at the system calls corresponding to the personality layer for the alien operating system.
2 . A computing device arranged to operate in accordance with a method as claimed in claim 1 .
3 . An operating system for causing a computing device to operate in accordance with a method as claimed in claim 1 .