驱动程序测试:UNDI API¶
测试原理¶
iPXE 通常在禁用中断的轮询模式下运行。驱动程序可以选择支持使用中断,但这不是必需的。
可以通过使用 iPXE 引导进入 iPXE 的 undionly.kpxe 构建来测试基于中断的操作。
准备¶
创建一个包含伪随机数据的 512MB 文件,例如使用:
dd if=/dev/urandom of=512mb bs=1M count=512
下载 undionly.kpxe。
把你的伪随机数据文件和 undionly.kpxe 都复制到本地网络上的一台 Web 服务器。
测试步骤¶
- 开始之前,确保网线已连接到提供 DHCP 服务器的网络,并且网络上有一台可以提供你的伪随机数据文件和
undionly.kpxe的 Web 服务器。 - 使用
ifstat确定你的网络接口名称(下文假定为net0)。 - 使用
dhcp net0打开接口并获取 IP 地址。 - 使用
chain下载并引导undionly.kpxe。 - 按
Ctrl-B进入undionly.kpxe提供的 iPXE shell。 - 使用
ifstat验证undionly.kpxe检测到了单个接口net0,其 MAC 地址正确,且使用undionly驱动程序。 - 使用
dhcp net0打开接口并发起 DHCP 请求。 - 验证
dhcp命令无错误完成。 - 使用
imgfetch下载伪随机数据文件。 - 使用
imgstat验证下载的文件大小正确。