首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    linux内核升级图文攻略 转

    发行版 Linux内核的发展过程中,我们还不得不提一下各种Linux发行版的作用,因为正是它们推动了Linux的应用, 从而也让更多的人开始关注Linux。...Linux的 引导程序由汇编代码文件arch/i386/boot/bootsect.S生成, 它利用对BIOS功能的调用将 arch/i386/boot/下的setup.S文件和内核映象加载到内存。...由于bzImage超出了640K这一限制,所以linux设计了一个 bootsect_helper子程序(定义在arch/i386/boot/setup.S中), 引导程序通过循环调用bootsect_helper...将内核映象一块一块的装入内存,当内核加载完毕,系统跳转到setup.S的开始位置开始执行, setup.S仍在实模式下运行,主要功能是设置系统参数 (如:内存、磁盘等), 并为进入保护模式做准备,...当用户选择启动linux系统后,同样也跳转到setup.S上运行。  3、内核初始化  当setup.S执行完后,CPU进行保护模式,并开始执行内核, .

    3.6K51

    操作系统的启动

    MBR分区在硬盘上的组织形式大致如下: MBR.png 2, 三方协议 想要把操作系统启动起来,是需要多方按照一定的协议进行协作才能完成的,以Linux0.11,BIOS+MBR分区,Intel80x86CPU...此时内存第一次有了操作系统的代码,第一个扇区的内容其实就是linux/boot/bootsect.s的内容,其主要功能就是把第二批第三批代码加载到内存中规划好的位置。...在bootsect中,读取的是从第二个扇区开始的4个扇区,加载到0x90200(SETUPSEG)处,这些内容对应linux/boot/setup.s这个文件。...此时内存的视图如下: linux内存.png所以,我们可以知道,当BIOS运行后,会通过int0x19中断读取第一扇区的内容,BIOS并不管这个扇区里是否有内容。...3, grub 经过多年的发展,引导程序已经由最初像Linux0.11的bootsect.s,setup.s等发展为grub,grub2之类的启动引导程序,第一扇区(主引导记录)也从bootsect.s

    1.7K30

    进入Linux内核前的准备

    最近看到这个github仓库flash-linux0.11-talk,觉得还算是蛮有意思的,加上网络编程的课程又有抄写一段tcp协议实现代码或者交一篇linux内核源码阅读的笔记,还是比较讨厌这种低效率的抄写的所以就想写篇文章记录一下粗浅阅读源码后的大概了解...进入linux内核前的准备 开机 如果问电脑是如何一步一步开始运行操作系统的,那么第一件事情当然是按下开机键啦。...加载setup.s 加载bootsect后,接下来我们会加载setup.s这个文件,当然加载这个文件的程序肯定也是写在bootsect.s里面的,让我们继续往下读bootsect.s。...因此到这里结束,加载setup.s的工作也就完成了,接下来就是加载操作系统内核。...我们结合代码来看看如何设置GDT 继续看setup.s endmove后的内容。

    6.6K20
    领券