准备工作

  • nasm 汇编编译器
  • Floppywriter (File to image) 转换器
  • VMware 虚拟机

步骤

先创建一个boot.asm的文件,我是用VsCode写的,记事本也可以。(还一直以为nasm是编辑器,结果是编译器,搜了半天教程。。

 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              ; 结束标志

一开始自己照着书中打了一遍,结果格式写错了,后面找到了网上的源码,复制之后,在nasm中输入nasm boot.asm -o boot.bin 成功!

文件路径一定要与编译器路径相同,不然会报错找不到文件
我是先在编译器路径下创建了文件,等生成了boot.bin文件之后再剪切出去的。

之后就可以用转换器做转换了,转换前先创建TINUX.IMG文件,然后将boot.bin文件放进去。

之后打开VMware虚拟机,创建新的虚拟机。

选择经典(推荐)即可。然后再下一个页面中,先选择浏览,将自定义好的TINIX.IMG放进来,然后会提示无法检测,我们随后点击下方稍后的按钮,点击下一步。
点击其它,选择其它。点击下一步。

然后选择自己想放置的位置,下一步,分配内存。
点击完成后,蹦出以下界面。(我这个是退出来之后的,与初始有些许不同)
找到“虚拟机”->“设置”。

点击添加。

选择软盘驱动器,点击完成。

最后点击软盘,找到之前写好的TINIX.IMG文件的位置,点击创建。

结果图

点击“开启此虚拟机”
你就可以看到自己写下的第一个“最简单的操作系统”,在虚拟机下开始运行了。

——纸上得来终觉浅,绝知此事要躬行。

《自己动手写操作系统》之 10分钟完成最小的操作系统相关推荐

  1. 自己动手写操作系统(二)一个最小的“操作系统”

    第一步 首先新建一个boot.asm文件,用vim将书中的代码1-1写入文件中,并保存.然后使用nasm编译. 附上代码: org 07c00hmov ax, cs mov ds, ax mov es ...

  2. 自己动手写java虚拟机_自己动手写操作系统(要了解的知识点)

    自己动手写操作系统(开篇) 自己动手写操作系统(字符显示) 说明:Intel 8086 或者不同的处理器,开机寄存器数据可能不一样,但是大致原理差不多 了解过计算机启动的同学肯定知道,当计算机启动的时 ...

  3. 全面剖析《自己动手写操作系统》第四章---加载Loader.bin

    全面剖析<自己动手写操作系统>第四章--FAT12文件系统    http://blog.csdn.net/zgh1988/article/details/7284834 1.突破512字 ...

  4. 自己动手写操作系统 将引导程序成功写入优盘启动电脑

    原文:http://freesoftman.iteye.com/blog/629598 输入命令: nasm boot.asm -o boot.bin 一会儿就生成了一个镜像文件boot.bin. 该 ...

  5. 操作系统导论中文版 pdf_一分钟带你认识微软操作系统 Windows 10

    微软在不久前正式发布了全新一代操作系统Windows 10,从即日起国内用户可以陆续升级安装新系统.与以往不同的是,此次微软宣布Windows 7和Windows 8用户在一年内可以免费升级到Wind ...

  6. 自己动手写操作系统--个人实践

    近期開始看于渊的<自己动手写操作系统>这本书,刚開始看就发现做系统的引导盘居然是软盘!心里那个汗啊! 如今都是U盘了,谁还用软盘.于是考虑用U盘. 于是開始下面步骤: 1.既然书上说给先要 ...

  7. 「操作系统」《自己动手写操作系统》1.1前期准备工作

    一.软硬件 1.硬件 一台计算机(笔者使用的是Win7 x64操作系统) 2.软件 点击此处下载<自己动手写操作系统>的光盘配套文件以及相应工具 汇编编译器:NASM(资源文件中有) 软盘 ...

  8. python写好的代码怎么给别人使用-10分钟学会用python写游戏!Python其实很简单!...

    原标题:10分钟学会用python写游戏!Python其实很简单! Python现在非常火,语法简单而且功能强大,很多同学都想学Python!所以在这里给各位看官们准备了高价值Python学习视频教程 ...

  9. 《自己动手写操作系统》读书笔记——初识保护模式

    <自己动手写操作系统>读书笔记--初识保护模式 http://www.cnblogs.com/pang123hui/archive/2010/11/27/2309930.html 书本第三 ...

  10. 手机版python3h如何自制游戏_Python 飞机大战|10 分钟学会用 python 写游戏

    Python 飞机大战|10 分钟学会用 python 写游戏 2018 年 python 语言大火, 这把火看趋势已然延续到了 2019 年! 除了在科学计算领域 python 有用武之地之外, 在 ...

最新文章

  1. esxi远程管理端口_如何在 vmware esxi 中开放 VNC功能及端口实现远程管理 完整篇...
  2. 《java练习题》习题集二
  3. Linux IPC实践(3) --具名FIFO
  4. java B2B2C 多租户电子商城系统- 整合企业架构的技术点
  5. restlet使用_使用Restlet Framework构建联网汽车
  6. C# 连接 Sqlserver2005 Analysis Service的总结
  7. 游戏是如何限制多开的,如何解决
  8. vb中如何在任务管理器里面隐藏应用程序进程
  9. iOS 操作系统被曝无线网络命名bug 导致 iPhone无法连接无线网络
  10. 如何生成MD5哈希?
  11. 代码评审 16.7.1
  12. xjoi 1524 枚举集合
  13. 如何用10分钟做出一个表情包视频
  14. Cypress系列(21)- 可操作类型的命令 之 check()、uncheck()
  15. 呆萝卜 竞品分析报告
  16. 路面坑洼检测中的视觉算法
  17. c语言数据结构实训报告总结,数据结构实训心得
  18. 一文帮你理解模型选择方法:AIC、BIC和交叉验证!
  19. 美团运维SRE+运维开发一面面经汇总
  20. Python PDF转Word,以及提取Word中图片里的文字

热门文章

  1. PHP自动化代码审计工具
  2. mysql 全关联查询_Mysql 关联查询(内联、左联、右联、全联)
  3. JSAPI微信公众号apiV3文档支付
  4. 手游php,PHP响应式手游APP软件游戏中心下载网站整站源码(自适应手机移动端) dedecms内核...
  5. 黑苹果无线网卡的另一种解决方案
  6. 哥德巴赫猜想—初等数论课后习题
  7. matlab 调制识别,调制方式识别仿真
  8. Xv6 Page Table
  9. 傻瓜攻略(十九)——MATLAB实现SVM多分类
  10. iertutil.dll文件缺失/ 修复方法