Qualcomm手机NandFlash启动方式开机揭秘:初始化与任务创建

3星 · 超过75%的资源 需积分: 2 18 下载量 91 浏览量 更新于2024-09-16 收藏 132KB DOC 举报
本文详细解析了Qualcomm手机开机的全过程,特别是针对采用NandFlash启动方式的手机,如Amoi品牌。文章首先介绍了Qualcomm平台支持的两种启动方式,其中NorFlash启动较为简单但非Amoi采用,因此主要关注NandFlash启动流程。 开机过程中,当用户按下开机键,会触发时钟中断,引导Boot Load硬件将NandFlash中的第一个8K Block的Boot代码复制到CPU自带的内核内存(RAM,类似CPU缓存),并开始执行。Boot的主要任务是进行硬件初始化,类似于电脑的BIOS自检,确保所有硬件设备正常工作。它还会将手机软件代码(包括AMSS软件包)加载到SDRAM中,然后将控制权转移给AMSS软件的main()入口函数。 进入main()函数后,操作系统 Rex 的初始化开始,这主要通过调用rex_init()函数来完成。rex_init()的主要职责包括: 1. 初始化操作系统所需的基础数据结构,如定时器链表和任务链表等,这些都是操作系统运行的基础框架。 2. 创建三个关键任务:rex_idle_task(空闲任务)、rex_dpc_task(异常处理任务)和tmc_task(可能是电话功能相关的任务)。这些任务在后续的系统运行中分别负责不同的功能,如保持系统在非活跃状态下运行以及处理突发的硬件事件。 通过以上步骤,Qualcomm手机成功地进入了操作系统环境,各个任务开始协调执行,用户即可看到待机界面,标志着手机开机过程的完成。理解这个过程对Amoi等手机制造商进行定制化开发和优化手机性能至关重要。本文为Amoi手机的初始化工作提供了深入的指导,有助于提高手机性能和用户体验。