关于

这是 Zoologist 的个人blog, 目前在玩Arduino, 专注于UEFI (EDK2)的知识,以及汇编语言(DOS/Win32),Delphi和现在非常少见的Pascal语言

推荐通过eMail联系我 lab-z#qq.com (请替换 # 为 @)

《关于》有28个想法

  1. 你好,问个问题,是否在操作系统加载起来以后,所有EFI程序和驱动都释放,失效,请问如果是这样,EFI这些丰富的功能还有什么太大的意义吗?难道能取代操作系统

    1. 是的都要释放掉。

      理论上进入 OS (特别是 Windows)之后,传统意义上的BIOS不会参与活动了。不过这个时候还有 OS 的 ACPI 在执行 ASL 不断运行,此外还可能有 SMI 在活动。 从 OS的角度来说,BIOS存在的意义只是把OS Load 起来,然后通过一些手段告知 OS 硬件上的一些设定而已。

        1. 只要有 file io system protocol 的分区都可以。目前以我的经验来看,FAT32的分区都可以挂接为 fsx: 这样的。此外,fat12 和 fat16 也都是可以支持的。另外,网上有一个开源的 ntfs 驱动,加载之后可以读取 ntfs 分区上的内容,只是无法写入而已,推荐你试试看。

          1. 加载该驱动后确实能读取ntfs分区文件了,无法写入是驱动本身的限制还是说分区没有file io system protocol 呢?不知道哪个大神写了这个驱动,源码却没有共享

          2. 我猜测应该是驱动本身的问题,ntfs比较复杂,也并非开放性的协议,读取会简单一些,写入应该很复杂。不过我记得这个 ntfs 驱动是开源的,建议你再找找哈。

  2. 建议将回复这个地方修改一下,上条记录已经看不到回复这个按钮了~源码在github找到,准备研究下,感觉像Linux下的项目,不知道博主熟悉不

  3. Zoologist 你好,个人从事intel Q270 X86 bios-verify-test方面的工作,刚开始接触udk2015,想请教前辈的关于这方面需要的基础知识架构、和学习经历。以此为专题能给大伙分享下就更好了。

    1. Hi, 我的知识都是自学的,很零散,并且现在比较头疼的是我发现很多知识的理解不扎实,鉴于可能误导别人,所以我分享的都是可以被验证的,而很少有基础架构之类的东西。

  4. 大佬,能问个问题不?之所以找到这里是我在搜索uefi的一些相关知识的,(纯小白),因为我给我的笔记本(蓝天P750DM)强行刷了P750DM2的BIOS(俩者主板几乎一样,除了声卡以及后者多了hifi以及风扇供电电压,后者官方给支持7代core,前者就是不给,自己加微码也不行),刷完后问题开始遇到的主要就是插电无法关机和音频问题,第一个问题我看了估计很难解,不过真正影响不大。音频是声卡能识别,但是很奇怪的是Windows不会为其主动装realtec的驱动而是自带的兼容驱动,喇叭识别不了,插耳机能检测到,但是没声音。话有点绕,大佬如果能看完,小弟表示非常感谢。问题来,昨天我突发奇想从1709升级最新win10预览版,结果重启完跑完百分数进度后第二次重启时竟然卡住了,硬盘灯不闪,等了很久都这样,不是机器慢,我的ssd是sm961,今天格盘直接上最新版,然后又收到了下一个版本更新,结果还这样,说明是BIOS问题。所以,我想问下这到底怎么回事呢?还有就是为什么一众台式Z17主板都可以加微码上7代,甚至最近的8代马甲I3,而蓝天的P750DM/P775DM/P870DM等Z170主板的笔记本却不行呢?

    1. 有可能是硬件有差别,然后官方也无法从 BIOS 角度 fix,所以就说不支持的。我猜测最主要是 cost 的问题。比如,之前的那个平台为了省钱,有一些该有的东西就没有加,结果新的出来了无法支持。

      1. 应该不是硬件造成的,应该是处于商业原因为了卖新产品,毕竟强刷新一代的BIOS实际是可以用虽然有问题,就和8代i3有人实现了在华擎的100系主板商用,而且让人奇怪的是,直接只加微码是可以亮机的,但是一旦插了任何外储包括优盘都会造成第一次BIOS加载默认配置后卡死,拔掉所有的外存后,可以看到显示没有引导设备,请插入设备重试的英文,请问有什么资料可以了ami bios各个guid对应什么?

      2. P750一代和二代主板等几乎完全一样,强刷后除了音响部分全部都非常正常,除了无意中发现的系统升级中走完百分数进度,最后一次重启时会卡住,和原BIOS加了新的微码非常类似,硬灯闪烁几次就再也不闪了

  5. 版主你好,

    请问一下 ,版主有没有遇到过 可以build *.efi文件 但是 libC里面的 fopen函数怎么都打不开文件

    1. 你應該是少加了 "DevShell"

      [LibraryClasses]
      DevShell

      底下是 StdLib\ReadMe.txt 裡的說明

      DevShell Add if desired
      File I/O abstractions using UEFI shell facilities.
      Add this to the application's main INF file if file-system access needed.

  6. 版主你好,
    本人是新手,才接触uefi的知识,现在有个问题,我用VM,或者qemu模拟进入后,脚本会读取bios的原始文件,然后添加section,最后生成出来的bios重新写进入,但是虚拟机BIOS写保护,根本没法模拟这个操作,真实机可以,但是测试的时候刷坏了几次,想用虚拟机的方式测试,不知道有没有什么好的方法建议呢?谢谢

          1. 是的,目前Shell默认的界面不太美丽,字体不好看,颜色也没办法定制,屏幕分辨率也很低,看起来有点难受,OEM的Shell就好很多

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注