编写设备驱动程序

测试 I/O 控制接口

要测试 ioctl 命令,请额外创建一些可通过用户应用程序调用的 ioctl 入口点。确保正确地复制参数。使用 ddi_copyin(9F)ddi_copyout(9F) 例程在用户地址空间来回传输数据。然后编写一个应用程序,以验证呈现、滚动和光标行为。这样,在您开发和测试这些 ioctl 命令时,它们就不会影响您的控制台。

为确保 ioctl 命令正常工作,请引导系统,然后登录。检查在执行 prstat(1M)、ls(1)、 vi(1) 和 man(1) 等命令时,是否能够得到预期的行为。

执行以下脚本以验证 ANSI 颜色是否正常工作:

#!/bin/bash
printf "\n\n\n\e[37;40m             Color List       \e[m\n\n"
printf "\e[30m Color 30 black\e[m\n"
printf "\e[31m Color 31 red\e[m\n"
printf "\e[32m Color 32 green\e[m\n"
printf "\e[33m Color 33 yellow\e[m\n"
printf "\e[34m Color 34 blue\e[m\n"
printf "\e[35m Color 35 purple\e[m\n"
printf "\e[36m Color 36 cyan\e[m\n"
printf "\e[37m Color 37 white\e[m\n\n"
printf "\e[40m Backlight 40 black \e[m\n"
printf "\e[41m Backlight 41 red   \e[m\n"
printf "\e[34;42m Backlight 42 green \e[m\n"
printf "\e[43m Backlight 43 yellow\e[m\n"
printf "\e[37;44m Backlight 44 blue  \e[m\n"
printf "\e[45m Backlight 45 purple\e[m\n"
printf "\e[30;46m Backlight 46 cyan  \e[m\n"
printf "\e[30;47m Backlight 47 white \e[m\n\n"