Growing Complexity —
Partitioning as a Solution —
Managing Priorities —
Watchdog Processes —
OS-controlled Time Partitioning—
Simplifying Parallel Development and Integration Testing —
Quantifying Development Savings —
Minimum Effort
[+]
Growing Complexity
Networking and telecommunication OEMs are at the forefront of design complexity. A network element can contain hundreds of thousands or even millions of source ...
Partitioning as a Solution
Recently, the concept of partitioning has gained mindshare as a way to manage these complex integration issues. Briefly stated, this approach allows design teams to ...
Managing Priorities
A priority-based scheduler isn't a "fair share" scheduler. The highest-priority task with work to do can monopolize the CPU and starve all other tasks of CPU time. Consequently ...
Watchdog Processes
Sometimes, a group of related threads will starve other threads of CPU time. In other cases, starvation results from a single "runaway" thread that runs in ...
OS-controlled Time Partitioning
Some RTOSs support CPU time partitioning. This concept provides a container for processes and threads, called a partition, that can be allocated a guaranteed share ...
Simplifying Parallel Development and Integration Testing
Time partitioning facilitates parallel development by allowing the system designer to define a CPU budget for each subsystem. This approach ...
Quantifying Development Savings
Using the build, test, find, and fix method to deal with task starvation is an expensive proposition. Often, starvation results in intermittent, unexplained ...
Minimum Effort
As complexity and code size grows, the probability that task starvation and other software defects will make their way into final product also grows. The cost of resolving ...