问题标签 [bios]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
boot - BIOS 将哪些信息加载到 RAM 中?
我知道,在启动时,BIOS 会在内存 0x7c00 上加载预定义设备驱动器的第一个扇区(512 字节),然后跳转到该地址。
因此,从 0x7c00 到 0x7dff 的内存被占用。是否有任何其他 RAM 部分被占用?
如果我正在编写操作系统,我可以将除 0x7c00 到 ox7dff 之外的所有 RAM 用于我自己的目的吗?或者,在启动时是否有任何其他部分充满了我不能覆盖的“宝贵”信息?
我知道在给定的时刻,我可以覆盖加载在内存上的 MBR(链式加载),我的问题集中在......内存的哪一部分可用于操作系统?
对不起,我的英语不好。谢谢你的回答!!
assembly - 为什么引导加载程序在内存中重定位?
我正在编写一个引导加载程序,并且我已经记录了大部分细节,但我不确定为什么一些引导加载程序在开始执行大部分操作之前会将自己重新定位到内存中。
谁能解释一下?
这种行为的一个例子是原始的 v0.01 Linux 内核引导加载程序,其中包含以下注释:
boot.s 由 bios-startup 例程在 0x7c00 加载,并将自身移至地址 0x90000,然后跳转到那里。
c# - 如何使用 C# 使用 BIOS 日期和时间限制试用安装?
我想为我们的产品创建试用版,允许用户使用 5 天。
我打算使用系统 BIOS 时间来执行此操作。这可能吗,我还有什么其他方法可用?
bios - 将 PC 配置为默认开启状态
我正在为 PC 编写设备软件,为此,我希望 PC 可以用作设备。接通电源后,无需按电源按钮即可开机。BIOS 设置中有电源选项,但它仅在 PC 不正常关机时启动。我担心的另一个问题是不干净的关机会如何影响硬盘、文件系统和操作系统(XP 或 Linux)。
assembly - 在汇编 BIOS 调用中处理换行符/CR
我正在学习组装,我正在尝试使用 BIOS 调用从键盘/打印到键盘进行简单的读取。到目前为止,我有以下内容:
这工作正常,直到有人按下回车键 - 似乎正在处理 CR (\r) 而不是换行符 (\n),因为光标移动到当前行的开头,而不是下一行的开头线。
有任何想法吗?
input - 编辑 BIOS 以加快键盘阅读速度
我们有一个 linux 应用程序,它取决于用户按下某些键的速度。这是一项人类性能测试。
我很想知道是否有人有修改BIOS以使其更快地扫描密钥矩阵的经验?使用 Linux,我可以修改键盘驱动程序以更快地查询 bios,但除非修改 bios 以更快地扫描,否则不会有任何改进。
我们已经与一家大型硬件供应商进行了交谈,他们说可以在他们的机器上执行此操作,但他们将收取普通机器的 2 倍价格,因为他们必须对其进行测试和支持。
如果可能,我们希望能够在任何机器上执行此操作。
c# - C# 获取/设置 BIOS 设置?
我使用戴尔 XPS M1710。笔记本电脑的盖子、侧面扬声器和前置扬声器(3组可单独调节的灯)和鼠标垫下方有灯。在 BIOS 中,我至少可以更改每组灯的颜色。另外,我可以在鼠标垫下打开/关闭灯,我不能改变它的颜色,如果它亮了就交替。这台笔记本电脑附带了许多戴尔的软件,但我安装了 Windows 7 并且丢失了他们的所有应用程序,包括一个允许我更改这些浅色的应用程序。现在戴尔的应用已经消失了,我有兴趣制作自己的 C# 应用来更改这 3 组灯的颜色(我不是特别在意更改鼠标垫下的灯,我喜欢它关闭)。我将如何开发一个应用程序来检索和更改这些 BIOS 设置?
c - 通过 C 获取 BIOS 信息的常用方法
在阅读了一些东西之后,我似乎可以映射 SMBIOS 内存并对其进行解析。我不知道该怎么做。我不能使用任何托管代码,因为我希望它可以在任何操作系统下编译。
有没有人有任何代码示例如何解决这个问题?
assembly - 分辨率高于 640x480 的 x86 asm 图形设置?
我刚开始使用汇编语言(感觉就像在学习新东西),并且遇到了一些问题(到目前为止),我一直在看的所有教程都没有回答,或者太老了以至于不知道。
1)我已经尝试了一些搜索(也许我只是不知道正确的关键字),但我找不到用于更改屏幕分辨率等的图形模式的更新列表。我发现的最好的是:Assembler Tutorial,我几乎不认为 640x480 是汇编语言可以使用的最佳分辨率。有谁知道我可以使用的更新教程?
编辑:中断 10h 很旧,并且不太支持超过 640x480
2)是否可以将一个值从一个变量“移动”到另一个变量而不先将其移动到寄存器?例子:
编辑:这是不可能的。不使用寄存器就无法从一个内存移动到另一个内存。
3)关于问题1,有没有办法检测用户当前使用的图形模式,以便我可以更改它,然后再将其更改回来?(我认为有,但不知道该怎么做。)
编辑:需要查询操作系统的图形设置。
windows - 如何读出引导顺序?
有没有办法在 Windows 上以编程方式获取启动顺序?