Qualcomm手机NandFlash启动流程解析
需积分: 50 35 浏览量
更新于2024-10-05
收藏 38KB DOC 举报
"本文主要探讨高通手机的boot流程,特别是NandFlash启动方式,从按下开机键到显示待机界面的全过程。涉及的关键技术包括Rex操作系统、TMC任务和ui_task、CoreApp等。文章旨在理解手机初始化流程,并为定制初始化工作提供指导。"
在高通手机的启动过程中,有两种主要的启动方式:Nor Flash和Nand Flash。Nor Flash启动方式较为简单,但本文主要关注的是与PC启动方式相似的Nand Flash启动。当用户按下开机键时,会产生一个时钟中断,启动Boot Load硬件。该硬件会读取Nand Flash上的第一个Block(8KB)中的Boot代码,并将其复制到内核内存(RAM)的特定地址0xFFFF0000开始执行。
Boot代码的作用至关重要,它负责整个系统的硬件初始化,包括CPU、内存和其他外设的检测与配置,类似于PC的BIOS功能。Boot还会将完整的手机软件包(AMSS软件)从Nand Flash复制到系统内存(SDRAM)中,并将执行权交给AMSS软件的入口点函数`main()`,位于`mobile.c`文件中。
在`main()`函数内部,操作系统Rex的初始化工作开始进行,通过调用`rex_init()`。`rex_init()`执行的任务主要包括:
1. 初始化操作系统必需的数据结构,如定时器链表和任务链表,这些是操作系统运行的基础。
2. 创建三个核心任务:`rex_idle_task`、`rex_dpc_task`和`tmc_task`。
- `rex_idle_task`通常为空,不执行任何操作,可能作为CPU空闲时的默认状态。
- `rex_dpc_task`的具体功能在文中未详细说明,可能涉及到低优先级的后台处理或驱动程序的调度。
- `tmc_task`关联于TMC(可能是指Task Management Controller或者相关的任务管理机制),其具体功能也需要进一步研究。
随着Rex的初始化完成,手机系统逐步进入运行状态。后续的启动过程可能还包括网络连接、用户界面的加载以及其他核心应用程序(如CoreApp)的启动。这些步骤共同构成了从开机到用户交互的完整流程。
高通手机的开机boot流程涉及复杂的硬件初始化、操作系统加载以及核心任务的创建,为理解手机系统运行原理提供了基础。对于开发人员来说,深入理解这一过程对于优化系统性能、解决启动问题或定制特定功能具有重要意义。
2023-06-09 上传
2023-09-07 上传
2023-03-26 上传
2024-07-21 上传
2023-05-24 上传
2024-11-12 上传
wjf3178
- 粉丝: 0
- 资源: 13
最新资源
- mathematicalPendulum
- JavaScript-modules-in-browser:在JavaScript中使用ECMAScript模块
- NodaChat:基于 Node.js、Express 4、Jade、Bootstrap 和 Socket.IO 的简单聊天
- 毕业设计&课设--毕业设计之SpringCloud-B2C电子商务平台App端.zip
- jwt-rsa:在一个简单的界面中结合了jsonwetokens和node-rsa的包装器
- Vali-it-projektid:我的训练营文件
- Excel模板财务收支报表5.zip
- angular-contacts:管理系统联系人列表
- Autour_de_DAG:G. Vezzosi在2013年Spring在巴黎7举行的研讨会周期的注释。
- Excel模板项目测试用例表.zip
- esp32_php:Ejercicios de prueba de PHP
- ui5-middleware-code-coverage:用于UIt工具的代码覆盖率检测器
- protolog:为所有变量添加全局日志方法
- 【地产资料】XX地产 培训专员考勤表.zip
- teachPro:问题管理系统
- uuidtools:一个简单的通用唯一ID生成库