UEFI Boot Flow 系列之 BDS Phase

BDS: Boot Device Select

 BDS阶段的任务:

1. Initialize console devices base on the ConIn, ConOut and StdErr environment variables.

2. Attempt to load all drivers listed in the Driver#### and DriverOrder environment variables.

3. Attempt to boot from the boot selections list  in the Boot#### and BootOrder environment variables.

如果BDS 阶段不能contact a console device, load a driver, or boot a boot selection, 这就要求重新调用DXE Dispatcher。 这种调用是必须的,因为通过执行这个操作可能会发现additional firmware volumes, 它们可能包含管理Console Devices和Driver Devices所必须的DXE Driver。

一旦新发现的Firmware Volume上的DXE Drivers被Dispatched之后,控制权会再次交到BDS手中 。

Console Device:

Console Device是从Simple Text Output和Simple Input Protocol中抽象出来的。 在UEFI中,能够产生这其中一种或两种Protocl的Devide都被当作是Console Device。

Console Device的几种Type:

1. VGA Adapters, produce Simple Text Output Protocol.

2. Video Adapters, produce Simple Text Output Protocol.

3.Serial Terminal, produce both Simple Text Output Protocol and Simple Input Protocol.

4.Telnet, produce both Simple Text Output Protocol and Simple Input Protocol.

5. Remote Graphical Displays(HTTP), produce both Simple Text Output Protocol and Simple Input Protocol.

Boot Device的几种Type:

1.Devices that produce the Block I/O Protocol and are formatted with a FAT file system,  Disk Devices
2.Devices that directly produce the File System Protocol
3.Devices that directly produce the Load File Protocol                                                              Network Devices

阅读更多
个人分类: UEFI Boot Flow系列
想对作者说点什么? 我来说一句

UEFI中SEC到BDS阶段的启动流程图

2018年01月24日 66KB 下载

没有更多推荐了,返回首页

不良信息举报

UEFI Boot Flow 系列之 BDS Phase

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭