bootloader 相关问题

Bootloader是一个程序,它将操作系统加载到计算机的内存中并将其设置为执行。当计算机启动或重新启动时,基本输入/输出系统(BIOS)执行一些初始测试,然后将控制权转移到Bootloader。

从引导加载程序加载第二个扇区

我正在尝试加载第二扇区的软盘我用fasm 1.7和Windows 7,VMware测试这段代码。为了制作软盘映像文件,我使用了Ubuntu 13.04中的dd我也使用dd将.bin写入.img这里'...

回答 1 投票 1

MikeOS引导加载程序中的堆栈段

我不明白这段代码:mov ax,07C0h;在缓冲区上方设置4K堆栈空间添加ax,544; 8k缓冲区= 512段+ 32段(装载机)cli;禁用......

回答 1 投票 9

无法读取启动代码上的扇区

我写了一个启动代码,在屏幕上打印一些东西,然后重新定位自己并加载下一个启动代码(VBR)。我使用vmware在虚拟机上测试了代码,它正常工作,我看到......

回答 1 投票 1

编译的bootloader的大小错误

我正在制作一个引导加载程序,但它会生成一个513字节的输出文件,而它应该是512位。这是boot.asm [ORG 7C00] [BITS 16] mov eax,cr0或eax,1 mov cr0,eax [BITS 32] mov ax,10h mov ds,ax ...

回答 1 投票 3

汇编文字颜色

我在汇编中做了一个iso文件,我想为文本添加颜色(在这种情况下:红色)。有谁知道怎么做? [BITS 16] [ORG 0x7C00] jmp主要:mov si,string; si =字符串...

回答 2 投票 4

错误A2023指令操作数必须具有LGDT指令的大小

我在下面的汇编代码中遇到了上面提到的这个错误,我在网上也找不到这个错误代码。 mov ax,main_data mov ds,ax mov bx,gdt_info lgdt [bx] ...

回答 1 投票 1

引导加载程序不断向al添加eax

我正在尝试构建我的第一个bootloader,它确实有效,但根据gdb,有一件事情发生,我不明白。这是我用nasm编写的bootloader:org 0x7c00 ...

回答 1 投票 2

如何在C中正确创建内核并链接到引导加载程序

我在这里有一个简单的引导加载程序:;初始化类型东西[位16] [组织0x7c00];制作消息并打印它mov si,MESSAGE调用打印;无限循环停止jmp $;打印“方法”...

回答 1 投票 2

U-boot CONFIG_SYS_TEXT_BASE与SDRAM之间的关系

目前,我对u-boot的理解如下ROM代码加载SPL SPL初始化RAM,并加载u-boot到CONFIG_SYS_TEXT_BASE RAM地址u-boot重定位自己启动内核我检查我的u -...

回答 1 投票 0

“.com”文件和“.bin”文件有什么区别?

我正在研究基于Assembly x86编程语言的内核。我只是想知道.bin文件和.com文件之间有什么区别。我可以从.com文件启动吗?在哪里以及如何使用.com ...

回答 1 投票 0

传统BIOS引导加载程序在第二阶段引导实模式代码

我正在编写自己的操作系统。到目前为止,我的代码超过512字节,这太大了,无法容纳在简单的引导扇区中。我明白我现在必须写一个读取的引导加载程序...

回答 1 投票 12

汇编 - 在bochs中运行引导加载程序的问题

我目前正在尝试编译并在bochs中运行一个简单的bootloader。目前,这是我的bootloader.asm文件:[BITS 16] [ORG 0x7C00];代码被映射到顶部:jmp top;循环永远...

回答 1 投票 2

如何修复“qemu:致命:尝试在0x000a0000以外的RAM或ROM外执行代码”

我正在开发自己的bootloader +内核。我创建了一个项目并将其放在github上:https://github.com/rprata/ubootlua(branch tmp-libc-implementation)我尝试使用QEMU运行我的boot.bin:...

回答 2 投票 1

向BX寄存器写入值是否会影响ES寄存器?

[org 0x7c00] mov bp,0x8000;安全地远离我们设置堆栈mov sp,bp mov bx,0x9000; es:bx = 0x0000:0x9000 = 0x09000正如你在评论中看到的那样:es:bx = 0x0000:0x9000 = ...

回答 1 投票 2

MASM替代NASM填充到510字节,时间510 - ($ - $$)db 0

这个NASM声明的MASM替代方案是什么?次510 - ($ - $$)db 0我正在制作一个MBR引导程序。基本上这个语句填充内存中剩余的510个字节,其中0为...

回答 1 投票 0

链接第一和第二阶段引导加载程序

我正在写一个两阶段的bootloader这是我的boot.asm [org 0x7c00] [bit 16] xor ax,ax mov ds,ax mov es,ax xor bx,bx mov ah,0x0E mov al,'A'int 0x10 jmp 0x8000 cli hlt次510 - ($ - $$)db 0 ...

回答 2 投票 1

如何为STM32F4微控制器的闪存库实现OTA更新故障转移方案?

我正在为我的项目使用32位ARM STM32F439ZI微控制器。微控制器有2兆字节的闪存,分为两组,每组1兆字节,用于同时读写/ ...

回答 1 投票 1

Sparkfun Edge bootloader问题

最后,sparkfun板边缘板今天到达;-)遵循这个写得很好的指南:https://codelabs.developers.google.com/codelabs/sparkfun-tensorflow/#3我坚持以下......

回答 3 投票 3

arduino-uno怎么知道它只有一个串口?

我试图理解微控制器是如何工作的。至少从软件开发人员的角度来看。我有一些关于“make-files”以及编译和链接的基本知识......

回答 2 投票 0

如何使用Assembly(NASM)引导加载程序编译Rust内核

我有一个用NASM编写的简单的2阶段引导加载程序,我想继续使用Rust的操作系统内核。所以我用Cargo创建了一个夜间Rust项目,并在src / main.rs文件中禁用了std。现在我 ...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.