| |||
| Home > OS Support in RealView Debugger > About OS support in RealView Debugger | |||
RealView Debugger supports debugging of embedded operating system (OS) applications. An OS often uses separate software components to model and control the hardware with which it interacts. For example, a car engine controller might have two components to:
model the motion of the cylinder, enabling it to control ignition and valve timing
monitor fuel consumption and car speed and display trip distance and fuel economy on the dashboard.
Using components like this enables the OS to schedule tasks in the correct order to meet the specified deadlines. OS tasks can be:
Created by the operating system, these contain information about program resources and execution state, for example program instructions, stack, and heap. Processes communicate using shared memory or tools such as queues, semaphores, or pipes.
Running independently, perhaps as part of a process, these share resources but can be scheduled as tasks by the OS.
A thread can be controlled separately from a process because it maintains its own stack pointer, registers, and thread-specific data.
In single-processor systems, an OS controls one or more processes running on a single processor. Similarly, a process can have multiple threads, all sharing resources and all executing within the same address space. Because threads share resources, changes made by one thread to shared system resources are visible to all the other threads in the system.
In multiprocessor systems, specific processes and threads can be run on specific processors. For example:
Processor 1 is dedicated to a specific task, such as car engine timing. This is a single process with no threads.
Processor 2 has multiple tasks, such as displaying both the fuel economy and processing the average speed over a specified time. The developers implement these tasks as different processes, some of which have many threads.
The OS support does not require a license from ARM® Limited, but you must obtain a plug-in for your chosen OS.