看了深入理解linux内核一书的最后对linux启动流程的介绍,下面就把我能理解的写一下吧:

  • bios(硬件加电自检POST,寻找第一个启动设备)
  • the boot loader(可以从硬盘启动也可以从软盘,这一步要加载内核到内存)
    • 从硬盘启动
  • setup函数(检查硬件设备并为内核线程执行设定环境)
  • setup32函数(有两个setup32函数)
    • 第一个setup32(解压内核屏幕能看到解压完成,跳到物理地址0x00100000运行第二个setup32函数)
    • 第二个setup32(为进程0设定执行环境)
  • start_kernel函数(内核的初始化,启动大部分内核组件,有进程1运行/sbin/init来启动相应的启动程序)

最新文章

  1. python之三层菜单递归
  2. CSS3 笔记二(Gradients)
  3. Unity3d之个性化皮肤
  4. Linux安全之——Ubuntu的iptable命令使用
  5. iOS - 二维码扫描和应用跳转
  6. Oracle笔记 七、PL/SQL 异常处理
  7. jQuery+css+div--一些细节详解
  8. RMI
  9. MSRA面试总结
  10. Matlab文件操作
  11. android利用反射通过代码收缩通知栏
  12. redisbook笔记——redis内存映射数据结构
  13. 使用VS2003 发送Email
  14. 项目中怎么去掉tomcat的猫
  15. 按 Eclipse 开发喜好重新布置 cocos2dx 目录层次
  16. 使用minidom来处理XML的示例(Python 学习)(转载)
  17. 微软Build 2017第二天 .NET Standard 2.0 Preview 的客户端跨平台
  18. python_requests随笔
  19. 无法转换json问题 Error: Model.nodeDataArray value is not an instance of Array or NodeList or HTMLCollection
  20. docker使用现有容器生成新的镜像

热门文章

  1. cocos2dx中常见设计模式
  2. Palindrome Pairs
  3. Newtonsoft.Json高级用法(转)
  4. [转载]Matlab之静态文本多行输出
  5. bootstrap 时间控件带(时分秒)选择器
  6. aspx页面,中文乱码解决方案
  7. c语言冒泡排序
  8. Bug集
  9. 【如何快速的开发一个完整的iOS直播app】(原理篇)
  10. 《Linux 多线程服务端编程:使用 muduo C++ 网络库》电子版上市