Debugger for debugging tasks in an operating system virtual device driver
First Claim
1. A computer system comprising:
- a memory element;
a processor coupled to said memory element;
an operating system running on said processor, said operating system including a virtual device driver running a multi-tasking real-time environment embedded within said operating system;
a debugger with a graphical user interface interacting with said multi-tasking real-time environment to allow use of said graphical user interface to debug test task, the debugger being at a first privilege level; and
a debug task to manipulate states of said test task, said debug task and said test task running in the multi-tasking real-time environment at a second privilege level.
0 Assignments
0 Petitions
Accused Products
Abstract
A debugger that is multi-task aware and capable of providing symbolic support to a graphical user interface (GUI) is disclosed. The debugger disclosed communicates with a multi-tasking kernel nested within a driver of the operating system within the 0 privilege level. The multi-tasking kernel distinguishes among the rest of its environment where a graphical user interface executes the driver tasks being debugged. The multi-tasking kernel, in cooperation with the debugger runs each element on a different thread of the same machine, thereby allowing the debugger and the driver tasks being debugged to continue to run without stopping operation of either the graphical user interface or the operating system associated with the graphical user interface.
175 Citations
19 Claims
-
1. A computer system comprising:
-
a memory element; a processor coupled to said memory element; an operating system running on said processor, said operating system including a virtual device driver running a multi-tasking real-time environment embedded within said operating system; a debugger with a graphical user interface interacting with said multi-tasking real-time environment to allow use of said graphical user interface to debug test task, the debugger being at a first privilege level; and a debug task to manipulate states of said test task, said debug task and said test task running in the multi-tasking real-time environment at a second privilege level. - View Dependent Claims (2, 3, 4, 5, 6, 7, 19)
-
-
8. A method of debugging a test task in a computer system, said computer system executing instructions of an operating system including an outer operating system and a virtual device driver running a multi-tasking real-time environment embedded within said outer operating system, said method comprising the steps of:
-
initializing said virtual device driver in said operating system; operating a debugger application with a graphical user interface in said outer operating system at a first privilege level, said debugger interacting with said multi-tasking real time environment; executing a debug task in said multi-tasking real time environment of said device driver, said debug task intercepting the execution of said test task operating in said multi-tasking real time environment at a second privilege level; communicating information regarding the execution of said test task to said debugger application via said virtual device driver; and utilizing said information to monitor and manipulate states of said test task using said graphical user interface of said debugger application running in said outer operating system. - View Dependent Claims (9, 10, 11, 17, 18)
-
-
12. A method of detecting a trap in an operating system using a graphical user interface, said method comprising the steps of:
-
executing an instruction in a test task executing in an embedded multi-tasking real time environment at a first privilege level, said instruction in said test task causing said trap; identifying said trap and communicating a message to a debug task executing on said computer system, said debug task manipulating states of said test task; halting the execution of said test task; preparing information about said test task when said instruction was executed; communicating said information from a virtual device driver to a debugger interacting with said multi-tasking real time environment, said debugger operating in said computer system at a second privilege level; and displaying debugger operation in a graphical user interface output. - View Dependent Claims (13, 14, 15, 16)
-
Specification