在高通7系列的架构中,一个IC内部集成有两个ARM处理器,一个ARM9,专门负责处理通信协议,射频以及GPIO等,另外一个是ARM11,用来处理多媒体,以及其他的一些任务。在ARM9端,有一个自己的操作系统,我们称之为AMSS (Advanced Mobile Subscriber Software),在ARM11端,可以执行我们熟知的一些操作一些,例如linux。这两个处理器之间通过shared memory的硬件方式来沟通,操作系统之间通过RPC - remote procedure call的方式交互数据。表面看看起来二者之间的通信很容易理解,但其实在实际开发上却是不同的。由于ARM9是负责最直接的硬件IO的控制,因此处理默认的PIN定义可以有AMSS先做好之外,如果在linux执行的时候改变的话,必须通过RPC去请求ARM9上面的AMSS来处理。然而,RPC是利用Shared memory driver来forward,由于shared memory driver是没有原始码的,因此对于linux kernel里面的driver来讲,有部分的API等同于是没有源码与追踪的。只能假设share memory里面的程序是没有问题的。
下面来看看AMSS的软件架构
|-- AMSS
| |-- platform
| |-- products
|
|-- AMSS_CUST
|--products
AMSS里面的就是amss的源码,包含platform以及我们对这个芯片提供的一些服务,这些服务都以task的形式存在products下。
在\AMSS\platform下包含有l4, cs, libstd, 与rte。这些为\AMSS\products下的task提供了底层运行环境。L4是内核,提供地址空间、线程、IPC等功能;cs(component service)实在L4的基础上提供了一个rte(run time environment),提供了内存保护,线程创建、同步等功能,高通定义了相关的接口可以让我们增加RTE所能提供的功能;libstd里面包含了AEE(application executive)的接口和一个静态的AEE库;rte里面包含一些与IPC有关的内容。
在\AMSS\products下包含很多内容,详情如下:
|-- 76XX
|-- 1x // Source code for CDMA 1x protocol
|-- apps // Source code for some BREW apps, such as core and UI
|-- apps_proc // Application boot loader
|-- build // Trace32 JTAG script for building, build image, and log
|-- core // Shared APIs folder
|-- dal // Device abstract layer code
|-- data // Source code for data services
|-- drivers // Drivers for LCD, peripherals, etc.
|-- hal // Hardware abstract layer code
|-- hdr // Source code for high data rate protocal
|-- modem // Modem AMSS source code
|-- modem_proc // Modem AMSS boot files
|-- multimedia // Multimedia files, including audio, video, etc.
|-- nas // Source code for NAS layer protocal
|-- secboot // Boot loaders, from PBL to OEMSBL
|-- services // Source code for services
|-- tools // Code for flash operations
|-- wcdma // Source code for WCDMA protocol
|-- wconnect // BT soc config and ftm (factory test mode)
分享到:
相关推荐
它拥有一个独立的操作系统——AMSS(Advanced Mobile Subscriber Software),专门用于管理这些通信相关的任务。 - **ARM11处理器**: 则负责执行更为常见的任务,如用户界面(UI)、应用程序运行等。ARM11上运行的是...
QCAT supports performance log packets, mobile events, and logged signaling messages generated by Qualcomm Dual Mode Subscriber Software (DMSS) and Advanced Mode Subscriber Software (AMSS) targets....
在这一架构中,ANDROID操作系统运行在ARM11处理器上,而ARM9则专注于处理通信协议、射频、GPIO等关键通信功能,这部分被称为MODEM端,运行着名为AMSS(Advanced Mobile Subscriber Software)的操作系统。...
1. **ARM9处理器**:专门负责处理通信协议、射频以及GPIO等任务,采用AMSS(Advanced Mobile Subscriber Software,高级移动用户软件)作为软件架构。 2. **ARM11处理器**:主要用于处理多媒体、上层应用等其他...
Qmi.so提供了RIL与AMSS(Advanced Mobile Subscriber Software)之间的消息交互接口。当RIL层需要向AMSS发送请求时,会通过Qmi接口进行;同时,AMSS也会通过Qmi接口向RIL层上报消息。 #### 三、QCRIL简介 QCRIL是...
##### AMSS (Advanced mode subscriber software) **高级模式用户软件**是指一种软件解决方案,旨在为用户提供更高级的功能和服务,如高速数据传输和多媒体服务等。 ##### ASIC (Application-specific integrated ...