配置《Orange's一个操作系统的实现》环境心得
《Orange》这本书开篇第一章就做了一个实例,编写了一段引导扇区的代码,但是引导介质仍然采用了已被淘汰多年的软盘。在经历了两天的痛苦查找后终于找到了最方便的解决办法,在此做一下记录,希望能为有同样爱好的朋友提供一点点小帮助,省去不必要的麻烦。
一、安装virtualbox和常见问题排除
首先需要安装virtualbox,注意是必须用virtualbox,因为需要virtualbox创建的vhd格式虚拟硬盘,经过测试通过Windows磁盘管理创建的vhd虚拟硬盘不能使用,VMware通过改名创建的vhd虚拟硬盘也不能用。有些电脑virtualbox安装以后不能正常打开,网上的解决办法有很多,例如:https://looaon.com/index.php/windows%E6%8A%A5%E9%94%99/874.html提供的解决办法,但是通过以上方法修改注册表后仍然解决不了问题,经过不断查找、不断试错终于找到解决办法。出现的问题是:在启动virtualbox时提示“获取 VirtualBox COM 对象失败”,在c:\users\administrator\virtualbox下有一个virtualbox.xml存在zero format错误,如果你也出现了类似问题,那就按照以下方法试一下:首先关闭提示框,然后进入“c:\users\admimistrator”目录中将所有涉及virtualbox的文件夹全部删除,再次启动,问题解决。不需要担心删除文件后virtualbox异常,经测试,virtualbox启动时会在c:\user\administrator中创建文件,并且删除后新建和运行虚拟机都正常。
二、使用《X86汇编语言:从实模式到保护模式》的附带工具vhd writer
编译和创建虚拟机在此就不再赘述,相信看这篇文章的都知道怎么做,在此只说如何运行的问题。在https://www.liangchan.net/liangchan/9279.html或者http://www.xdowns.com/app/286527.html下载《X86汇编...》的所有工具,也可以在百度搜索“从实模式到保护模式工具下载”,打开解压的文件夹后,其中有一个fixvhdwr的应用程序,打开后为vhd writer,双击打开。通过vhd writer将编译后的bin文件直接写入虚拟硬盘,虚拟机直接从虚拟硬盘启动,免去需要借助外部介质或者映像的麻烦。此工具可以工具使用起来非常简单,按照提示将bin文件写入即可。然后启动virtualbox,直接启动创建的虚拟机即可,Hello,OS World!将呈现在你面前。
配置《Orange's一个操作系统的实现》环境心得的更多相关文章
- 《Orange'S:一个操作系统的实现》笔记(一)
感觉自己对于操作系统始终没有一个清楚的概念,尤其最近困扰于实模式.保护模式以及寻址方式等一些概念.转而一想,所有的程序,最终都是操作的计算机资源,需要和操作系统打交道,所以操作系统有必要深入了解一下. ...
- 《Orange’s 一个操作系统的实现》1.搭建操作系统开发环境
书中给出了两种环境:windows和linux,平台选择根据自己喜好.本人这里选择ubuntu10.04+virtualbox作为开发平台. 1.下载.安装VirtualBox http:// ...
- x86汇编分页模式实验 --《ORANGE'S一个操作系统的实现》中 pmtest8.asm解析
序言(废话) : 在看书的过程中发现一开始不是很能理解pmtest8的目的,以及书上说得很抽象..于是在自己阅读过源代码后,将一些自己的心得写在这里. 正文 : 讲解顺序依然按照书上贴代码的顺序来.但 ...
- 《一个操作系统的实现》 ubuntu系统环境配置
<一个操作系统的实现> ubuntu系统环境配置 电脑之前已经安装了gcc. 一.nasm安装:sudo apt-get install nasm或官网下载http://sourcefor ...
- 转:面对一个全新的环境,作为一个Oracle DBA,首先应该了解什么
转载:面对一个全新的环境,作为一个Oracle DBA,首先应该了解什么 由于时间比较久了,找不到原文章的链接,先贴上内容供大家参考 在这里,不谈那些大的方面,比如了解整个IT环境整体情况,假设你已经 ...
- 【maven】之配置开发,测试,正式环境pom.xml文件
在进行web程序开发,如果项目组没有使用自动化发布工具(jenkins + maven + svn + tomcat ),我们一般会使用maven的热部署来完成发布,在部署的过程中我们开发,测试,生产 ...
- 【转】手把手教你把Vim改装成一个IDE编程环境(图文)
手把手教你把Vim改装成一个IDE编程环境(图文) By: 吴垠 Date: 2007-09-07 Version: 0.5 Email: lazy.fox.wu#gmail.com Homepage ...
- Web —— java web 项目 Tomcat 的配置 与 第一个web 项目创建
目录: 0.前言 1.Tomcat的配置 2.第一个Web 项目 0.前言 刚刚开始接触web开发,了解的也不多,在这里记录一下我的第一个web项目启动的过程.网上教程很多,使用的java IDE 好 ...
- 第三篇——第二部分——第四文 配置SQL Server镜像——非域环境
原文:第三篇--第二部分--第四文 配置SQL Server镜像--非域环境 本文为非域环境搭建镜像演示,对于域环境搭建,可参照上文:http://blog.csdn.net/dba_huangzj/ ...
随机推荐
- Gitignore 配置语法
Gitignore 配置语法 原文地址:http://kuanghy.github.io/2016/05/17/gitignore Git 的 .gitignore 配置文件用于配置不需要加入到版本管 ...
- 理解Tomcat工作原理
WEB服务器 只要Web上的Server都叫Web Server,但是大家分工不同,解决的问题也不同,所以根据Web Server提供的功能,每个Web Server的名字也会不一样. 按功能分类,W ...
- 【代码周边】MongoDB与Mysql对比以及插入稳定性分析(指定主键的影响)
在数据库存放的数据中,有一种特殊的键值叫做主键,它用于惟一地标识表中的某一条记录.也就是说,一个表不能有多个主键,并且主键不能为空值. 无论是MongoDB还是MySQL,都存在着主键的定义. 对于M ...
- Arduino IDE 开发ESP-01/ESP8266-01读取DHT11温度湿度传感器
引脚接线: DHT11---ESP8266-01 Singnal--IO2, GND----GND, VCC----VCC DHT11引脚说明: ESP8266-01/ESP8266-01S引脚说明: ...
- 表单综合HTML
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- 毕大从自身设计HSF的角度出发谈服务化这回事
服务化的过去.现在和未来 原创: bluedavy HelloJava 9月18日 服务化毫无疑问是技术圈一直火热的buzzword,而且其实已经非常多年了,这在日益更新的技术圈还挺神奇的,作为在服 ...
- 浅谈Java并发编程系列(八)—— LockSupport原理剖析
LockSupport 用法简介 LockSupport 和 CAS 是Java并发包中很多并发工具控制机制的基础,它们底层其实都是依赖Unsafe实现. LockSupport是用来创建锁和其他同步 ...
- 30天自制操作系统-day1
30天自制操作系统(linux环境)--第一天 我是在CentOS的环境上面实现的,使用ubuntu的环境也是类似的 第一步:因为要对二进制文件进行编辑,所以安装二进制编辑器hexedit(当然其他的 ...
- Beta冲刺——第五天
这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzzcxy/2018SE1 这个作业要求在哪里 https://edu.cnblogs.com/campus/fz ...
- 深入理解Kafka必知必会(1)
Kafka的用途有哪些?使用场景如何? 消息系统: Kafka 和传统的消息系统(也称作消息中间件)都具备系统解耦.冗余存储.流量削峰.缓冲.异步通信.扩展性.可恢复性等功能.与此同时,Kafka 还 ...