Using Processes
This section describes how processes run in the RTSS and Windows environments.
Processes in the RTSS Environment
An executable process running in the RTSS environment consists of handles to objects, process address space, and at least one thread. When a process is created, RTSS performs the following tasks:
- Loads the executable using the wRTOS loader
- Allocates process heap from the non-paged pool
- Creates the primary thread
- Starts execution of the main thread at its entry point on the allocated processor
A process can be started by one of these methods:
- Running the RTSS executable from the wRTOS Task Manager > Start Task dialog.
- Running the RTSS executable from the command line (using the RtssRun utility)
- Running the RTSS executable from the Task Manager Utility
- Double-clicking the RTSS executable
- Starting the RTSS process from within an application:
- Windows managed application
- Windows unmanaged application (using RtCreateProcess)
- RTSS application (using RtCreateProcess)
A process exits under one of these conditions:
- The last thread of the process has exited
- Any thread of the process calls ExitProcess
- The process is terminated using wRTOS Task Manager or RtssKill utility
- RtTerminateProcess terminates the process
Processes in the Windows Environment
A process running in the Windows environment starts interacting with wRTOS when it makes an RTAPI call. wRTOS will then allocate proxy resources for this process. The number of Windows processes interacting with wRTOS is dynamic; it depends on your system's configuration and resources. Windows processes must use the RTAPI functions to interact with RTSS applications.
Related topics: