① 操作系统,进程和线程
每个AA被实现为一个独立的进程,具有自己的逻辑内存空间和名称空间。
请注意,单个AA可以包含多个进程,并且可以将其部署到单个AP Instance上或分布在多个AP Instance上。
每个进程都由OS从可执行文件实例化。可以从单个可执行文件实例化多个进程。同样,AA可以构成多个可执行文件。
功能集群通常也被实现为进程。功能集群也可以用单个过程或多个(子)过程来实现。自适应平台服务和非平台服务也被实现为进程。
所有这些进程可以是单线程进程或多线程进程。但是,根据进程所属的逻辑层,它们可以使用的OS API有所不同。如果它们是运行在ARA之上的AA,则它们只能使用PSE51。
如果该进程是功能集群之一,则可以自由使用任何可用的OS接口。
综上所述,从操作系统的角度来看,AP和AA只是形成一组进程,每个进程包含一个或多个线程——这些进程之间没有区别。这些进程确实通过IPC或任何其他可用的OS功能相互交互。请注意,AA进程可能不会直接使用IPC,而只能通过ARA进行通信。
② 基于库或基于服务的功能集群实施
功能集群可以是Adaptive Platform Foundation模块或Adaptive Platform Service。如前所述,这些通常都是进程。为了使它们与AA(也是进程)交互,它们需要使用IPC。有两种替代设计可以实现此目的。
一种是“基于库”的设计,其中由功能集群提供并链接到AA的接口库直接调用IPC。
另一个是“基于服务”的设计,该进程使用通信管理功能,并且具有链接到AA的Server P
|