问题标签 [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.

0 投票
1 回答
1746 浏览

winapi - 获取 BIOS 序列号

Win32下不使用WMI API如何获取BIOS序列号?我需要一种非 WMI 方式,因为 Windows 来宾帐户下的 WMI 调用返回为拒绝访问。

0 投票
4 回答
663 浏览

stack - bios 中断调用所需的堆栈大小

我正在开发一个用于学习目的的小型引导加载程序。是否有任何关于 bios 中断调用所需的(免费)堆栈大小的规范/信息?

0 投票
2 回答
1705 浏览

c - 如何使用 Const Char* 打印 ASCII 扩展字符?

我有一个在屏幕上打印字符的功能,如下所示:

我想以十进制打印字符 254,但我需要使用存储在const char*. 我不能尝试print(0x0F, 0, 0, 0xFE);,因为这会在没有强制转换的情况下引发指针错误,那么我该怎么做呢?

0 投票
5 回答
3292 浏览

assembly - 是否可以从 BIOS 中的程序调用将存在于硬盘上的 Windows 库?

我正在尝试编写一个将成为 BIOS 选项的程序(在 POST 之后)。我希望应用程序有一个漂亮的 GUI,而不是基于文本的(这有多种原因,本地化就是其中之一)。

我的问题是,我们受到可以闪存到 BIOS 的应用程序大小的限制。

是否可以使用 MASM32 “链接”到硬盘上的 dll,以便我们可以使用 Windows API 开发 GUI?

或者是否有可供我们使用的 API 来创建可以链接到最终可执行文件的 GUI?(最终程序可执行文件的大小限制为 60K)

您可以提供的任何帮助将不胜感激,在此先感谢。

0 投票
1 回答
383 浏览

assembly - 在 BIOS 中显示图形

使用 MASM32 是否可以将存储在嵌入可执行文件的二进制文件中的位图显示到控制台?

谁能告诉我怎么做?

附录:我不是在这里谈论一个完整的 GUI。只是能够在屏幕上显示字符位图。它们将作为 8x8 二进制图像存储在我们链接到可执行文件的文件中。

0 投票
2 回答
3347 浏览

linux - 在 linux C 中获取 GPU 信息

C 语言中是否有任何用于 Linux 的库来获取 gpu 信息,例如 BIOS Verison DigitalID ...

0 投票
3 回答
3250 浏览

api - 现代操作系统如何使用 BIOS?

现代操作系统中 BIOS 的功能是什么?开机后还能用吗?是否有某种 BIOS API?

0 投票
4 回答
1005 浏览

assembly - 为什么我的引导加载程序的堆栈段位于 0x3FF(实模式 IVT 结束)?

“地址 0x500 是 BIOS 使用的最后一个地址”是Wikipedia -

“00000000-000003FF 实模式 IVT(中断向量表)”是osdev.org关于 BIOS 内存映射的文章所说的。

那么你能告诉我为什么 NASM 将我的 .com 文件的堆栈指针放在 0x3FF 而我的指令指针从 0x7C00 开始吗​​?对我来说,SP 最直观的位置就在 0x7C00 下方。

0 投票
3 回答
312 浏览

windows - 强制机器从 live CD 启动

如果我想在可引导的 CD 上分发一些软件,有没有办法(从 Windows)强制机器重新启动到 CD 操作系统,即使 BIOS 没有设置为从 CD 引导?

0 投票
4 回答
45994 浏览

windows - 生成唯一硬件 ID 的可靠方法

问题:我必须为每个联网客户端提供唯一 ID,例如:

  • 一旦客户端软件安装在目标计算机上,它(ID)应该保持不变,并且如果软件重新安装在同一台计算机和相同的操作系统安装上,它应该继续保持,
  • 如果以大多数方式修改硬件配置,则不应更改(更换主板除外)
  • 当安装了客户端软件的硬盘被克隆到具有相同硬件配置(或尽可能相似)的另一台计算机上时,客户端软件应该知道该更改。

一点解释和一些背景故事:

这个问题基本上是一个古老的问题,也涉及软件复制保护的主题,因为这里提到了该领域使用的一些机制。在这一点上我应该清楚,我不是在寻找复制保护方案。请继续阅读。:)

我正在开发一个应该在本地网络中工作的客户端-服务器软件。我必须解决的问题之一是识别网络中的每个唯一客户端(不是什么大问题),以便我可以将某些属性应用于每个特定客户端,在特定的部署生命周期内保留和强制执行这些属性客户。

在寻找解决方案时,我意识到以下几点:

  • Windows 激活系统使用某种对硬件修改极为敏感的重指纹机制,
  • 磁盘映像软件沿所有卷 ID(格式化时与每个分区绑定)复制,以及在安装过程中、首次运行期间或以任何其他方式生成的自定义唯一 ID,严格来说,这些 ID 本质上是软件,并存储在注册表或在硬盘上,所以很容易混淆两者。

解决此类问题的明显选择是找出 BIOS 标识符(虽然不能 100% 确定这是否在相同的主板型号中是唯一的),因为这是我唯一可以依赖的不重复的东西,通过克隆转移,并且无法更改(至少不能通过使用某些用户空间程序)。其他一切都失败了,要么不可靠(MAC 克隆,有​​人吗?),要么要求太高(因为它对配置更改过于敏感)。

我想问的子问题是,我在架构方面做得对吗?也许有一个更好的工具来完成我必须完成的任务......

我想到的另一种方法类似于握手机制,其中服务器维护连接的客户端 ID 的内部查找表(在任何给定时刻,它甚至可以完全基于软件且不唯一),并告诉客户端如果在连接时提供了重复的 ID,则在握手期间提出不同的 ID。不幸的是,这种方法不能很好地满足在生命周期内将属性绑定到特定客户端的要求之一。