30天自制操作系统 day2 32位处理器的几个寄存器 换种方式制作磁盘镜像 makefile

30天操作系统光盘内容 30天制作操作系统光盘内容,内容完整、代码清晰、适合初学者 立即下载

32位处理器的几个寄存器

在这里插入图片描述
在这里插入图片描述

制作磁盘镜像工具

用的是它自己写的工具,叫edimg。使用方式如下

edimg imgin:../z_tools/fdimg0at.tek   wbinimg src:ipl.bin len:512 from:0 to:0   imgout:helloos.img

读取fdimg0at.tek,在读取ipl.bin,从ipl.bin的开头读512个字节到fdimg0at.tek中,并另存为helloos.img。

ipl.bin就是编译出来的二进制代码。可以用作者提供的启动程序,也可以用day1自己写的。作者提供的程序多了一些内容。是一些参数。

错误

错误1:自己写的程序在edimg不通过

问题描述

不知道为什么,我用自己在day1写的程序编译,编译没有问题,但是edimg报错:
在这里插入图片描述

解决

我想edimg对这个有严格规定。就是必须在某个规定的位置有一些信息。把那些信息加上,edimg就让过了。

ORG 0x7c00 ;伪指令,告诉编译器第一条指令的地址是0x7c00,cpu并不执行
    JMP		entry
	DB		0x90
	DB		"HELLOIPL"		; �u�[�g�Z�N�^�̖��O�����R�ɏ����Ă悢�i8�o�C�g�j
	DW		512				; 1�Z�N�^�̑傫���i512�ɂ��Ȃ���΂����Ȃ��j
	DB		1				; �N���X�^�̑傫���i1�Z�N�^�ɂ��Ȃ���΂����Ȃ��j
	DW		1				; FAT���ǂ�����n�܂邩�i���ʂ�1�Z�N�^�ڂ���ɂ���j
	DB		2				; FAT�̌��i2�ɂ��Ȃ���΂����Ȃ��j
	DW		224				; ���[�g�f�B���N�g���̈�̑傫���i���ʂ�224�G���g���ɂ���j
	DW		2880			; ���̃h���C�u�̑傫���i2880�Z�N�^�ɂ��Ȃ���΂����Ȃ��j
	DB		0xf0			; ���f�B�A�̃^�C�v�i0xf0�ɂ��Ȃ���΂����Ȃ��j
	DW		9				; FAT�̈�̒����i9�Z�N�^�ɂ��Ȃ���΂����Ȃ��j
	DW		18				; 1�g���b�N�ɂ����‚̃Z�N�^�����邩�i18�ɂ��Ȃ���΂����Ȃ��j
	DW		2				; �w�b�h�̐��i2�ɂ��Ȃ���΂����Ȃ��j
	DD		0				; �p�[�e�B�V�������g���ĂȂ��̂ł����͕K��0
	DD		2880			; ���̃h���C�u�傫����������x����
	DB		0,0,0x29		; �悭�킩��Ȃ����ǂ��̒l�ɂ��Ă����Ƃ����炵��
	DD		0xffffffff		; ���Ԃ�{�����[���V���A���ԍ�
	DB		"HELLO-OS   "	; �f�B�X�N�̖��O�i11�o�C�g�j
	DB		"FAT12   "		; �t�H�[�}�b�g�̖��O�i8�o�C�g�j
	RESB	18				; �Ƃ肠����18�o�C�g�����Ă���
entry:
	MOV SI,data
putloop:
    ;为显卡中断做参数准备
    MOV AL,[SI] ;AL 要打印的字符
    CMP AL,0
	JE end
    MOV AH,0x0e ;操作码,0x0e是打印字符
    MOV BL,15   ;颜色码
    MOV BH,0    ;规定填0
    INT 0x10    ;显卡中断,填充好AL,AH,BL,BH,进行显卡中断将显示一个字符
    ADD SI,1
    JMP putloop
end:
    HLT
    JMP end
data:
    DB 0x0a ;换行
    DB "hello_world!"
    DB 0x0a ;换行
    DB 0 ;结束符
fill:
    RESB 0x7dfe-$
    DB 0x55,0xaa

错误2:用作者的程序,运行出问题

问题描述

如果用作者的那个程序,运行前一切顺利,但是运行结果是这样的。
在这里插入图片描述

解决

是因为把镜像复制到qemu目录时,目标文件名错了。
在这里插入图片描述
正确的应该是:fdimage0.bin
原本qemu中就有这个文件,如果没有发生替换,就是错的。

30天自制操作系统光盘文件.zip 立即下载

相关推荐

30天自制操作系统光盘文件(1).zip

30天自制操作系统光盘文件(1).zip

30天自制操作系统(day1)

30天自制操作系统第一天内容

m0_61722509的博客 2300

Python爬虫实战:绕过B站-352风控的完整解决方案

网络爬虫技术是数据采集和自动化测试的重要工具,其核心原理是通过模拟HTTP请求获取网页数据。在实践过程中,开发者常会遇到网站反爬机制,这涉及请求指纹识别、IP行为分析等安全技术。这些风控措施的价值在于保护网站数据安全和服务器资源,广泛应用于电商、社交、内容平台等场景。针对B站等平台的-352风控错误,需要综合运用请求头伪装、会话管理、参数签名破解等技术方案。本文重点探讨如何通过构建完整的浏览器级请求头、管理Cookie会话、以及使用Playwright等浏览器自动化工具,有效解决Python爬虫在B站数据采

weixin_33912638的博客 391

30天自制操作系统学习-第1天

                                                                  第一天  1 批处理文件:直接由DOS命令行解释执行的文件,通常后缀名为.bat或.cmd。  2 镜像文件:.img后缀的文件,可用于制作操作系统文件,一个3.5英寸的软盘容量为1440k。  3 nask:作者自己制作的汇编代码编译器,代码与nasm代码相差...

qq511714326的博客 1万+

STM32F4_LCD显示汉字

LCD显示汉字和显示图片、数字、字符的原理是一样的,都是将汉字、图片、数字以及字符转换点阵,进而通过函数扫描点阵在LCD上显示;

light_2025的博客 1万+

直流耦合系统介绍

参考《SMA如何使用直流耦合技术实现更高效的光伏电站-白皮书》

圆桌骑士的博客 731

30天自制操作系统——第一天到第二天

第一天 光盘地址用的这个:30天自制操作系统光盘 - 夕雨714 - 博客园 (cnblogs.com) Bz162下载地址:Bz - c.mos (vcraft.jp) 启动方式:D:\文档\学习科目\计算机基础\操作系统\操作系统实验\30dayMakeOS\1_day\tolset\helloos0 目录下打开!cons_nt.bat cmd中输入run 2C 逗号,20 空格,0A 换行 OS made by BUPT LanYi 4F 53 20 6D 61 64 65 20 62 79 2

lanyi_ly的博客 2464

YOLOv8 改进:使用 MobileNetV3 轻量化架构改进特征提取网络

通过使用 MobileNetV3 作为 YOLOv8 的特征提取器,能够显著降低模型复杂度和运行时资源消耗,同时在一定程度上保持检测精度。这种方法特别适合需要高效计算的边缘设备和嵌入式系统。

走向CTO的路上... 1275

【操作系统】30天自制操作系统--(1)虚拟机加载最小操作系统

最近学习了川合秀石的《30天自制操作系统》,准备跟着书里面的介绍自己做一做,这边开个新帖用作记录。 自制操作系统首先要搭建环境,书中是用软盘作为系统的启动盘,现在哪里找软盘去,只能先用VMware虚拟机,虚出一个带软盘处理的环境进行测试。 一 准备工作 【1】《30天自制操作系统》的光盘资料:30天自制操作系统的光盘资源-其它文档类资源-优快云下载 【2】VMware(版本不限,我这边用的是15的版本) 二 用VMware虚拟机搭建环境 【1】下载安装VMw...

sinat_33408502的博客 3477

实战封神!YOLOv7 轻量化部署全攻略:ONNX格式转换+TensorRT极致加速(速度直接提升3-5倍,精度无损)

部署核心链路,这是YOLO系列部署的最优解,速度提升3~5倍,精度无损;ONNX是桥梁:解决模型兼容性问题,简化后能去掉冗余节点,是TensorRT加速的前提;TensorRT是核心:NVIDIA显卡的极致加速引擎,FP16量化是速度与精度的最优平衡,无需手动配置,一键开启;轻量化终极组合YOLOv7-tiny + 416尺寸 + TensorRT FP16,速度提升5~8倍,满足所有实时检测场景;避坑核心:转换参数必加,推理尺寸必须一致,engine文件显卡专属。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 308

YOLO26优化:特征融合 | 一种新颖的多尺度特征融合iAFF,适配小目标检测

在YOLO26中如何使用:iAFF加入Neck替代Concat;

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 268

《30天自制操作系统》第一天helloos0

《30天自制操作系统》 博主开始学习这本书,希望大家能多多指教!如果大家也想学的请跟着学习!!! 第1天 从计算机结构到汇编程序入门 准备工作 二进制编辑器(Binary Editor、HxD ) 虚拟机(VMware-workstation、书中自带的qemu) 光盘内容:文章中使用的程序 动手操作 源代码 注意红点标注的位置 中间都是00 结尾是下图 注意行号。并保存为"hello...

Loong_Matrix_World的博客 1394

【1.2】Costas环的基本原理概述

Costas环是一种用于载波恢复的相干解调技术,可直接从BPSK等抑制载波信号中恢复本地载波并完成解调。其核心结构包含同相/正交双支路处理,通过混频、低通滤波后,利用I/Q支路信号乘积进行相位误差检测,经环路滤波器调节VCO输出频率,实现载波同步。课程将重点讲解Costas环的MATLAB仿真实现、系统性能分析及FPGA开发,包括信号产生、频偏模拟、滤波器设计等模块,并通过AWGN信道和不同频偏条件下的测试验证系统性能。该技术无需单独提取载波,在数字通信系统中具有重要应用价值。

fpga/matlab/simulink算法仿真工程 450

《30天自制操作系统》笔记1 --- 准备阶段

光盘中文翻译版:https://github.com/yourtion/30dayMakeOS.git 原版光盘(含iso文件):https://github.com/sky5454/30daysMakeOS-Origin-ISOfiles.git 原版光盘git版本:https://github.com/Tassandar/OSASK.git   使用dd(Windows)刻盘及...

weixin_30675247的博客 667

YOLOv8 置信度阈值 (conf) 和 IoU 阈值 (iou) 详解:如何平衡漏检与误检?

摘要 本文深入探讨了YOLOv8目标检测模型中两个关键参数——置信度阈值(conf)和IoU阈值(iou)的核心作用。文章从目标检测的基础概念出发,解释了置信度分数反映模型预测可靠性,IoU衡量预测框重叠程度。重点剖析了非极大值抑制(NMS)机制如何通过这两个阈值进行预测框筛选:置信度阈值作为初筛门槛,IoU阈值决定重叠框的取舍。通过生动比喻和可视化图表,阐述了合理调节这两个参数能有效平衡误检与漏检问题,是优化YOLOv8模型实际表现的重要技巧。全文以实践为导向,帮助开发者掌握成为"调参大师&qu

深耕 Vue 生态与 JS/TS 技术,聚焦组件封装、响应式原理、TS 类型设计,解析工程化配置与性能优化方案。同时分享 YOLOv8 目标检测实战、AI 大模型面试核心考点,以代码实例拆解技术实现与业务解法。 1237

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Makefile文件

在实际仿真过程中,文件量比较多,每次仿真敲很多的命令会令人崩溃,可以将这些命令语句写入脚本中,在需要的时候直接调用执行就行。本文介绍makefile脚本的基本实现。 1、使用gvim来创建Makefile文件: gvim Makefile 2、编辑该文件,将命令写入文件中 可以看到一共五条命令些人到Makefile文件中去了。 3、Ma...

W1Z1Q的专栏 1110

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

30天自制操作系统第2天helloos4

30 天自制操作系统 第 2 天 汇编语言学习与Makefile入门 helloos4 准备工作 windows环境 VMware workstation vc code 程序和源代码链接:https://pan.baidu.com/s/1bFGAYgnA0m9KB7tzFrMD5g 提取码:d210 开始实验 新建文件夹 在 tolset 文件夹内新建子文件夹helloos4。 !cons...

Loong_Matrix_World的博客 505

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

30天自制操作系统——第1天 从计算机结构到汇编程序入门

落灰一学期的《30天自制操作系统》,希望能够利用大二最后这几个月完成操作系统的制作,以下是我阅读本书所记录的笔记以及学习过程,愿顺利完成。 1.先动手操作 安装“二进制编辑器”,网址:http://www.vcraft.jp/soft/bz.html 启动画面 ...

weixin_59179454的博客 3841

《30天自制操作系统》学习笔记(七)

如果要让一个中断处理程序发挥作用,首先要将其注册到idt中,书中使用了函数set_gatedesc(idt+0x21,(int)asm_inthandler21,2*8,AR_INTGATE32)2。版权声明:本文为优快云博主「qq_35041101」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。即将_asm_inthandler21注册为idt的第21号,如果发生中断了,cpu就会自动调用asm_inthandler21。根据书中的描述,整个项目的编译过程如图。

katerdaisy的博客 809

30天自制操作系统——第0天

这篇文章记录了从零开始自制操作系统的第一天准备工作。主要内容包括: 开发环境搭建 推荐Windows系统,提供定制工具链(nask/edimg/make等) 详细说明工具存放路径要求(无空格和中文) 介绍环境变量配置方法 核心工具解析 nask.exe:定制汇编器,处理.nas文件 edimg.exe:磁盘映像工具,创建管理.img文件 make.exe:构建自动化工具 QEMU模拟器:用于测试操作系统映像 项目结构规划 给出清晰的目录结构示例 包含工具链目录和每日项目目录 实际操作演示 展示VMware虚

杨夏同学的博客 551

一款镜像工具——edimg

Chapter 0: 转载于:https://my.oschina.net/hanjianqiao/blog/374497

585

30天自制操作系统-第2天

ORG 0x7c00:指定将本代码装载到内存的0x7c00开始的位置;内存中0号位置开始的部分和0xf0000号位置的附近存放着BIOS的程序;内存中0x00007c00~0x00007dff号位置专门用来存放启动区代码 JMP entry:跳转到entry所在的内存地址 MOV AX, 0:赋值AX = 0 寄存器: 寄存可以混用,但使用指定功能的寄存器可以使生成的二进制...

技术宅自娱自乐 542

30天自制操作系统 - 取代软盘,用U盘写入引导扇区

背景 作者是在2006年发布此书的(翻译版是在2012年在中国发售),当时可能还能找到带有软驱的计算机。但是时过境迁,现在已经不存在这种老古董东西了。 简单总结一下学习到第三天的一些更变。 更变 书籍里用的是nask这款作者自制的汇编语言编译器,ReactOS的实模式部分是用nasm写的,还是用nasm改造一下好。 已经有文章阐述如何把简单的代码改为nasm格式,《nask与nasm代码...

清风徜徉,悠闲品茶 5517

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

最近在图书馆翻阅关于操作系统的书籍,看到川和秀实的自制操作系统决定也动手尝试一下,这本书书名就叫做30天自制操作系统。首先还是附上光盘镜像的获取地址吧。http://www.drv5.cn/sfinfo/15502.html 有了这个地址就可以得到一些现成的文件以及一些作者推荐的编译软件,非常建议去阅读一下原书,作者的文风轻松有趣,能让人有读下去的欲望。 接下来我们下载一个软件https://www.veryhuo.com/down/html/62222.html 这是一个二进制编译器,我们用它来生成.

ltt摸鱼带师的博客 1045

30天自制操作系统光盘

上传,方便不好使用光驱的同学。 链接:https://pan.baidu.com/s/1UILb2e8PvlK8JbzT4ASOtw 密码:edop 转载于:https://www.cnblogs.com/xiyu714/p/9215474.html

weixin_30724853的博客 2764
上一篇: 30天自制操作系统 day 1 写一个可以在没有操作系统的计算机上输出字符串的程序,并在计算机上运行
下一篇: 读磁盘概述
?-ldl
博客等级 码龄7年 712粉丝 88原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值