一个操作系统的实现--freedos中edit问题

来源:互联网 发布:ubuntu软件更新器 编辑:程序博客网 时间:2024/06/06 04:01

freedos中edit问题

  在于渊的一个操作系统的实现第二版中,第四章开始那里写到:假设是x.img,然后把它作为FreeDos的B盘,格式化后就可以方便的往其中添加文件了和目录了(比如使用FreeDos里面的edit.exe),可是在FreeDos里面我找不到edit.exe啊。

  不过,格式化B盘也就是x.img那里我也卡了好一会,然后发现就把之前的第三单元的pmtest2.asm和其配套的文件按照之前的做法启动bochs,然后参照我之前的保护模式的操作就可以格式化B盘也就是x.img了。

  然后我在网上找到采用linux上mount虚拟软盘x.img,然后写入该虚拟软盘的方法。但写入文件后,使用xxd命令检查虚拟软盘x.img,发现和OrangS上描述的信息不一样,然后我想应该是通过这个方法进行文件的写入应该可能是随机的吧,然后我就继续寻找方法了。

  可是啊,freedos的edit.exe我还是不会操作。

  最后的最后,终于找到了方法,可以说是在百度/同学的帮助的帮助下再加上自己操作完成的,毕竟自己是小白。

  首先,我之前在第三章的时候写到过,需要下载一个freedos的压缩包,并使用linux指令解压,在解压后的文件夹里面,有a.img,b.img,c.img和bochsrc配置文件。打开bochsrc配置文件,模仿其内容,将我们自己之前的bochsrc配置文件进行修改,使得bochs把c.img作为启动盘,此时是以硬盘c.img启动。

  //原来edit操作被封装在了c.img虚拟硬盘中。而a.img也就是freedos.img并没有edit操作。

  然后,在使用terminal的时候,启动bochs。如果是以调试模式进行启动的话,启动后直接按c,回车,bochs把c.img作为启动硬盘启动。然后输入edit,回车,成功进入edit界面!!!

  然而,这并不是结束,我探索了好一会,才了解到怎么向B盘也就是x.img写入文件和目录等操作。

  你需要知道,edit界面使不能使用鼠标的,然后我们需要使用Alt键和左右键进行工具栏切换,在File工具栏,有Dos选择,按进去,在那个Dos界面进行文件操作,创建文件和目录,最后才会保存到x.img中,输入exit回车可以退回蓝色界面,创建文件和目录等操作成功后可以回到蓝色界面继续操作,可以向文件里面增删查改内容。

  最后,你还需要了解这些知识。

  在蓝色界面进入的dos界面和windows的指令格式一致,不过好像只能进行它提供的指令功能,我们这里需要了解的知识如下。

  dir指令:查看当前目录有的文件与目录

  cd指令:cd..  回退到上一级目录;cd 回退到根目录;cd 文件夹名 进入某文件夹

  md指令(md 目录名):创建特定文件夹

  rd指令(rd 目录名):删除特定文件夹

  echo指令(echo TXT文件内容>>文件名.txt):创建特定文件

  del指令(del 文本文件名包括后缀):删除特定文件

  cls指令:清屏

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

  假设是x.img,然后把它作为FreeDos的B盘,格式化后就可以方便的往其中添加文件了和目录了(比如使用FreeDos里面的edit.exe),可是FreeDos里有edit.exe吗?呵呵,找了好久没有找到。google了半天,也没找到有用的信息。

  没办法,采用linux上mount虚拟软盘x.img,然后写入该虚拟软盘的方法。但写入文件后,使用xdd命令检查虚拟软盘x.img,发现和OrangS上描述的信息不一样啊,估计是Linux上的文件写格式和FreeDos上的不一致。这下可是没法继续了。于是,又回头看FreeDos。

  后来看了看从Bochs网站上面下载的freedos-img.tar.gz,其中有Bochs配置文件,该文件使用c.img作为Bochs启动盘,c.img明显比OrangS所提的a.img大好多,猜测可能c.img上可能有edit.exe,于是尝试了一下,果然有。

  最后综合说一下FreeDos+edit.exe问题的解决过程:

   1、使用bximage命令生成x.img文件

   2、参照freedos-img.tar.gz里的Bochs配置文件,修改试验用的Bochs配置文件,使Bochs从c.img启动

   3、格式化x.img对应的虚拟软盘

   4、使用edit.exe编辑文件

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


完美搞定!


1 0
原创粉丝点击