现在的位置: 首页 > 综合 > 正文

《自己动手写操作系统》读书笔记(1)

2014年09月05日 ⁄ 综合 ⁄ 共 1525字 ⁄ 字号 评论关闭

导读:
  前几天和老板联系,说让我先学一些内核方面的知识,《Computer Architecture 3rd Editon》也先不要读了,换读《Organization & Design Hardware/Sofware Interface》。谨从师命。
  以前读过内核,书用的是毛德操、胡希明的《Linux内核源代码情景分析》,可是读得云里雾里,身心受到了极大的摧残,这次不想重蹈覆辙了,要循序渐进,于是从于渊的《自己动手写操作系统》入手,先自己动手实践一遍再去读代码,应该会更容易理解更有心得。
  《自》这本书写的不错,步骤详细理论清晰,不过读完第二章还是遇到了一些问题:
  P26 安装虚拟PCDOS
  安装完毕后需要设置虚拟机DOS与宿主机Windows的文件共享,作者在P27写到:“Virtual PC 提供了非常方便的插件,使得……”
  可是我在安装这个插件的过程中遇到了一些问题。
  我安装的是 Virtual PC 2007,然后在上面虚拟了MS DOS 7.1。  然后开始安装Addition:启动DOS,然后点击菜单 Action -> Install or Update Virtual PC Additoions。如下图:
  
  然后弹出对话框:
  
  
  点击Continue之后没有反应。什么原因呢?
  原来点击“Install or Update Virtual PC Additoions”之后,Virtual PC 把 程序文件夹下 /Virtual Machine Additions/VMAdditions.iso 文件抓进了它的虚拟光驱。这个镜像文件里有什么内容呢?
  用Daemon Tool 查看其内容:
  三个文件夹:DOS,OS/2,Windows。里面都是一些.exe文件
  文件Autorun.inf,内容为:
  [autorun]
  OPEN=Windows/setup.exe  由此可知,如果想安装这个光盘镜像里的内容,需要先在Virtual PC里虚拟一个Windows,然后再通过虚拟的Windows加载这个光盘,来安装需要的插件。
  哎……我不能再往上面虚拟个Windows了,我的机器硬件配置不允许(我的硬盘已经被我划的体无完肤了,而且空间紧张)。怎么办?解决办法:
  让我们淘汰Virtual PC 2007,回归Virtual PC 2004吧。为什么?
  因为在Virtual PC 2004 的 安装文件夹下Virtual Machine Additions里有一个“DOS Virtual Machine Additions.vfd”文件,这是软盘镜像文件。嗯……这下就可以搞定了,把它抓到Virtual PC 虚拟软驱里,然后进入A盘,执行其中的一个批处理文件,就可以安装插件,使得虚拟DOS与宿主Windows共享文件夹了。
  步骤:
  一、安装好 Virtual PC 2004,然后在上面虚拟好MS DOS 7.1
  二、启动 MS DOS,然后把上述的那个“DOS Virtual Machine Additions.vfd”文件抓进虚拟软驱。
  三、在MS DOS下,输入命令:
  C:>A:
  A:>dosadd  现在需要的插件就安装好了。
  但是如果你在安装DOS 7.1时使用了内存扩展UMB(EMM386),那么按照书上P41上的提示运行 pmtest1.com 时会提示出错。具体原因我还不是太清楚,有待探究 ;-)
  解决方法:注释掉DOS中的C:/config.sys中emm386,即 REM DEVICE=c:/DOS71/EMM386.exe NOEMS 这一行。然后重启虚拟机即可。

本文转自
http://wenbodai.blog.51cto.com/267289/53228

抱歉!评论已关闭.