GDSX (Extended General Device Support) Manual
Design and Development
Extended General Device Support (GDSX) Manual—529931-001
2-7
Debugging Your GDSX Application
supports a set of pseudo Guardian procedures that correspond to the D-series
Guardian procedures and a set of pseudo Guardian procedures that map to the C-
series Guardian procedures.
•
Any USCODE fault number must be greater than 100. Use only fault numbers
from 301–500 for a LINE^HANDLER.
Debugging Your GDSX Application
•
You can use a filter to display EMS messages. See EMS Filters and GDSX on
page 2-79.
•
You can use a trace in troubleshooting. See Tracing GDSX on page 2-80.
•
You can use INSPECT. The INSPECT labs in Section 5, DEVICE^HANDLER
Example, Design and Section 7, LINE^HANDLER Example, Design may be useful
as examples.
•
You can look up warning and error messages in Interpreting Console and EMS
Messages on page 3-16. A listing of “File-System Errors” appears later in this
section.
•
You can refer to GDSX Internals on page 2-90.
Run-Time Environment
GDSX is a nonprivileged, multithreaded, Guardian process that builds and manages
tasks within itself in a manner similar to the way an operating system handles tasks. A
GDSX task is an independent job entity running within GDSX to perform a specific
function. While only one task can actually be executing at any given time, the
TSCODE kernel coordinates the processing of multiple simultaneously active tasks,
swapping them in and out of the user data segment as necessary.
The TSCODE kernel provides the following functions:
•
Creating new tasks
•
Picking up all system messages and I/O requests from $RECEIVE
•
Dispatching (waking up and executing) the appropriate active task to process
messages and requests
•
Stopping tasks
•
Handling traps and errors
At any point in time, GDSX runs on behalf of a task unless:
•
The kernel is creating or stopping a task.
•
The kernel is preparing to dispatch a task.