高通平台NandFlash启动与Rex操作系统解析
需积分: 10 99 浏览量
更新于2024-10-16
收藏 45KB DOC 举报
"高通实时操作系统Rex启动详解"
在深入了解高通实时操作系统Rex的启动过程之前,首先需要理解其所在的硬件环境。高通平台提供了两种启动方式,分别是NorFlash和NandFlash启动。NorFlash启动方式由于相对简单且在Amoi设备中未采用,故在此不做详细讨论。主要关注的是NandFlash启动方式,这种方式与PC的启动流程类似,是Amoi设备的实际启动方式。
当按下开机键,系统通过时钟中断触发BootLoader硬件。BootLoader位于NandFlash的第一个Block(8KB),被复制到内核内存(RAM,非后续提到的SDRAM)的0xFFFF0000地址并开始执行。BootLoader的主要任务是对系统硬件进行初始化,类似PC中的BIOS功能,包括对各种硬件设备的检测和配置。
BootLoader的一个关键操作是将整个手机软件代码(AMSS软件包)从NandFlash拷贝到系统动态随机存取内存(SDRAM)中。一旦硬件初始化完成,BootLoader会将控制权交给AMSS软件的入口点函数`main()`。这个`main()`函数位于`mobile.c`文件中,标志着操作系统接管执行流程的开始。
在`main()`函数内部,操作系统Rex的初始化工作通过调用`rex_init()`函数进行。`rex_init()`主要负责初始化操作系统所需的数据结构,如定时器链表和任务链表。同时,它还会创建三个关键任务:
1. `rex_idle_task`:空闲任务,目前未实现任何功能。
2. `rex_dpc_task`:其具体功能未知,暂时可以忽略。
3. `tmc_task`:这是一个重要的任务,可视为操作系统的核心任务,也是手机软件的主要入口点。`tmc_task`负责创建和管理AMSS软件中的其他所有任务。
至此,AMSS软件的执行流程已由`tmc_task`接手,开始执行手机软件的各种功能和服务。这个过程展示了Rex操作系统如何在高通平台上启动并运行,以及如何管理和调度任务,确保设备的正常运行。
194 浏览量
2009-08-25 上传
2019-03-01 上传
2012-02-27 上传
2021-12-25 上传
2009-12-30 上传
2021-08-09 上传
2011-01-06 上传
2009-06-19 上传
lwj_dxy
- 粉丝: 0
- 资源: 1
最新资源
- 探索AVL树算法:以Faculdade Senac Porto Alegre实践为例
- 小学语文教学新工具:创新黑板设计解析
- Minecraft服务器管理新插件ServerForms发布
- MATLAB基因网络模型代码实现及开源分享
- 全方位技术项目源码合集:***报名系统
- Phalcon框架实战案例分析
- MATLAB与Python结合实现短期电力负荷预测的DAT300项目解析
- 市场营销教学专用查询装置设计方案
- 随身WiFi高通210 MS8909设备的Root引导文件破解攻略
- 实现服务器端级联:modella与leveldb适配器的应用
- Oracle Linux安装必备依赖包清单与步骤
- Shyer项目:寻找喜欢的聊天伙伴
- MEAN堆栈入门项目: postings-app
- 在线WPS办公功能全接触及应用示例
- 新型带储订盒订书机设计文档
- VB多媒体教学演示系统源代码及技术项目资源大全