Qualcomm手机开机流程解析:从Boot到操作系统启动
3星 · 超过75%的资源 需积分: 49 186 浏览量
更新于2024-10-21
收藏 159KB PDF 举报
"本文主要探讨了Qualcomm手机的开机原理,特别是基于NandFlash启动方式的过程,涵盖了从按下开机键到出现待机界面的整个流程。文中提到了BootLoad硬件如何加载Boot代码到内核内存,Boot代码如何完成硬件初始化,以及如何将控制权交给AMSS软件。此外,还介绍了操作系统Rex的初始化,包括数据结构的设置和核心任务的创建。"
Qualcomm手机的开机流程是一个复杂而精细的过程,尤其当使用NandFlash启动方式时,与传统的NorFlash启动方式相比更为相似于PC的启动。在这个过程中,按下开机键触发时钟中断,BootLoad硬件开始执行,将NandFlash的第一个Block中的Boot代码复制到内核内存(非SDRAM)的特定地址,并开始执行这段代码。
Boot代码的主要职责是进行系统的硬件初始化,这与PC上的BIOS类似,负责检测和配置各种硬件组件。这一阶段结束后,Boot会将手机软件代码整体复制到SDRAM中,这是手机运行的主要内存区域。然后,Boot将执行权交给AMSS软件的入口点函数`main()`,该函数在`mobile.c`中实现。
进入`main()`函数后,操作系统Rex的初始化工作就开始了。`main()`调用`rex_init()`,这个函数不仅初始化操作系统必要的数据结构,如定时器链表和任务链表,还创建了三个关键任务:`rex_idle_task`、`rex_dpc_task`和`tmc_task`。这些任务在Rex操作系统中扮演着核心角色:
1. `rex_idle_task`通常是低优先级的任务,用于处理系统空闲时的活动。
2. `rex_dpc_task`(Deferred Procedure Call Task)可能用于处理延迟的或非实时的任务。
3. `tmc_task`可能与通信或任务管理相关,具体职责未在摘要中明确,但在Qualcomm的平台上通常涉及通信处理和任务调度。
通过这个过程,Qualcomm手机能够成功地从开机到进入待机界面,为用户提供交互界面和各种服务。这一系列步骤展示了手机软件和硬件之间的紧密协作,以及操作系统在初始化过程中如何构建和管理系统的基石。
2022-08-03 上传
2017-11-23 上传
194 浏览量
2020-09-20 上传
点击了解资源详情
点击了解资源详情
benit
- 粉丝: 0
- 资源: 4
最新资源
- JAVA设计模式(PDF)
- 算法大全(C,C++)
- 常用HTML正则表达式.doc
- 网络管理员常用doc命令
- 基于数字水印的图像认证技术研究
- 基于JPEG压缩不变量和数字水印的图像认证方法
- SpringGuide
- 开发JPA应用.pdf
- Linux内核完全注释的资料
- C和C++及数据结构笔试题集锦
- Apress - Pro LINQ Language Integrated Query in C# 2008
- Azure service Platform
- java程序设计大学教程
- opnet 使用 说明
- professional iphone / ipod touch programming
- Rose建模简单步骤