要测试 lyr 驱动程序,请向 lyr 设备写入一条消息,并验证该消息是否显示在 lyr_targ 设备上。
在本示例中,lyr_targ 设备是安装了 lyr 设备的系统的控制台。
如果要查看的显示屏幕也是安装了 lyr 设备的系统的控制台设备的显示屏幕,请注意,向控制台写入将会破坏显示屏幕上的信息。控制台消息将显示在窗口系统范围以外。测试 lyr 驱动程序之后,需要重画或刷新显示器。
如果要查看的显示屏幕不是安装了 lyr 设备的系统的控制台设备的显示屏幕,请登录或以其他方式查看目标控制台设备的显示屏幕上的信息。
以下命令将一条很短的消息写入 lyr 设备:
# echo "\n\n\t===> Hello World!! <===\n" > /devices/pseudo/lyr@1:node |
目标控制台上将会显示以下消息:
console login: ===> Hello World!! <=== lyr: lyr_open: opened target '/dev/console' successfully on inst 1 lyr: lyr_close: closed target successfully on inst 1
执行 lyr_open() 和 lyr_close() 时所显示的信息来自在 lyr_open() 和 lyr_close() 入口点中执行的 cmn_err(9F) 调用。
以下命令将一条较长的消息写入 lyr 设备:
# cat lyr.conf > /devices/pseudo/lyr@1:node |
目标控制台上将会显示以下消息:
lyr: lyr_open: opened target '/dev/console' successfully on inst 1 # # Copyright 2004 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # #pragma ident "%Z%%M% %I% %E% SMI" name="lyr" parent="pseudo" instance=1; lyr_targ="/dev/console"; lyr: lyr_close: closed target successfully on inst 1
要更改目标设备,请编辑 /usr/kernel/drv/lyr.conf,并将 lyr_targ 属性的值更改为指向其他目标设备的路径。例如,该目标设备可以是在本地终端执行 tty 命令后的输出结果。例如,此类设备路径可以是 /dev/pts/4。
在将驱动程序更新为使用新目标设备之前,应确保 lyr 设备未被使用。
# modinfo -c | grep lyr 174 3 lyr UNLOADED/UNINSTALLED |
使用 update_drv(1M) 命令重新装入 lyr.conf 配置文件:
# update_drv lyr |
再次向 lyr 设备写入一条消息,并验证该消息是否显示在新的 lyr_targ 设备上。