gpt4 book ai didi

assembly - 编写我自己的BIOS

转载 作者:行者123 更新时间:2023-12-03 02:53:23 29 4
gpt4 key购买 nike

我没有疯,只是重新发明轮子:D
我编写了引导加载程序、鼠标和键盘迷你驱动程序、迷你操作系统等。

我总是试图避免 DOS 中断,只使用 BIOS 中断,试图发展统一的迷你操作系统,但突然我决定编写自己的 BIOS :)

传说说:
我是一名高级程序员,然后是低级程序员。有一天我将成为一名机器语言程序员!

BIOS 是用汇编语言编写的吗?怎么才能闪现呢?机制是什么?我可以开始编辑当前的 BIOS 吗?

最佳答案

BIOS 可以用汇编语言编写,但不是必须如此,某些部分需要获取系统调用的参数,因为它们与编译器调用约定不匹配。

如何闪光?因主板而异,我会从开源虚拟机开始,并为其编写 BIOS。或者创建一个已编写 BIOS 的虚拟机。该机制因供应商而异,通常启动 dos(dos 并没有消亡,它在 PC 世界、尤其是主板开发和嵌入式系统中非常活跃)。我不会乱搞真正的主板,如果你还不知道所有这些问题的答案,如果你采取这条路,你就会弄坏许多主板。

您可以尝试对主板进行 BIOS 升级并对其进行逆向工程(尽管可能有一个点击协议(protocol)表明您不会这么做)。如果你弄清楚了,你就可以加载它并破解它。我不会去那里,在你弄清楚之前,你的系统就会变砖。

写简历真的是你所追求的吗?相当老派,就像编写 6502 代码一样有趣。有许多更有用、更有趣的低级问题。

如果你会写汇编,那么编写机器代码一点也不困难,你可以只是为了好玩而这样做。 x86 很糟糕,您应该花一些时间学习其他系统及其 asm 和机器代码(并为它们编写操作系统)。 ARM称霸世界,不依赖BIOS。有人告诉我,要在非 x86 系统上安装显卡,您仍然需要在 x86 BIOS 上进行一些 x86 操作,才能弄清楚如何在不需要运行 x86 BIOS 的情况下启动主流显卡。观察模拟器运行BIOS并看看它做了什么,找出在没有BIOS执行的情况下替换开机初始化的电源...编写指令集模拟器或反汇编程序是编写机器代码之外的下一步,我什至不会浪费不过,在 x86 上,我可以建议一个替代方案列表(或者您可以使用我编写或收集的模拟器)。

如果 x86 BIOS 是您想要的方式,那么您最好的途径是为 qemu、virtualbox 或其他虚拟机编写、替换或修改 BIOS。用您的 BIOS 替换该 BIOS 可能会替换某个目录中的文件或使用命令行选项来指定备用 BIOS。一旦你在这方面有了丰富的经验,那么如果仍然有主板上有遗留的BIOS,也许你可以通过自己的方式进行编程(需要为每种类型的主板购买几 block ,因为你会砖化一些)。市场上有如此多的嵌入式系统,只要花费 20 到 200 美元就能获得相同水平的经验,因此在没有像样的原理图和文档的情况下破解 PC 主板是没有意义的。您可以挖出一台原始 PC,其中记录了原理图和 BIOS 列表,并且 BIOS 已插入 socket ,因此如果您的 PC 无法启动(并且不会损坏主板),它不是一 block 砖 block ,您可以重新编程或更换 BIOS芯片。可能想使用微 Controller 来代替假BIOS,因为找到合适的硬件来重新编程更多BIOS芯片可能更难找到工作原始PC的......有一个amiga社区可能更有趣并且会很高兴您改进/调整他们的 BIOS,例如将现代硬件置于遗留系统调用后面。

关于assembly - 编写我自己的BIOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10890048/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com