4. 操作系统
4.1 概述
操作系统负责运行时间调度,资源管理和AP所有应用的进程间通信。OS和EM模块一起工作。EM负责平台初始化和使用OS执行应用的启动和关闭。
AP平台不会为高性能处理器指定新的操作系统。而是它定义了adaptive 程序使用的执行上下文和操作系统接口(OSI)。
OSI规范包含应用程序接口,它们是AP应用程序的标准应用程序接口ARA的一部分。操作系统本身可以很好地提供其他接口,例如创建进程,这些接口是EM启动应用程序所需的。但是,提供这些功能的接口,除了其他功能外,不能作为ARA的一部分使用,它被定义为依赖于平台实现。
OSI同时提供C和c++接口。对于C程序,应用程序的主要源代码业务逻辑包括POSIX标准中定义的C函数调用,即IEEE1003.13[1]中定义的PSE51。在编译过程中,编译器决定平台的操作系统中的哪个C库提供了这些C函数,可执行的应用程序会在运行时被链接。对于c++程序,应用程序软件组件的源代码包括c++标准及其标准c++库中定义的函数调用。
4.2 POSIX
市场上有几种提供POSIX兼容接口的操作系统,例如Linux。但是,与平台服务和基础相比,应用程序使用操作系统API受限。
一般的假设是,用户应用程序应该使用PSE51作为操作系统接口,而平台应用程序可以使用完整的POSIX。如果在应用程序级别上需要更多的特性,那么这些特性将来自POSIX标准,而不是在可能的情况下新指定的。
Adaptive Platform Foundation和Adaptive Platform Services功能的实现可能会使用将来的POSIX调用。特定调用的使用将对实现者开放,而不是标准化。
4.3 调度
操作系统支持多线程和多进程。标准的调度是POSIX标准的SCHED_FIFO和SCHED_RR。其他的调度策略比如SCHED_DEADLINE或者其他的操作系统特定的策略是被允许的。而限制是不同AP实现不能移植。
4.4 内存管理
多进程支持背后的其中一个原因是实现不同功能集合和AA之间的免打扰。OS的多进程支持迫使每个进程在一个独立的地址空间中,与其他进程隔离和保护。同一个可执行文件的两个实例在不同的地址空间中运行,这样它们可以共享相同的入口点地址和代码,以及在启动时的数据值。但是,这些数据实在内存中不同的物理页中。
4.5 设备管理
设备管理将在POSIX PSE51接口中提供。有关详细信息,请参阅POSIX规范。
网友评论