EFI下的Guid Partition Table Format
来源:互联网 发布:语音群呼软件 编辑:程序博客网 时间:2024/04/30 12:08
一. Legacy system
在legacy系统下,MBR一定是位于磁盘的第一个扇区,MBR总size为512个字节,由64个字节的partition table和446个字节的boot code,以及2个字节内容为0x55AA的signature组成。
Legacy Partition table只能支持4个磁盘分区,每个分区用16个字节来描述。
二、EFI system
操作系统可以选择将自己的loader程序做成EFI应用程序,然后按照UEFI规范,存放在硬盘的GPT分区内的ef/boot/目录下。具体的文件名是boot(ARCH).efi,这里ARCH是架构名,如果是IA32,则是bootia32.efi,当然也可以是bootx64.efi,bootIA64.efi等等。
BIOS检测到这个文件,会自动将其加载到内存,然后执行。换言之,开始启动操作系统。
PMBR
在支持EFI系统的磁盘里,第一个扇区仍然是放着一个MBR,它叫做Protective MBR,是为了兼容一些比较老的软件和工具而存在的。
PMBR和MBR的格式完全相同,但是它会在partition table entry里去描述一个OsType类型为0xEE的磁盘分区,0xEE代表的类型为EFI,这个分区的startingLBA应该设定为0x00000001,SizeInLBA应该设定为0xFFFFFFFF,也就是说,除了LBA0,要把整个磁盘看成一个类型为EFI的大分区。
Primary Partition Table
PMBR占用了LBA(logic block address)0,primary partition table必须从LBA1开始。
primary partition table分为两个部分,第一部分是header,第二部分是entry array。
Header的格式如下:
Partition entry array就和MBR的一样了,是一个数组,里面装有partition 1~n的描述符,每一个分区的描述符如下:
Backup Partition Table
Backup partition table和Primary partition table的内容完全相同,它只是前面那张表的一个备份,它位于磁盘的最后一个block。
如果primary表发生损坏,软件可以去读取backup表来启动系统并对primary表进行restore。
注意
如果软件需要更新以上两张表,必须先更新backup,再更新primary,header和entry的更新顺序没有规定,用户可以随意。
- EFI下的Guid Partition Table Format
- GUID partition table (part of EFI) vs MBR (master boot record)
- GUID Partition Table
- GUID Partition Table 介绍
- GUID Partition Table(GUID磁盘分区表):GPT
- GUID partition table, GPT 磁盘分区表(在Linux中添加一块大于 2TB 的新磁盘)
- efi下的的shell
- C# Guid format說明
- Windows下GUID 的使用
- Sqlserver的partition table的switch table的前提条件
- WARNING: GPT (GUID Partition Table) detected on '/dev/sdd'! The util fdisk doesn't support GPT. Use
- efi 下安装成功fedora24 不能引导的解决办法
- php下的GUID用法,生成随机数
- GUID分区表 (GPT GUID Partition …
- ORACLE 分区表 PARTITION table
- Oracle PARTITION TABLE 分区表
- Oracle List Partition Table
- 磁盘分区 partition table
- 特征值与特征向量概念
- x509及其ASN.1表示法
- DataGridView(自定义表格)
- VoIP基本原理与发展历程(1)
- Set是如何实现“没有重复元素”
- EFI下的Guid Partition Table Format
- 动态sql语句基本语法
- VoIP基本原理与发展历程(2)
- CISCO路由器限速方法
- Oracle重做日志文件
- java学习过程
- 析构函数不能抛出异常
- 我的新博客的地址cnblogs
- 微软的XML解析器