http://blog.csdn.net/dulijun_98103207/article/details/5327225

http://zhidao.baidu.com/link?url=Vfm4eR1GiMpDNABolRwa_VsG83MrWmvRAjvYPTaDT4BDn0Sb6lpWRew6mudnVWRcPD2r5s85Ok3lfCmCuaymmK

在高通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)

bsp:board support pacage,最低操作系统,相当嵌入器的整个主板驱动程序。最简单的驱动代码,属OS或Firmware的一部分,初始化主板芯片组上的各个控制器和硬体接口,然后可以对系统开发板进行调试或写入协调。amss:advanced mobile subscriber software,高级移动用户适用软件,dmss的升级版,基于高通MSM芯片的手机开发软件包,专门用于有关modem的手机软件开发,包括从实时操作系统到用户接口模块,amss则支持多模应用和切换方式。oemsbl,oem(Original Equipment Manufacturer)的Softbridge Basic language,原始设备生产商的嵌入式基础连接语言,在qcsbl之上对周边设备和硬件初始化,允许downloader烧录,加载appsboot,启动arm核心。然后就可以加载amss。rex是高通的Real-Time Executive,实时操作系统,brew平台的内核。。

AMSS - Advanced Mobile Subscriber Software相关推荐

  1. 手机软件测试英语,手机软件测试,mobile phone software testing,音标,读音,翻译,英文例句,英语词典...

    补充资料:软件测试 软件测试 software testing 配置项测试和系统测试. 加强测试管理对于保证测试可靠性十分重要,应按系统化的流程做好4步工作:①制定测试计划,确定总方针.资源及进度:② ...

  2. MSISDN(Mobile Subscriber International ISDN/PSTN number)

    MSISDN 是指主叫用户为呼叫GSM PLMN 中的一个移动用户所需拨的号码,作用同于固定网PSTN 号码 采取E.164 编码方式 存储在HLR 和VLR 中,在MAP 接口上传送 结构说明: 其 ...

  3. 高通android开发摘要

    一部分是开源的,可以从codeaurora.org上下载,还有一部分是高通产权的,需要从高通的网站上下载. 将高通产权的代码放到:vendor/qcom/proprietary 1. 设置bms一些参 ...

  4. MDM9x35MDM9x35启动流程简介

    1.前言.... 3 1.1编写背景... 3 1.2概述... 3 1.3定义与缩写... 3 1.4参考资料... 4 2.启动流程.... 4 2.1子系统.处理器及启动地址... 4 2.2启 ...

  5. msm8909 android5.1.1,MSM8909+Android5.1.1启动流程(1)---概述

    MSM8909+Android5.1.1启动流程(1)---概述 PBL:APPS PBL(ApplicationPrimary Boot Loader),主引导加载程序 RPM:ResourcePo ...

  6. 高通及安卓及QNX常用缩写

    Qualcomm(QC):高通 Android:安卓 GHS(GreenHills):格林希尔 QNX(Quick Unix):黑莓旗下一款商业实时操作系统. IFS(Image Filesystem ...

  7. 高通平台android开发总结 MSM平台上的AMSS

    http://blog.csdn.net/mirkerson/article/details/7691029 MSM平台上的AMSS REX启动分析--基于Qualcomm平台 1.高通平台andro ...

  8. 高通平台上的AMSS(Modem端) windows环境搭建

    高通平台上的AMSS(Modeom端)Windows环境搭建 一.首先简单介绍一下,高通平台7&8系列平台的软硬件架构. 如图: 硬件上采用的是ARM9+ARM11(最新的采用Cotex-A8 ...

  9. qualcomm amss 文件结构以及编译流程分析

    qualcomm amss 文件结构以及编译流程分析 https://blog.csdn.net/npjocj/article/details/8206695 AMSS的source实际上是Qualc ...

最新文章

  1. 华为:HarmonyOS 即将开源!
  2. 分类模型的性能评估——以SAS Logistic回归为例(2): ROC和AUC
  3. 计算机科学软件工程专业大学排名,2020软件工程专业大学排名及录取分数汇总(2021理科生参考)...
  4. c语言冒泡排序法程序填空_【C语言】两种方式实现冒泡排序算法
  5. yarn vite vue3.x
  6. 传感器怎么获取障碍物的宽度信息_机器人感知 -- 测距传感器
  7. 句句真研—每日长难句打卡Day16
  8. SpringBoot文档翻译系列——26.日志logging
  9. 1018. 可被 5 整除的二进制前缀
  10. 百面机器学习—6.PCA与LDA要点总结
  11. 视频教程-R语言数据分析挖掘实战-大数据
  12. Android之PreferenceActivity
  13. Java 8:那些Java8的常见写法
  14. 中国慕课moocpython答案_中国大学慕课mooc2020用Python玩转数据题目答案
  15. 阿里云发布企业云原生IT成本治理方案:五大能力加速企业 FinOps 进程
  16. 慎用yum update
  17. elementUI控制表格样式(表格头、表格行、表格列)
  18. 十大知识领域 5大管理过程 47个子过程
  19. Lambda和Stream流
  20. 这几个Python数据可视化探索实例,拿走不谢!

热门文章

  1. 试用期辞退员工要补偿多少月的工资
  2. (转)英文学习资源站点
  3. Mac mini 外接移动硬盘无法写入或者无法显示的解决方法
  4. JavaSE笔记(一)重制版
  5. 微型水质监测站——在线实时监测水质数据
  6. Tcl/Tk windows版下载与安装过程
  7. 基于B/S的即时通讯微博系统
  8. php gzip压缩解压缩
  9. swift 4.1 可选型optional
  10. snipaste (一款很好用的截图工具,图片悬浮在任何软件上,方便对比,尝试一下你不会后悔)