10分钟搞出一个简单操作系统

1 准备工作

  • 安装虚拟机(VMware-workstation),下载好虚拟机安装包之后,点击下一步安装就行。
  • 在虚拟机(VMware-workstation)中安装一个系统,笔者安装的是windows10(当然win7,win8,Linux都可以)。
  • 汇编编译器NASM,下载并安装。

2 用汇编写一个显示“Hello,OS world”的boot.asm文件

    org 07c00h          ; 告诉编译器程序加载到7c00处mov ax, csmov ds, axmov es, axcall    DispStr         ; 调用显示字符串例程jmp $          ; 无限循环
DispStr:mov ax, BootMessagemov bp, ax          ; ES:BP = 串地址mov cx, 16          ; CX = 串长度mov ax, 01301h      ; AH = 13,  AL = 01hmov bx, 000ch       ; 页号为0(BH = 0) 黑底红字(BL = 0Ch,高亮)mov dl, 0int 10h         ; 10h 号中断ret
BootMessage:        db  "Hello, OS world!"
times   510-($-$$)   db  0   ; 填充剩下的空间,使生成的二进制代码恰好为512字节
dw  0xaa55              ; 结束标志

3 用NASM编译boot.asm文件生成boot.bin二进制文件

  • 按照提示默认安装完成NASM之后,桌面会出现右图的图标
  • 双击图标,出现下图
  • 进入boot.asm所在的目录,我的boot.asm在D盘根目录,即D:\boot.asm
  • 进入之后,如图
  • 输入以下命令,
  • nasm boot.asm -o boot.bin
    如图
  • 生成boot.bin文件

4 生成A.img文件

生成A.img需要用到软件FloppyWriter.exe,(同样上传该工具)

  • 首先新建一个文件,将其名称及后缀改成“a.img”,目前a.img是空白的。
  • 打开FloppyWriter.exe,出现

  • 点击第二项“Write FIle to Image”如图,并选择第三步生成的boot.bin 文件

  • 点击打开,选中刚才新建的a.img
  • 成功

好,现在回顾一下我们都做了什么。

  1. 汇编写boot.asm文件
  2. 用nasm编译成boot.bin
  3. 新建空白a.img,然后用FloppyWriter 将boot.bin写入a.img.

ok,继续下一步

5 打开虚拟机, 点击“编辑虚拟机设置”

出现

点击“软盘驱动器”,下一步
点击使用软盘映像

点击 下一步,然后将a.img加载进去

然后 完成 –确定。

6 激动人心的时刻到了

好,你已经成功将“Hello,OS world”显示出来了

30天自制操作系统 (一个操作系统的实现)相关推荐

  1. 30天自制操作系统——第一天制作一个Hello word操作系统

    入手一本<30天自制操作系统>,内容诙谐有趣,很适合对操作系统一窍不通的新手. 据作者所言,这本书的最终目标是从零开始编写一个五脏俱全的图形操作系统,不用什么基础,而且只需30天!! 没有 ...

  2. 为什么《30天自制操作系统》封面中的猫是两只尾巴

    刚刚在一社区,发了一贴,被指出一问题,询一高人,得一答案.这便是我没有关注到的封面上的那只猫,我想这也是很多读者没有关注到的.因为在我微博的200转发贴中,并没有人提到封面中的猫为何有两只尾巴.于是咨 ...

  3. 发布在《30天自制操作系统》之前的帮助阅读贴

    说明:这是8月15日即将上市的一本新书,本文的摘选也可以命名为<30天自制操作系统>上市之前必读.本书幽默,有趣,可以说是技术书里的幽默书,让您读起来绝对不会感到乏味.在本书上市之前,您一 ...

  4. 《30天自制操作系统》笔记(01)——hello bitzhuwei’s OS!

    <30天自制操作系统>笔记(01)--hello bitzhuwei's OS! 最初的OS代码 1 ; hello-os 2 ; TAB=4 3 4 ORG 0x7c00 ; 指明程序的 ...

  5. 写在《30天自制操作系统》上市之前

       这本<30天自制操作系统>马上就要在各大书店和网上商城全面上架了,作为本书的4位译者之一,我负责翻译了本书约三分之二的内容.这是我参与翻译的第一本译著,我感到很激动也很紧张,因为我知 ...

  6. 由《30天自制操作系统》引发的漫画创作

    大家可还记得<30天自制操作系统>的封面上的那只猫吗?记得当时,在果壳网有人问,为何这只猫长了两只尾巴呢,延着这条线,我把这本书捧上了展示的舞台.事隔四个多月,我又重提此书. 这本经我手宣 ...

  7. 30天自制操作系统-初体验

    最近在图书馆翻阅关于操作系统的书籍,看到川和秀实的自制操作系统决定也动手尝试一下,这本书书名就叫做30天自制操作系统.首先还是附上光盘镜像的获取地址吧.30天自制操作系统光盘镜像ISO完整版下载 - ...

  8. 索骥馆-DIY操作系统之《30天自制操作系统》扫描版[PDF]

    内容简介: <30天自制操作系统>是一本兼具趣味性.实用性与学习性的操作系统图书.作者从计算机的构造.汇编语言.C语言开始解说,让读者在实践中掌握算法.在这本书的指导下,从零编写所有代码, ...

  9. 30天自制操作系统 导读

    说明:这是8月15日即将上市的一本新书,本文的摘选也可以命名为<30天自制操作系统>上市之前必读.本书幽默,有趣,可以说是技术书里的幽默书,让您读起来绝对不会感到乏味.在本书上市之前,您一 ...

  10. 30天自制操作系统第三天

    操作系统实验日志3 学号 201708010402 姓名 徐冰娜 专业年级班级 实验日期 2019.9.28 实验项目 第3天:进入32位模式并导入C语言 智能1701 30天自制操作系统第三天 操作 ...

最新文章

  1. 用TensorFlow实现自编码器Autoencoders
  2. DrugBank:小分子数据信息挖掘
  3. Ubuntu下搭建sun-jdk和Maven2
  4. ML之FE:pandas库中数据分析利器之groupby分组函数、agg聚合函数、同时使用groupby与agg函数组合案例之详细攻略
  5. 软件体系架构——质量属性
  6. python︱HTML网页解析BeautifulSoup学习笔记
  7. poj2060Taxi Cab Scheme(二分图匹配)
  8. android自定义radiogroup,Android自定义RadioGroup
  9. 提取rosbag中的图像话题存为本地图像
  10. exists/not exists(2020-3-27)
  11. 虚拟机镜像文件高速下载方法之一
  12. PLC数据采集解决方案及数采网关
  13. 数值分析的学科体系_清华大学 数值分析 视频教程
  14. 自定义android tv播放器,具有可自定义实时广播源的Android TV手机播放器
  15. mipi两线接口_什么是MIPI接口
  16. Flutter 全局弹窗
  17. 仿照京东导航条html+css
  18. 随机验证码的生成(手机或者邮箱验证码)
  19. 第7章 集成方法、随机森林
  20. 蓝桥杯项目一:可调闹钟1(详解版)

热门文章

  1. Python 安装PyQt5失败:Permission denied:d3dcompiler_47.dll
  2. easyexcel的使用-个人笔记
  3. 4800余网站涉“黄”被封 新浪搜狐腾讯关栏目
  4. 12563 劲歌金曲
  5. 关于 GK盘,扩盘在storage和os两侧的联系
  6. 万字长文:五年数据洞察中国餐饮大趋势
  7. ubuntu上安装视频插件
  8. 深度学习训练之optimizer优化器(BGD、SGD、MBGD、SGDM、NAG、AdaGrad、AdaDelta、Adam)的最全系统详解
  9. 微信iOS卡顿监控系统
  10. 百度搜索技术沙龙感悟