pub fn is_gpt_disk(device: &impl DirectBlockDevice) -> boolExpand description
Check if a device uses GPT (GUID Partition Table) instead of MBR.
This function checks if the device contains a GPT protective partition in its MBR, which indicates that the device uses GPT partitioning instead of traditional MBR. GPT is the modern replacement for MBR and supports larger disks and more partitions.
§Arguments
Device- The storage device to check
§Returns
true- Device uses GPT partitioning (has protective MBR)false- Device uses traditional MBR or cannot be read
§Examples
extern crate alloc;
use file_system::{MemoryDevice, mbr::{Mbr, PartitionKind, is_gpt_disk}};
let device = MemoryDevice::<512>::new(4 * 1024 * 1024);
// Create an MBR with GPT protective partition
let mut mbr = Mbr::new_with_signature(0x12345678);
mbr.add_partition(PartitionKind::GptProtective, 1, 0xFFFFFFFF, false).unwrap();
mbr.write_to_device(&device).unwrap();
if is_gpt_disk(&device) {
println!("Device uses GPT partitioning");
} else {
println!("Device uses MBR partitioning");
}