Linux Kernel
文章平均质量分 79
教练_我要踢球
好好想一下,认真码代码~
展开
-
一切从这里开始吧
说实话,今天真的被内核的考试打击了,以前总是觉得自己对内核至少还算是有了个大体的了解,对于2.2的内核也算是有了初步的熟悉,但是今天的考试还是对我有一定的打击,感觉出的题目自己都有点摸不着北,什么这个怎么用的,那个怎么用的,我就顿时不知道怎么回答了,以至于考试结束之后心里一点都没底。 在考试之前就下定决心要再一次把自己的大部分精力放在内核的学习上,感觉自己还是对操作系统的兴趣大于一切,以原创 2012-05-17 01:09:21 · 636 阅读 · 0 评论 -
从README开始吧
其实我觉得对于linux内核,真的不知道从哪里入手是好,因为各个环节关联性太强了,以至于看到这里就不得不翻一下那里是怎么实现的,所以对于入门的确是一件很头疼的事情,我也大概在这里折腾了一个多月,把《linux内核设计与实现》也看了两三遍,还是有点摸不着头脑,不过随着接触多了也就对整体有了一定的认识,在西电的一本《linux操作系统分析》的书上,我发现它首先是从linux内核的启动开始的,这让我觉得原创 2012-05-17 02:36:56 · 616 阅读 · 0 评论 -
内核启动初步
我一直好奇计算机是如何启动的,为什么每当按下电源键的时候就能够显示启动信息,然后等待输入密码进入桌面(我还是使用windows系统),从按下电源键到操作系统完成就绪到底完成了什么具体的操作了呢?于是,就开始从内核启动说起吧。 一般情况下,启动是由于我们按下开机键或者复位键产生的操作,CPU会进入复位状态,它会将内存中的所有内容全部清0,然后检查内存是否有错误,如果没有就会初始化寄原创 2012-05-18 13:17:59 · 593 阅读 · 0 评论 -
内核启动之进入真正内核之前
在内核启动的时候首先执行的是header.S(arch/i386/boot/header.S),它使用AT&T的汇编格式编写,以前内核的启动时最开始执行的是一个成为bootsect的程序,它就是MBR的前512字节,会被BIOS程序装载到0x00007C00处然后执行,这样装入过程完全由内核自己完成,但是随着越来越复杂的bootloader的使用,内核也放弃了从软盘启动的方式。原创 2012-05-19 00:05:50 · 1240 阅读 · 0 评论 -
内核启动之启动内核——startup_32
这段代码在arch/x86/boot/kernel/header_32.S中,它是在内核被解压缩到0x100000处之后跳转到这个地址开始执行的,前面的操作算是为这一步做铺垫吧,现在到了真正的内核,为了能够让自己把内核代码真的弄懂,不再采用前面那种比较比较笼统的方式了,而是按照内核源码分析的那种方式将这个代码复制下来,然后逐行的分析,这样就不至于再给自己偷懒的机会了,嗯,以后就这样做,争取能够把不原创 2012-05-19 04:45:22 · 2907 阅读 · 0 评论