《操作系统真相还原》——加载器

article/2025/8/7 11:23:43

显存

将上一章的中断输出,变为显存输出
在这里插入图片描述

加载器

在这里插入图片描述
使用mbr引导程序从磁盘中加载loader程序。

MBR

%include "boot.inc"
SECTION MBR vstart=0x7c00         mov ax,cs      mov ds,axmov es,axmov ss,axmov fs,axmov sp,0x7c00mov ax,0xb800mov gs,ax;clear screenmov     ax, 0x600mov     bx, 0x700mov     cx, 0          mov     dx, 0x184f	  int     0x10            ; int 0x10mov eax, LOADER_START_SECTIONmov cx,1mov bx, LOADER_BASE_ADDR
call rd_disk_m_16 ; read data from diskjmp LOADER_BASE_ADDR
rd_disk_m_16:mov esi, eaxmov di, cxmov dx, 0x1f2mov al, clout dx, almov eax, esimov dx, 0x1f3out dx, almov cl, 8shr eax, clmov dx, 0x1f4out dx,alshr eax, clmov dx, 0x1f5out dx, alshr eax, cland al, 0x0for al, 0xe0mov dx, 0x1f6out dx, almov al, 0x20mov dx, 0x1f7out dx, al.not_ready:nopin al, dxand al, 0x88cmp al, 0x08jnz .not_readymov ax, dimov dx, 256mul dxmov cx, axmov dx, 0x1f0
.go_on_read:in ax, dxmov [bx], axadd bx, 2loop .go_on_readret	 times 510-($-$$) db 0db 0x55,0xaa

Loader

%include "boot.inc"
SECTION Loader vstart=LOADER_BASE_ADDR        mov byte [gs:0x00],'2'mov byte [gs:0x01],0xA4 mov byte [gs:0x02],' 'mov byte [gs:0x03],0xA4mov byte [gs:0x04],'M'mov byte [gs:0x05],0xA4mov byte [gs:0x06],'B'mov byte [gs:0x07],0xA4mov byte [gs:0x08],'R'mov byte [gs:0x09],0xA4 jmp $

http://www.hkcw.cn/article/vDwwGDsiGn.shtml

相关文章

Spring Boot 应用中实现配置文件敏感信息加密解密方案

Spring Boot 应用中实现配置文件敏感信息加密解密方案 背景与挑战 🚩一、设计目标 🎯二、整体启动流程 🔄三、方案实现详解 ⚙️3.1 配置解密入口:EnvironmentPostProcessor3.2 通用解密工具类:EncryptionTool 四、快速…

前端实现图片压缩:基于 HTML5 File API 与 Canvas 的完整方案

在 Web 开发中,处理用户上传的图片时,前端压缩可以有效减少服务器压力并提升上传效率。本文将详细讲解如何通过<input type="file">实现图片上传,结合 Canvas 实现图片压缩,并实时展示压缩前后的图片预览和文件大小对比。 一、核心功能架构 我们将实现以…

用wireshark抓了个TCP通讯的包

昨儿个整理了下怎么用wireshark抓包&#xff0c;链接在这里&#xff1a;捋捋wireshark 今天打算抓个TCP通讯的包试试&#xff0c;整体来说比较有收获&#xff0c;给大家汇报一下。 首先就是如何搞到可以用来演示TCP通讯的客户端、服务端&#xff0c;问了下deepseek&#xff0c;…

AWS WAF设置IP白名单

目标 设置一个组白名单IP地址&#xff0c;当发现是这些IP地址发过来的请求后&#xff0c;WAF自动放行。 创建IP集 打开WAF页面&#xff0c;开始IP集创建如下图&#xff1a; 设置ip集&#xff0c;如下图&#xff1a; aws waf acl配置白名单 找到Web ACL&#xff0c;开始在…

随笔20250530 C# 整合 IC卡读写技术解析与实现

以下是一个完整、最简化的 FeliCa 读取整合示例&#xff08;无需 SDK&#xff0c;基于 PCSC NuGet 包&#xff09;&#xff0c;你可以直接运行这个控制台程序&#xff0c;验证能否识别 RC-S300 并读取卡片 UID&#xff1a; &#x1f9ea; 示例说明 &#x1f4e6; 使用 NuGet 包…

day024-网络基础-TCP与UDP、DNS

文章目录 1. 李导推荐书籍2. OSI七层模型2.1 传输层2.2 网络层2.2.1 问&#xff1a;两端处于不同局域网的设备怎么网络通信&#xff1f; 2.3 数据链路层2.4 物理层2.5 图解OSI七层模型 3. 数据传输模式3.1 全双工3.2 半双工3.3 单工 4. TCP 3次握手4.1 抓包 5. TCP 4次挥手5.1 …

AI赋能开源:如何借助MCP快速解锁开源项目并提交你的首个PR

引子 很多同学都梦想为开源项目贡献力量&#xff0c;然而现实往往是——面对庞大复杂的项目&#xff0c;从入门到提交第一个有实质性代码的PR&#xff0c;时间跨度可能长达数年。传统路径通常是先从文档贡献开始&#xff0c;逐步深入理解项目架构&#xff0c;最终才能进行代码…

智能问数技术路径对比:NL2SQL vs NL2Semantic2SQL

在人工智能浪潮席卷数据分析领域的当下&#xff0c;“智能问数”凭借其自然语言交互的便捷性&#xff0c;迅速成为企业提升数据民主化与决策效率的焦点。大语言模型&#xff08;LLM&#xff09;展现出的强大语言理解和生成能力&#xff0c;无疑为这一愿景启动了引擎。 然而&am…

QT-Creator安装教程(windows)

目录 1&#xff0c;下载 1.1 镜像源下载 1.2 运行下载的exe文件 1.2.1 QT5 版本安装 1.2.2 QT6 版本安装 1.2.3 如何在安装完成之后&#xff0c;继续添加扩展包 1&#xff0c;下载 1.1 镜像源下载 地址&#xff1a;Index of /qtproject/ 根据电脑系统选择下载linux、macO…

Warm-Flow发布1.7.3 端午节(设计器流和流程图大升级)

Warm-Flow发布1.7.3 端午节&#xff08;设计器流和流程图大升级&#xff09; 更新内容项目介绍功能思维导图演示地址官网Warm-Flow视频 更新内容 [feat] 新版流程图通过前端渲染[perf] 美化流程设计器ui[feat] 办理人权限处理器&#xff0c;新增办理人转换接口&#xff0c;比如…

分布式锁Redisson使用

redission为我们提供了方便使用redis集群的方法&#xff0c;可以使用它完成锁的建立。 依赖 <dependency><groupId>org.redisson</groupId><artifactId>redisson</artifactId><version>3.36.0</version></dependency>spring引…

Unity UI系统中RectTransform详解

一、基础代码示例 public GameObject node; var rect node.GetComponent<RectTransform>();Debug.Log($"anchoredPosition----{rect.anchoredPosition}"); Debug.Log($"offsetMin.x--{rect.offsetMin}"); Debug.Log($"offsetMax.x--{rect.of…

神经网络(Neural Networks)

设计神经网络的最初动机是编写能够模仿人类大脑学习和思考方式的软件。现今&#xff0c;神经网络也被称为人工神经网络&#xff0c;其工作方式已经与我们所认为的大脑实际工作方式和学习方式大不相同。 研究神经网络的工作始于 20 世纪 50 年代&#xff0c;之后的一段时间它并不…

DeepSeek‑R1-0528 重磅升级:蚂蚁百宝箱免费、无限量调用

DeepSeek‑R1-0528 重磅升级&#xff1a;蚂蚁百宝箱免费、无限量调用 端午假期前一天&#xff0c;DeepSeek‑R1 更新到了 0528 版本&#xff01; 官方说明&#xff1a;0528 版本在深度思考与推理能力方面显著增强——在数学、编程与通用逻辑等多项基准测评中&#xff0c;表现已…

可定制化货代管理系统,适应不同业务模式需求!

在全球化贸易的浪潮下&#xff0c;货运代理行业扮演着至关重要的角色。然而&#xff0c;随着市场竞争的日益激烈&#xff0c;货代企业面临着越来越多的挑战&#xff1a;客户需求多样化、业务流程复杂化、运营成本上升、利润空间压缩……这些挑战迫使货代企业不断寻求创新和突破…

使用基于Xsens惯性传感器的动作捕捉技术测量人体工程学

由于单调和片面的体力消耗&#xff0c;牙科领域的从业者患肌肉骨骼疾病 (MSD) 的几率很高。惯性测量单元 (IMU) 越来越成为评估工作姿势风险的焦点。因此&#xff0c;本研究旨在使用基于惯性传感器的运动捕捉 (MoCap) 评估人体工程学讲座和培训干预对牙科助理学生的姿势风险和M…

设计模式之结构型:桥接模式

桥接模式(Bridge Pattern) 定义 桥接模式是一种​​结构型设计模式​​&#xff0c;通过​​将抽象部分与实现部分分离​​&#xff0c;使它们可以独立变化。它通过组合代替继承&#xff0c;解决多层继承导致的类爆炸问题&#xff0c;适用于​​多维度变化​​的场景(如形状与颜…

Spring Boot 3 整合 MQ 构建聊天消息存储系统

引子 在构建实时聊天服务时&#xff0c;我们既要保证消息的即时传递&#xff0c;又需要对消息进行持久化存储以便查询历史记录。然而&#xff0c;直接同步写入数据库在高并发场景下容易成为性能瓶颈&#xff0c;影响消息的实时性。秉承"没有什么问题是加一层解决不了的&q…

0-EATSA-GNN:基于图节点分类师生机制的边缘感知和两阶段注意力增强图神经网络(code)

code:https://github.com/afofanah/EATSA-GNN. 文章目录 Abstract1. Introduction1.1.动态图场景1.2.EATSA-GNN框架的背景化2. Background2.1.GNN边缘感知挑战2.2.GNN的可解释性问题2.3.EATSA-GNN可解释性3. Related worksAbstract 图神经网络(GNNs)从根本上改变了我们处理和…

解决开发者技能差距:AI 在提升效率与技能培养中的作用

企业在开发者人才方面正面临双重挑战。一方面&#xff0c;IDC 预测&#xff0c;到2025年&#xff0c;全球全职开发者将短缺400万人&#xff1b;另一方面&#xff0c;一些行业巨头已暂停开发者招聘&#xff0c;转而倚重人工智能&#xff08;AI&#xff09;来满足开发需求。这不禁…