Xenomai-forge Native API概述

Xenomai-forge Native API概述
本文档的目的
本文档旨在提供一个关于Xenomai的Native API的通用浏览。新用户应该发现关于这个接口背后的逻辑的设计信息。本文档应该是API参考手册的有益补充。
这个API是做什么的?
由于Xenomai是内在不可知的API,它能够运行各种特性的接口,比如VxWorks, pSOS+, uITRON或者VRTX那样的模拟器,模仿传统RTOS的APIs,通常为了移植遗留的应用程序。但是你可能不一定要建立对这些模拟器全新的应用程序,因为这种接口兼容性不是一个问题,相反,你可能只是想使用它利用底层实时所有功能编程接口
核心,充分利用高集成度GNU / Linux环境
为此,Xenomai带来两种可能性:一个实时
延长的标准
的POSIX API,并选择自己的API任何应用程序可以使用这是语义
接近传统nonPOSIX提供的接口
RTOS的后者接口
简单地称为原生API以区别于其他定义
Xenomai领域之外
API的特点
由于Xenomai大约是提供一个稳定developerfriendly
实时
系统在

基本
 But you may not
necessarily want to build your brand new application over those emulators because
compatibility with such interfaces is not an issue; in contrast, you may just want to use a
programming interface which leverages all the capabilities of the underlying realtime
core, and makes full use of its high integration level with the GNU/Linux environment.
To this end, Xenomai brings two possibilities : a realtime
extension of the standard
POSIX API, and its own API of choice any application can use, which is semantically
closer to the interfaces provided by traditional (nonPOSIX)
RTOS. The latter interface is
simply called the native API, to differentiate from the others, which have been defined
outside of the Xenomai realm.
API characteristics
Since Xenomai is about providing a stable and developerfriendly
realtime
system in a
GNU/Linux environment, the native API follows these guidelines:
A compact API
The native API is reasonably compact, hopefully still providing a comfortable
programming environment, in less than a hundred of distinct services.
Orthogonality
Care has been taken to avoid multiple variations of semantically and functionally close
services, that would end up being only differentiated by varying names or details in their
respective prototype.
The rationale behind such design choice is plain simple: we feel that the level of freedom
brought to the application developer by an API does not depend on the number of
available system calls, but on the capacity she is given to identify, pick and combine the
existing services in a nonambiguous
and reliable fashion. For this reason, those services
must be orthogonal, always have a straightforward purpose, and rely on rocksolid
basic

你可能感兴趣的:(Linux)