相关文章  
  • 浅谈 Linux 操作系统的优化及安全
  • 如何实现 Linux 操作系统的自动登录
  • 轻松解决 Linux 操作系统故障恢复技巧
  • 做一个好管家: Linux 系统管理技巧大荟萃
  • Linux 下的软件开发
  • Linux 下的软件安装
  • Linux 下的硬件安装
  • 精通 Linux 系统文件命令
  • Linux 与 Windows9x/2000 打印机共享
  • Linux 如何助 Windows 用户免费转换 PDF 文件
  •   推荐  
      科普之友首页   专利     科普      动物      植物        天文   考古   前沿科技
     您现在的位置在:  首页 >>文献 >>培训

    剖析 Linux 系统启动过程3

    r>
      其中bootsect.S是生成引导扇区的汇编源码,它完成加载动作后直接跳转到setup.S的程序入口。setup.S的主要功能就是将系统参数(包括内存、磁盘等,由BIOS返回)拷贝到特别内存中,以便以后这些参数被保护模式下的代码来读取。此外,setup.S还将video.S中的代码包含进来,检测和设置显示器和显示模式。最后,setup.S将系统转换到保护模式,并跳转到 0x100000。

      那么0x100000这个内存地址中存放的是什么代码?而这些代码又是从何而来的呢?

      0x100000这个内存地址存放的是解压后的内核,因为Red Hat提供的内核包含了众多驱动和功能而显得比较大,所以在内核编译中使用了“makebzImage”方式,从而生成压缩过的内核,在RedHat中内核常常被命名为vmlinuz,在Linux的最初引导过程中,是通过“arch/i386/boot/compressed/“中的head.S利用misc.c中定义的decompress_kernel()函数,将内核vmlinu

    页码:[1] [2] [3] [4] [5] [6]3页、共6页

         

          设为首页       |       加入收藏       |       广告服务       |       友情链接       |       版权申明      

    Copyriht 2007 - 2008 ©  科普之友 All right reserved