Angel的初始化

时间:2008-12-23

  初始化包括下面这些操作序列。

  (1)将处理器模式切换到特权模式,禁止中断,并检测MMU是否存在。如果MMU存在,则可以在处理器特权模式下配置它。

  (2)根据编译时生成的地址值,Angel确定应用程序运行时的位置及异常中断向量的位置。

  (3)将Angel的代码段及数据段复制到运行时的地址空间。

  (4)如果应用程序需要运行,则将其也复制到它的运行时地址空间。

  (5)设置各种处理器模式下的数据栈。Angel将维护它独立的特权模式下的数据栈,用户可以配置Angel的数据栈位置。

  (6)设置目标系统中特有的部件,如MMU及Profiling时钟。

  (7)建立Angel的任务串行器。

  (8)将处理器模式切换到用户模式,进行高层次的初始化操作,初始化C语言运行时库及Angel的C函数。

  对于完整版本的Angel及版本的Angel,从这一步开始,初始化操作有所不同。对于完整版本的Angel,进行如下的操作。

  ·建立基于ADP的通信通道。

  ·如果应用程序需要使用其他的通道,则可以建立单纯的数据通道(raw data channel)。

  ·将引导信息发送到主机上的调试器,并等待调试器的回应。

  对于版本的Angel,进行如下的操作。

  ·设置设备驱动程序,建立单纯的数据通道(raw dATA channel)。

  ·跳转到程序入口点_entry。

  



  
上一篇:Angel下载应用程序
下一篇:Angel实现调试器请求的功能

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料