; 首先说明一点,amo没作过相关的东西,现在也没时间测试,所说的只限于讨论,或者
只是一种猜测估计。是不是这样,只有与其作者探讨一下或自己去测试一把了。
对softice或trwin,要显示字符自然是不能用textout之类的API了,要显示字符怎么办?
直接写屏或用int10了。而且对这种程序,过于花哨的界面只会加大程序的不稳定性。
在windows这个环境下,os控制了所有资源,一般的应用是在cpu3级下被执行,为了调试
这些应用或os本身,程序自然要处于较高级别。
而我们知道, 把程序放在CPU的0级特权下执行,就可以直接访问硬件,还有执行一些
特权指令。这样与os处于同一级别,就可以观察调试os代码,调试一般应用更不是问题了。
对于具体的softice和trwin,它们的实现是不完全相同的,softice更为霸道,它控制了所有
的系统资料,似乎它的级别比windows更高,而trwin则真的是与os同级。
(呵呵,好象跑题了
如上面所述,要处于较高级别,在windows下只有用Vxd,sys(后缀名无所谓,可能是.exe)
的办法了。同时,在Vxd,sys中,要显示的话,也没法调用textout。 因为这已经不是window
的世界了,没有窗口的概念了。
所以:
>为什么有0级权限就可以显示字符界面
不是有...就...,而是在...只有...;-)