无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 10232|回复: 38
打印 上一主题 下一主题

[原创] udm技术深度剖析

    [复制链接]
跳转到指定楼层
1#
发表于 2014-5-2 11:45:24 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 jianliulin 于 2014-5-2 13:59 编辑

一年多没有接触U盘启动了,前些日子偶尔看看P大提出的分区表项法使得fbinst有了新的玩法,后来经无忧网友的测试发现uefi主板对uefi启动的要求没有像在百度上说的(只要是fat分区放了efi启动文件就能启动)那没有简单,再后来udm出现了,号称是ud v2.0 ,兼顾bois和efi的新一代万能启动,分区看不到但却能efi启动,太振奋了,继续看介绍后发现,ud v2支持大于4G文件,能被grub2.0 引导,这我就有点疑惑了,因为目前ud只被grub4dos,burg能识别,其他引导器如果没有添加ud驱动(就是支持ud的代码,暂且叫驱动吧)是无法被识别的,就以为红色这两点,引起了我对udm的好奇,决定抽时间来了解它。虽然M大很努力的写了好多说明,但我还是看得糊里糊涂的,对于udm提到的功能,知其然不知其所以然,M大很少提到技术的原理,所以我决定从另外的途径解开我以下的两个疑问

  1.udm与ud的关系,他们的异同
  2.udm看不到分区,却能被ufi启动。
  
  
  
1.mbr对比,


   两者都对磁盘前64个扇区写入mbr引导代码和分区表,分区表都根据扇区进行偏移,但如果对fbinst mbr有兴趣的同学会发现上图中红框的位置会随着扇区数的变化而变化的,为什么会这样呢,因为有了它不管bios第一次读的是64个扇区里面的那一个扇区fbmbr都能正确的引导fbinst的核心引导代码,而udm ,没有这功能,
  
  

2.核心启动代码,
fbinst的核心启动代码放在第65~68扇区,这是fbinst的精髓所在,它能根据ud主分区的结构顺利的算出磁盘正确CHS,在第65分区还存放了fbinst的版本号主分区,扩张分区大小等等中要信息,而udm没有这样的核心代码,所以mbr中有没有那个标示号也无所谓了,这里就又产生了一个不解,fbinst通过自适应chs达到“万能”,而udm是通过什么来实现“万能”,到目前M大的文档没有公开此技术



3.文件结构的区别,
  M大说用不同的方式,不需要特定的文件系统但却用了ud的文件结构和保留了ud的主分区结构(每个扇区后面两个字节用来记录扇区的编号),没有了ud的核心引导代码,这个编号也就无用了。udm在主分区8M后默认还预留了2048个扇区的"启动预留大小" 用来存放grldr等启动文件,然后再接着是一个普通的分区MBROS。
  
  
4.支持文件文件大小
   ud目前是不支持大于4G的文件的,我也两次向不点提议过让grub4dos支持大于4G文件,但都没有被采纳,从技术角度来说让ud支持大于4G的文件没有难度。udm存放大于4G的文件应该是放在“启动预留大小”空间之后的MBROS分区(猜测,因为除了这里没有地方可放)。同时udm没有ud中的扩展分区,也就没有了可以连续存放文件的功能,这一个很好的功能被埋没了,
   

以上是我对ud和udm的一些对比,首先他们肯定是不一样的,一样的话就没有存在的意义,这里不讨论谁比谁好,只找不同点,是先从ud的角度然后再去对比udm,原因是M大没有公开udm的技术内幕,我才盲人摸象。  
  
  
  
  
  
  剩下“udm看不到分区,却能被ufi启动”这疑问了,自己动手用MBROSTool.EXE做好udm后,用DiskGenius是看不到MBROS分区的,用MBROSTool的分区管理也看不到,但如果设置了efi启动,则分区出来了,P大的“能被efi引导的都能在分区软件中看到分区”又一次被证实,所以udm的mbrOs是隐藏的必须是在牺牲efi启动的情况下。与fbinsttool取消img映射是一样的。udm的uefi启动的本质就是P大提出的分区表项法。

  
  

  
  结论:目前fbinst除了ud不支持大于4G的文件之外,用fbinsttool+分区表项法能实现udm的功能而且更直观、方便,以上是个人之言,欢迎拍砖,希望能催生新的技术诞生



  

点评

据sp_star所说,在他的机器上不需要映射分区就能支持efi启动。可能少数机器比较强悍吧  发表于 2014-5-2 12:35

评分

参与人数 2无忧币 +10 收起 理由
hero8000 + 5 很给力!
fxq + 5 赞一个!

查看全部评分

2#
 楼主| 发表于 2014-5-2 12:24:35 | 显示全部楼层
本帖最后由 jianliulin 于 2014-5-2 12:26 编辑
zds1210 发表于 2014-5-2 12:21
嗯。对于新技术,ud2我是支持的。只是希望原作者能提供更多技术细节。


暂时看不出udm与ud有什么关联,更提不上是v2 或者升级。期待真正的ud v2 出现
回复

使用道具 举报

3#
 楼主| 发表于 2014-5-2 12:36:54 | 显示全部楼层
本帖最后由 jianliulin 于 2014-5-2 12:39 编辑
fukystone 发表于 2014-5-2 12:29
重要的不在这儿,udm的功能中有一条是“不需要读入wim文件到ramdisk”,这个比ud强
但是它的启动兼容性确 ...


ud中的img用分区表项法后,一样可以在分区软件中看到,都是一个真实的分区,可格式化,可直接复制,删除文件。需要显示的时候就显示出来,反之隐藏,看不出有什么不一样的地方。
回复

使用道具 举报

4#
 楼主| 发表于 2014-5-2 12:45:15 | 显示全部楼层


这就是神奇之处, 能实现这样的功能是用什么技术,efi后门还是别的技术 ,大家都希望谜底能够揭开,目前是听说可以但大家都不知道为什么可以。

点评

似乎hhh333的测试也是不需要映射分区表,就能EFI启动的。M大自己的反而不行。 不明觉厉..........  详情 回复 发表于 2014-5-2 14:40
M大既然设置了支持的开关,那就是说他也是知道大部分机器是需要映射出分区才行。记得他帖子有提到借鉴p大分区表项法的创意。还有说道这个udm分区是有文件分配表的。其它的我也不懂。也没提到相关技术。我之前好几次  详情 回复 发表于 2014-5-2 13:02
回复

使用道具 举报

5#
 楼主| 发表于 2014-5-2 13:49:40 | 显示全部楼层
能不能和意义大不大,是不同的概念。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-5-3 03:47

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表