Intel IXP400 Frozen Dessert Maker User Manual


 
Intel
®
IXP400 Software
Software Architecture Overview
April 2005 IXP400 Software Version 2.0 Programmer’s Guide
32 Document Number: 252539, Revision: 007
2.7 Threading and Locking Policy
The software release 2.0 access-layer does not implement processes or threads. The architecture
assumes execution within a preemptive multi-tasking environment with the existence of multiple-
client threads and uses common, real-time OS functions — such as semaphores, task locking, and
interrupt control — to protect critical data and procedure sequencing. These functions are not
provided directly by the OS, but by the OS abstraction components.
2.8 Polled and Interrupt Operation
It is possible to use access-layer components by running the Queue Manager in a polled mode or in
an interrupt driven mode of operation. A customers application code may be invoked by registering
with the callback mechanisms provided in the access-layer components. Access-layer components
do not autonomously bind themselves to interrupts but generally may be dispatched by an interrupt
service routine that is bound to the Queue Manager interrupts. Or, a timer-based task may
periodically check the queue manager status and dispatch the access-layer components that are
registered to specific queues. Refer to Chapter 18 for additional information.
All data path interfaces are executable in the context of both IRQ and FIQ interrupts, though not all
operating systems may take advantage of FIQ interrupts in their default configuration.
2.9 Statistics and MIBs
The software release 2.0 access-layer components only maintain statistics that access-layer clients
cannot collect of their own accord. The access-layer components do not provide management
interfaces (MIBs). Access-layer clients can use the statistics provided to implement their own
MIBs.