当前位置:Linux教程 - Linux文化 - 内核启动程序,为什么不直接将system模块搬到0x00000处??

内核启动程序,为什么不直接将system模块搬到0x00000处??


小弟刚开始读linux内核,就碰到了问题,希望大虾们多多帮助。 内核启动程序,为什么不直接将system模块搬到0x00000处,而是先搬到0x10000处,再搬到0x00000处??

>>> 此贴的回复 >> 0一开始时放着BIOS中断处理程序,必须依靠这些中断处理程序才能将内核从磁盘加载到内存中,如果一开始就从0开始写,中断程序会被覆盖掉,导致内核不能成功读入内存。所以要先把内核完全读到内存后,才覆盖掉中断程序的内容

>>> 此贴的回复 >> 刚开始从绝对物理地址存放的是BIOS的中断向量。 必须在把中断向量读入系统后才能覆盖。