uclinux总结(2)
时间:2007-03-24 来源:pywj777
uClinux中断向量初始化
当linux启动后产生中断是如何执行的?由于ARM-CPU在发生中断时总是转入0x18去执行,这一点是不能改变的。对于linux来说通过MMU页面映射来将虚拟地址0x18映射为物理地址0xC0000018,然后linux内核只要把中断向量放在那里就行。但是对于uclinux来说并没有MMU,那么产生中断后又是如何执行的呢?答:在执行uClinux时,uClinux会在指定位置(vectors_base()指定的位置)设定好中断向量和中断程序,所以要在0x00000000至0x00000020地址处设定好正确的中断向量映射,将中断向量映射到uClinux设定的位置。
当linux启动后产生中断是如何执行的?由于ARM-CPU在发生中断时总是转入0x18去执行,这一点是不能改变的。对于linux来说通过MMU页面映射来将虚拟地址0x18映射为物理地址0xC0000018,然后linux内核只要把中断向量放在那里就行。但是对于uclinux来说并没有MMU,那么产生中断后又是如何执行的呢?答:在执行uClinux时,uClinux会在指定位置(vectors_base()指定的位置)设定好中断向量和中断程序,所以要在0x00000000至0x00000020地址处设定好正确的中断向量映射,将中断向量映射到uClinux设定的位置。
相关阅读 更多 +