Quadros Systems Inc.
MultiStack

The RTXC Multi-Stack framework is perfectly adapted to a broad spectrum of applications requiring preemptive scheduling of prioritized tasks. In this kernel, code entities are called Tasks, each of which has its own independent stack for interrupt and call frames and local variables. The separate stack of each Task permits rapid, deterministic switching between tasks in response to system dynamics.

Of course, RTXC/ms is a scalable kernel allowing you to configure it to meet the exact needs of your application. Through RTXCgen, you can select the set of object classes and their properties that you want to include, a process that automatically scales the code of the kernel to reflect your precise specification.

You may define the objects you need for your application as being either static or dynamic. You define static objects and the values of their properties, such things as the size of a task's stack and its entry point. Dynamic objects do not become usable until runtime when application code creates the objects and defines their properties. RTXC/ms makes no differentiation between a static or a dynamic object once it is created. You may use only static objects or dynamic objects or any mixture of the two. RTXC/ms allows dynamic object usage as a scalable option by class for all supported object classes.

Also available with the RTXC/ms framework is a very extensive suite of network communication protocols under the product name umbrella of RTXC Quadnet TCP/IP. Whatever your communication needs are, you'll find the protocol elements you need to make the right connection quickly and easily. And these protocol elements are already integrated into the RTXC/ms environment, eliminating the need for you to spend time doing it. Just link it, load it, and call it. What could be easier?

The RTXC Multi-Stack framework features
  • Powerful, full-featured API scalable from approximately 25 KB of ROM down to less than 2 KB
  • Support for preemptive, round-robin and tick-sliced scheduling
  • Support for static or dynamic objects
  • Support for 11 classes of objects with over 250 kernel services
    • Tasks for managing code entities
    • Semaphores for event synchronization
    • Queues, Mailboxes and Messages, and Pipes for moving data
    • Event Sources, Counters and Alarms for generalized counting and time management
    • Memory Partitions for managing RAM
    • Mutexes for exclusive access to resources
    • Exceptions for versatile interrupt management
  • Support for priority inversions
  • Easy to go from RTXC 3.2 to RTXC Quadros

Choose the best RTOS for your project

Top Questions to Ask your Supplier Before Choosing an RTOS (PDF)

Additional features
  • The RTXCgen application and kernel configuration tool gives you the ability to quickly set up your application and then, when finished with your development reduce the footprint size by excluding any unused kernel objects or services.
  • VisualRTXC is a powerful visual design environment that works with the RTXC Quadros RTOS to dramatically reduce development time for embedded systems. The result is an easy-to-use, powerful design tool that allows the developer to rapidly move between design concepts and generated C code.
  • Virtually unlimited number of tasks and task priorities (default is 32,767).
  • Support for preemptive and non-preemptive tasks in the same system.
  • Synchronization with multiple independent variables. Most embedded systems use clock time for synchronization, however in some systems, angular displacement or number of rotations may be a more useful mechanism. RTXC Quadros lets you decide.
  • Kernel aware debugging support is available for many different IDEs.