Linux 0.11虽然不是什么“珠穆朗玛峰”,但它肯定还是“华山”或“泰山”。虽然有路但你还是需要最基本的努力和花费一定的代价才能“攀登”上去。
1. PC兼容机硬件工作原理(比如8259A,8253, 8042,UART等硬件);
2. Intel 32位 运行模式工作原理,寻址方式;
3. 传统C语言;
4. 一些Intel asm基础。
5. 会使用Linux操作系统,懂得Linux系统的基本操作。

推荐参考书籍:
============
《UNIX操作系统设计》
http://www.china-pub.com/computers/common/info.asp?id=34 
*《UNIX环境高级编程》
http://www.china-pub.com/computers/common/info.asp?id=30 
《操作系统:设计与实现》(MINIX)
http://www.china-pub.com/computers/common/info.asp?id=2033 
《IBM PC 汇编语言程序设计》
http://www.china-pub.com/computers/common/info.asp?id=7721 
*《深入理解计算机系统》
http://www.china-pub.com/computers/common/info.asp?id=18133 
《Linux权威指南》
http://www.china-pub.com/computers/common/info.asp?id=1174 
《Linux Assembly Language Programming》
ftp://plinux.org/pub/linux/docs/ ... age_Programming.pdf 
*《Intel 80386 Programmer';s Reference Manual》
ftp://plinux.org/pub/linux/docs/Intel_80386_Manual.pdf 
*《The C Programming Language》
ftp://plinux.org/pub/linux/docs/The_C_programming_Language.rar 
加星号“*”者为重点推荐读物!
============================================
如果有些忘了,就请先花哪怕一天时间将这些基础知识先浏览一遍,在看本书。
硬件方面可参考教科书。
Intel 32 mode 可见Intel 386 manual;

内核代码中用到的汇编程序(as86和AT&T语法)可参照以下一些文档。
-------------------------------------------------------------
MINIX 汇编手册: http://www.oldlinux.org/oldlinux/viewthread.php?tid=291 
NASM 汇编手册: http://www.oldlinux.org/oldlinux/viewthread.php?tid=877 
as86   在线手册: http://www.oldlinux.org/oldlinux/viewthread.php?tid=1895 
ld86   在线手册:http://www.oldlinux.org/oldlinux/viewthread.php?tid=1428

/*****************************************/
/* 本站资源:                            */
/* http://oldlinux.org/Linux.old/         */
/*****************************************/
===============================================
如果你具有大学计算机本科或以上学历,那么你可以在适当复习以上知识后就能顺利看懂本书。
如果你是在读本科计算机系的学生,那么在学习过操作系统课程或者正在学习时,只要复习一些有关Intel PC机组成原理,就应该很顺利地理解本书,并能很好地帮助你理解操作系统的基本原理。
如果你是其它专业在读本科学生,那么你可以首先自学一些有关操作系统的理论知识和计算机微机原理课程(如果没有学过的话),了解一些操作系统的基本术语,再继续学习本书。
如果你是一个专科学生,那么你首先需要准备的知识与一个非计算机本科生所要做的一样。
如果你是一个中学毕业的学生,那么你可以先自学一些《计算机原理》、《微机原理》、《C语言》、《英语》等基本课程,然后再继续阅读本书。当然也可以把摊子铺开,同时阅读:)
注意: 无论你现在的学位或学历怎样,这都不是主要问题。关键在于努力和刻苦。而兴趣是学习的最好动力之一。即使你没有任何学位,只要识字能上网,那么你面前的道路还是宽广的。
“世上无难事,只要肯登攀”。

---------------------------------------------------------------------------------------------

源代码浏览工具介绍
http://www.oldlinux.org/oldlinux/viewthread.php?tid=1470

============================
  在本机上阅读源代码,可以使用redhat 的snavigator或Source Dynamics的Source Insight软件。snavigator是免费的,source Insight可以去www.sourceInsight.com 去下载。或者在此处下载:
http://oldlinux.org/download/tools/si350.rar (3.2MB)
http://oldlinux.org/download/tools/Release-SN51E-win32.zip (7.8MB)
http://oldlinux.org/download/tools/src2html/

Source Insight的使用方法可参见文章:
http://www-900.ibm.com/developer ... t/tip17/index.shtml 
  也可以使用本站网页上提供的再线交叉引用阅读程序:
http://oldlinux.org/lxr/http/source/ 
在阅读本书时,最好在计算机中安装这两个软件之一,边阅读书中注释边浏览代码。

Linux0.11学习的更多相关文章

  1. linux0.11学习笔记(1)

    公布软件包包括内容: bootimage.Z - 具有美国键盘代码的压缩启动映像文件: rootimage.Z - 以1200kB 压缩的根文件系统映像文件: linux-0.11.tar.Z- 内核 ...

  2. linux0.11学习笔记(2)

    makefile文件: makefile 文件是make 实用简介.make 程序是用Makefile最后一次改变的数据文件和代码文件(last-modification time)确定哪些文件需要更 ...

  3. linux0.11改进之四 基于内核栈的进程切换

    这是学习哈工大李治军在mooc课操作系统时做的实验记录.原实验报告在实验楼上.现转移到这里.备以后整理之用. 完整的实验代码见:实验楼代码 一.tss方式的进程切换 Linux0.11中默认使用的是硬 ...

  4. x01.os.20: compile linux-0.11 on the ubuntu

    为什么学习 linux 正如不能依靠美国的 GPS 为我们的导弹指示目标一样,很难想像用运行 windows 的电脑去同美国进行信息战.而朝鲜的网络崩溃,再次警示国人,信息战.网络战离我们并不遥远.l ...

  5. Linux0.11小结

    第一部分 基础内容 1.操作系统基础     操作系统是计算机硬件系统与用户程序间重要环节,理解操作系统的原理是编写优秀代码的基础.教课书中阐述的操作系统一般由5部分组成. 一个最简单的操作系统,可以 ...

  6. 对Linux0.11 中 进程0 和 进程1分析

    1. 背景 进程的创建过程无疑是最重要的操作系统处理过程之一,很多书和教材上说的最多的还是一些原理的部分,忽略了很多细节.比如,子进程复制父进程所拥有的资源,或者子进程和父进程共享相同的物理页面,拥有 ...

  7. linux0.11内核源码剖析:第一篇 内存管理、memory.c【转】

    转自:http://www.cnblogs.com/v-July-v/archive/2011/01/06/1983695.html linux0.11内核源码剖析第一篇:memory.c July  ...

  8. 快速搭建Linux-0.11实验环境

    搭这个实验环境主要是为了学习Linux-0.11的代码,那就需要修改代码再次编译来验证自己的想法.主要的实验环境来自实验楼,但是在那上面毕竟不方便,所以就以实验楼上的为基础在自己的虚拟机上搭建一个环境 ...

  9. Linux0.11之初识Makefile/build.c

    前言 Makefile对于从来没有接触过的人来说是相当别扭的(比如我),但它确实又是非常重要的,它描述了一个Image是如何形成的,理解它也许并不能帮我解决实际问题,而且编写Makefile的工作也许 ...

随机推荐

  1. linux命令 - nohup

    nohup command & nohup scrapy crawl eeo > /home/wangliang/eeo.log & nohou 需要后台的命令 打印的日志位置 ...

  2. 单元测试框架之unittest(一)

    一.单元测试的含义 unittest单元测试框架的设计灵感来源于Junit(Java语言的单元测试框架),它与其他语言的单元测试框架风格相类似,支持自动化测试.为测试共享setUp和shutDown. ...

  3. JavaScript教程——实例对象与 new 命令

    典型的面向对象编程语言(比如 C++ 和 Java),都有“类”(class)这个概念.所谓“类”就是对象的模板,对象就是“类”的实例.但是,JavaScript 语言的对象体系,不是基于“类”的,而 ...

  4. css居然有根据容器宽度自动截取长度加省略号功能,强大!!

    作者:☆威廉古堡♂ 项目中最初的做法(js截取): //字符长度截取包括中英文混合 function subStr(str, len) { str = str.toString(); var newL ...

  5. html5shiv主要解决IE6-8 无法识别HTML5的新标签,父节点不能包裹子元素,以及应用CSS样式

    html5shivehtml5shiv主要IE6-8解决:1,HTML5提出的新的元素不被IE6-8识别.2,这些新元素不能作为父节点包裹子元素,3,并且不能应用CSS样式.让CSS 样式应用在未知元 ...

  6. Java学习 1.5——静态Static的作用与用法

    在网上查阅资料,静态大约分为这几部分:修饰成员变量:修饰成员方法:静态代码块:静态导包,下面会用代码一一展示: 修饰成员变量: 一个类中,使用static修饰成员变量后,该变量变为全局变量,当再次ne ...

  7. Pycharm下将py文件打包成exe文件

    1. 在PyCharm下安装PyInstaller 1. 首先,打开自己要发布的工程   2. 点击底部的[Terminal]打开终端,中输入命令pip install pyinstaller后回车, ...

  8. 下载使用IDE练习插件

    安装IDE练习插件 启动Eclipse,选择菜单“Help”-“Install New Software...”,在打开的对话框中: 点击“Add”,对Name填写一个任意的名称,例如“Java Pr ...

  9. kubernetes 的configMap和sercet配置信息

    简介: 启动pod,pod启动时可以将configMap资源关联到当前pod上来,从中读一个数据c传递给pod内的容器的一个变量.任然是变量注入的方式来给容器传配置信息. 把每一个configMap当 ...

  10. FPGA课设-基于Xilinx Basys2开发板的除法器设计

    介绍一下Basys开发板: Basys2 FPGA开发板是一个电路设计实现平台,任何人都可以通过它来搭建一个真正的数字电路.Basys2是围绕着一个Spartan-3E FPGA芯片和一个Atmel ...