串行I/O协议用于与uart风格的串行设备通信。这些端口可以是PC-AT系统中的标准UART串行端口,连接到USB接口的串行端口,或者可能是任何基于字符的I/O设备。串行I/O协议可以从通用设备控制字节I/O样式的设备,到具有UART等特性的设备。因此,许多串行I/O特性都是可选的,以允许没有UART控制的设备的情况。这些选项中的每一个都在特定的串行I/O函数中调用。所有uart风格的串行设备接口的默认属性是:115200波特,1字节接收FIFO,每个字符1,000,000微秒超时,无奇偶校验,8个数据位和1个停止位。流量控制是使用该协议的软件的职责。硬件流控制可以通过使用GetControl()和SetControl()函数(将在下面描述)来监视和断言流控制信号来实现。通过在串行数据流中根据需要插入XON和XOFF字符,可以在软件中实现XON/XOFF流控制算法。如果要从串行设备读取大量数据,必须特别小心。由于UEFI驱动是轮询模式驱动,在串行设备上接收的字符可能会丢失。使用该协议经常检查新数据以确保没有字符遗漏是软件的责