如何编写连接到互联网的BIOS程序?

时间:2011-03-18 13:02:10

标签: bios

我知道有一些程序可以像安装在BIOS上的笔记本电脑的lojack,但我仍然有点困惑。在阅读关于lojack时,在我看来,在用户登录并尝试访问互联网之前,他们无法完全找到笔记本电脑的位置。所以我认为这是一个BIOS应用程序,以便小偷重新格式化HD无关紧要。

所以我的问题是,是否有人对互联网如何编写BIOS应用程序有任何想法。我不是在寻找完整的答案 - 只是想法或资源来开始。例如,这样的东西是用汇编写的吗?一旦这样的应用程序被编写,它如何被转移到BIOS。 BIOS程序本身是否识别出有互联网连接(小偷登录操作系统时)。或者在登录时,会产生其他进程吗?有没有人可以指导我的资源/网站?

4 个答案:

答案 0 :(得分:8)

您没有提到您是否对传统BIOS或EFI BIOS感兴趣,但我要提到的是,使用EFI可以编写EFI应用程序。见英特尔出版社:

Harnessing the UEFI Shell

EFI Application工具包带有完整的TCP / IP网络堆栈:
http://www.intel.com/technology/efi/toolkit_overview.htm

更多tianocore.org

答案 1 :(得分:4)

要了解有关BIOS的知识,一个很好的来源是coreboot.org。它是一个开源BIOS(或固件)并支持一些物理机器。

传统BIOS是用汇编语言编写的,但新一代(如UEFI或coreboot)主要使用C语言编写。 BIOS程序存储在ROM中,由CPU自动执行。

答案 2 :(得分:3)

BIOS程序本身不会访问互联网或执行任何广告功能。 BIOS固件中添加的LoJack是文件复制/修补实用程序 - 启动时它可以检查硬盘驱动器上是否有Windows副本,如果已删除,则继续静默安装/修复LoJack服务。该服务本身包括几种降低其配置文件的措施,并防止其被禁用(类似于有多少特洛伊木马和恶意软件运行多个进程,如果一个被禁用或被杀死,每个进程都会恢复另一个进程)。

如果在擦除硬盘驱动器后安装了不受支持的操作系统(如Linux),LoJack BIOS程序将无法执行任何操作。

答案 3 :(得分:3)

关于“LoJack”式解决方案,该技术的提供商之一是Absolute Software的Computrace产品。

基本上有3个组件:1)在OS中运行的软件组件; 2)BIOS组件,它被烘焙到系统BIOS中(通过Absolute与PC供应商合作完成); 3)Absolute软件中与PC通信的服务器。

有关其工作原理的更多信息,请访问:
http://www.absolute.com/en/company/Computrace-Persistence.aspx

(特别参见本网站上的演示视频)