Conversion of desk-top operating system for real-time control using installable interrupt service routines
First Claim
1. A method of adapting an embedded operating system mapping real-time interrupt vectors to an operating system interrupt router, the interrupt router activating a compiled interrupt service routine so as to then receive from the compiled interrupt service routine, an indication of device driver to be scheduled for handling the interrupt, the method comprising the steps of:
- (a) at a time of generating the operating system kernel;
(1) generating an operating system accessible soft vector table;
(2) installing a soft vector interrupt service routine executing to interrogate the soft vector table to call an installable interrupt service routine indicated therein;
(b) at a run time;
(1) installing at least one operating system accessible installable interrupt service routine;
(2) loading an address of the installable interrupt service routine in the soft vector table;
whereby installable interrupt service routines suitable for real-time control may be added at run time after creation of the embedded operating system kernel.
1 Assignment
0 Petitions
Accused Products
Abstract
Run time modification of interrupt service routines in an embedded operating system installs a soft vectored interrupt service routine into the operating system kernel at the time of the kernel generation. The soft vectored interrupt service routine refers interrupt service calls to installable interrupt service routines that may be loaded subsequently on a real-time basis. In this way, flexible interrupt service routine response may be obtained for a wide variety of hardware combinations, unanticipated at the time of the generation of the operating system kernel.
79 Citations
13 Claims
-
1. A method of adapting an embedded operating system mapping real-time interrupt vectors to an operating system interrupt router, the interrupt router activating a compiled interrupt service routine so as to then receive from the compiled interrupt service routine, an indication of device driver to be scheduled for handling the interrupt, the method comprising the steps of:
-
(a) at a time of generating the operating system kernel;
(1) generating an operating system accessible soft vector table;
(2) installing a soft vector interrupt service routine executing to interrogate the soft vector table to call an installable interrupt service routine indicated therein;
(b) at a run time;
(1) installing at least one operating system accessible installable interrupt service routine;
(2) loading an address of the installable interrupt service routine in the soft vector table;
whereby installable interrupt service routines suitable for real-time control may be added at run time after creation of the embedded operating system kernel. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
creating an loader function executing to perform steps (b)(1) and (b)(2);
at the time of generating the operating system kernel, incorporating the loader function into the kernel; and
at the run time, invoking the loader function.
-
-
3. The method of claim 2 wherein the loader function, when invoked, further loads a device driver associated with the installable interrupt service routine and wherein the installable interrupt service routine identifies the device driver to the operating system interrupt router upon completion of execution of the installable interrupt service routine.
-
4. The method of claim 3 wherein the installable interrupt service routine and the device driver are contained in a single file and read by the loader function.
-
5. The method of claim 3 wherein the loader function further interrogates hardware attached to a computer on which the operating system is running to identify the appropriate installable interrupt service routine and device driver for loading.
-
6. The method of claim 1 wherein the address of the installable interrupt service routine loaded in the soft vector table is a physical address of a starting memory location of the installable interrupt service routine.
-
7. The method of claim 1 wherein the embedded operating system maps all realtime interrupt vectors to a single operating system interrupt router.
-
8. The method of claim 1 wherein the installable interrupt service routine provides a response to communications generated interrupts.
-
9. An operating system suitable for real-time control for use on a computer responding to interrupts by reading an interrupt vector table and executing a routine pointed to by a vector of that table, the operating system comprising:
-
(a) an operating system interrupt router, identified in the vector table to execute upon an interrupt to invoke an interrupt service routine and to receive from the invoked interrupt service routine an identification of a device driver to be scheduled for handling the interrupt;
(b) a soft vector interrupt service routine invoked by the operating system interrupt router to interrogate the soft vector table to call a routine indicated therein;
(c) a soft vector table; and
(d) a loader function executing to load an installable interrupt service routine executing to handle an interrupt by a hardware device and to load an address of the installable interrupt service routine into the soft vector table;
whereby execution of the soft vector interrupt service routine may invoke the is installable interrupt service routine. - View Dependent Claims (10, 11, 12, 13)
-
Specification