13.06.2015 Views

Intel IXA SDK ACE Programming Framework - Department of ...

Intel IXA SDK ACE Programming Framework - Department of ...

Intel IXA SDK ACE Programming Framework - Department of ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Components <strong>of</strong> the <strong>IXA</strong> <strong>SDK</strong> for the IXP1200<br />

— Microcode macros for use in micro<strong>ACE</strong> microblocks and dispatch loops.<br />

l<br />

l<br />

l<br />

System s<strong>of</strong>tware, which includes the following:<br />

— The <strong>ACE</strong> runtimes for each <strong>ACE</strong>, which perform packet handling<br />

— The Object Management System (OMS), which acts as a name server and<br />

resource manager and provides the framework for interobject communication<br />

— The micro<strong>ACE</strong> Resource Manager, which manages micro<strong>ACE</strong> memory and<br />

coordinates communication between the core component and microblock in<br />

micro<strong>ACE</strong>s.<br />

— An embedded operating system (Linux, a widely-used, standard, open-source<br />

system)<br />

— A boot manager that performs power-on initialization<br />

— Device drivers<br />

— A TCP/IP protocol stack<br />

— Run-time libraries that provide execution and management services for the<br />

<strong>ACE</strong> model, name space, data handling, and interobject communication.<br />

S<strong>of</strong>tware development tools:<br />

— Network Classification Language (NCL), which you use to classify packets<br />

and direct actions to be taken.<br />

— An interface definition language, <strong>IXA</strong> IDL, in which you specify the crosscall<br />

interfaces that objects use to communicate through the OMS.<br />

— Linux compilers, assemblers, linkers, loaders, and debuggers for code in the<br />

various languages (C/C++, IDL, and NCL).<br />

— Command-line utilities for working with <strong>ACE</strong>s.<br />

— The IXP1200 Microengine Development Environment, a tool that supports the<br />

development and integration <strong>of</strong> microcode modules targeted for the microengines,<br />

the optimized packet processors on the IXP1200. This includes<br />

IXP1200 microcode, along with compilers, debuggers, and application development<br />

utilities.<br />

Predefined building blocks<br />

Example code and sample applications, reusable and modifiable library <strong>ACE</strong>s,<br />

predefined protocol descriptions, and other elements to make application development<br />

rapid.<br />

18 Introduction and Overview<br />

Revision 3.3, August 2001

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!