我想知道Raspberry Pi的启动顺序在典型的设置(例如NOOBS)中是什么,从电源应用(或热复位,如果不同)到徽标的外观。或描述的地方。
除了该序列最需要的一般情况之外,我对早期阶段最感兴趣:
- 什么是ARM CPU的复位向量?在哪里/在哪里定义?
- 从什么内存中提取第一条ARM CPU指令?那在哪里,用什么技术来存储此代码?
- 那是ARM32还是Thumb(或者也许是Jazelle)代码?这取决于复位向量的低位吗?
- 早期启动代码的源(或反汇编或转储)可用吗?如果不是,是否有任何技术手段阻止使用JTAG端口来确定这一点?至于法律方面,我准备冒风险信任我对我所居住地区适用法律的理解的风险(法国),也就是说,至少在没有明确合同的情况下,我完全可以分析自己的计算机要求不要这样做。
- 外设以什么顺序初始化,并通过什么代码初始化?
- 在ARM CPU旁,BCM2835中是否运行着某些处理器/自动机,并且肯定地,其启动顺序与ARM CPU有何关系?
我准备深入研究《 ARM CPU的技术参考手册》和《BCM2835 ARM外设》或任何其他文档。
4
我只能说大部分信息都是封闭源代码,例如源代码,引导加载程序和SoC固件。。目前,分配是未知的。你应该知道一件事。BCM是GPU ...而不是CPU。引导加载程序从GPU部分开始,在那里初始化RAM,然后移交给CPU,这是我们可以访问源代码的第一个地方……又名Raspbian。祝好运。这个问题非常广泛,很难回答。
—
Piotr Kula 2013年
相关:在启动过程中会发生什么?。重复?
—
彼得·莫滕森