Presentation is loading. Please wait.

Presentation is loading. Please wait.

Tel : 69589584 同济大学软件学院 UEFI 与固件程序设计.

Similar presentations


Presentation on theme: "Tel : 69589584 同济大学软件学院 UEFI 与固件程序设计."— Presentation transcript:

1 Tel : 69589584 Email:wang.box@163.com 同济大学软件学院 UEFI 与固件程序设计

2 继续 返回 Legacy BIOS Interface  Legacy BIOS provides OS with I/O routines via x86 software interrupts –Normally for OS booting –Can also be used at runtime by legacy OSes (DOS, Windows 3.x, Windows 9X)  Typical software interrupts used by legacy OS loaders –INT 10h – Video display –INT 13h – Floppy/Hard disk I/O –INT 15h – Extended memory support, Report memory map, … –INT 16h – Keyboard input –INT 19h – Bootstrap loader –INT 1Ah – System date and time, PCI BIOS real mode interface

3 继续 返回  BIOS identifies all IPL(Initial Program Load) devices in the system and determines the boot order during POST –BAIDs (BIOS Aware IPL Device) –PnP ISA/PCI Cards  Legacy ISA/PCI cards may hook INT 19h to control the boot process  BIOS invokes INT 19h after POST to start booting OS  The INT 19h handler attempts to boot from IPL devices sequentially in the boot order, if failed then next  Boot flow when normally booting from hard disk –Hard disk is partitioned to up to 4 primary partitions so that multiple OSes can co-exist –The first sector (cylinder 0, head 0, sector 1) referred to as MBR (Main Boot Record) contains OS independent bootstrap code –INT 19h handler relies on INT 13h to read MBR into 0:7C00h –INT 19h handler verifies the validity of MBR –INT 19h handler transfers the control to the MBR bootstrap code by jumping to 0:7C00h Boot OS under Legacy BIOS

4 继续 返回 Hard Disk Partition and MBR Layout Legacy Master Boot Record

5 继续 返回 OffsetLength (byte) FieldDescription 01Boot Indicator 00 – inactive 80 - active 11Starting Head 21Starting SectorBit 0~5 sector number Bit 6~7 upper two bits of Starting Cylinder 31Starting Cylinder10-bit number, with a maximum value of 1023 41System IDDefines the volume type 51Ending Head 61Ending SectorBit 0~5 sector number Bit 6~7 upper two bits of Ending Cylinder 71Ending Cylinder10-bit number, with a maximum value of 1023 84Relative SectorsThe offset from the beginning of the disk to the beginning of the volume, counting by sectors. 124Total SectorsThe total number of sectors in the volume Hard Disk Partition and MBR Layout Partition Table Entry

6 继续 返回  Replicate itself to a memory range at lower address to make room for the coming OS bootstrap code  Parse the partition table to find the active partition  Load the first sector of the active partition to memory at 0:7C00h  Verify the validity of the sector as a bootstrap sector  Transfer the control to the OS bootstrap sector by jumping to 0:7C00h  OS specific bootstrap process starts What Does MBR Do? Refer to UEFI Specification Revision 2.2 section 5.2

7 继续 返回 UEFI Boot Mechanisms  File level boot –EFI_SIMPLE_FILE_SYSTEM_PROTOCOL –EFI_LOAD_FILE_PROTOCOL  Boot options are defined via Boot#### variables –Two types of boot options  UEFI OS boot loaders  Other UEFI applications –System firmware and OS installer can set to a known set of boot options  UEFI boot manager attempts to load and execute boot options in the order defined by the BootOrder variable –If a boot option failed and the device path points directly to an EFI_SIMPLE_FILE_SYSTEM_PROTOCOL device and specify no exact file, then search for a default application to boot per removable media boot behavior  If no valid boot options are present, a default behavior is defined –Enumerate all removable media devices followed by all fixed media devices –Removable media boot behavior applies to the devices support EFI_SIMPLE_FILE_SYSTEM_PROTOCOL –Otherwise, attempt to boot the device via the EFI_LOAD_FILE_PROTOCOL  Removable media boot behavior –\EFI\BOOT\BOOT{machine type short-name}.EFI

8 继续 返回 EFI GUIDed Partition Table (GPT) Partitioning Scheme

9 继续 返回 GPT Advantages over MBR Partition Table  64-bit Logical Block Addressing.  Supports many partitions.  Uses a primary and backup table for redundancy.  Uses version number and size fields for future expansion.  Uses CRC32 fields for improved data integrity.  Defines a GUID for uniquely identifying each partition.  Uses a GUID and attributes to define partition content type.  Each partition contains a 36 Unicode character human readable name.

10 继续 返回 UEFI System Partition  Persistent store on large mass storage media types for storing UEFI OS boot loader images, drivers/applications to extend platform firmware capabilities and other data files  Infrastructure to increase platform value-add without significantly growing the need for nonvolatile platform memory  Place can be shared by firmware developers, OEMs, OSVs and third parties  Based on FA32 file system  Identification –Legacy MBR partitioning scheme: new partition type 0xef –GPT: C12A7328-F81F-11d2-BA4B-00A0C93EC93B


Download ppt "Tel : 69589584 同济大学软件学院 UEFI 与固件程序设计."

Similar presentations


Ads by Google