
Window Mobile开发
cpuwolf
Wrote a complete Unix-like operating system which included preemptive multitasking, a non-trivial filesystem, interrupt-driven I/O, and signals
. 从事ARM嵌入式开发多年,bootload,kernel,driver都有较深的理解。
展开
-
到底如何抓取Windows OS event trace log
我列举了一些可以用的命令,需要管理员权限运行logman query providerslogman query providers "Microsoft-Windows-Kernel-Acpi"logman create trace acpilog -p "Microsoft-Windows-Kernel-Acpi" 0xffffffffffffffff 0x4 -o C:\userdata\github\install\acpi.etllogman start acpiloglogm原创 2022-03-03 20:00:00 · 942 阅读 · 0 评论 -
Windows Mobile 6 Standard/Classic/Professional开始支持开机动画
Windows Mobile 5 Pocket PC都不可以制作开机动画。但是这个限制终于被打破。Windows Mobile 6开始支持。不过微软document没有对此有过多的解释。就目前而言,想 show动画必须自己写动画引擎,微软没有现成的。注册表[HKEY_LOCAL_MACHINE]/System/Startup/1下面Dll : STRINGDuration : DWORDdll需要原创 2008-09-25 12:50:00 · 1975 阅读 · 3 评论 -
memory到底是怎么计算出来的
Pages Size (bytes) Size (MB) AddressPhysical RAM 13924 57032704 54.39 Kernel Prealloc.原创 2008-07-15 16:36:00 · 2601 阅读 · 0 评论 -
WinCE 5 kernel thread priority真的很厉害
Normal07.8 磅02falsefalsefalseMicrosoftInternetExplorer4<!-- /* Font Definitions */ @font-face {font-family:宋体; panose-1:原创 2008-07-10 10:55:00 · 3048 阅读 · 0 评论 -
Windows Mobile驱动中安全的处理IoControl
我们有时并不希望驱动中的iocontrol可以被任意应用程序调用,因此可以在Iocontrol中加一些签证的验证来确保能call进来的程序都是“自己人”。下面是一段例子: if (CeGetCallerTrust() != OEM_CERTIFY_TRUST) { RETAILMSG(ZONE_ERROR, (L"ERROR: : "原创 2007-11-08 20:16:00 · 2097 阅读 · 0 评论 -
WINDOWS窗体字体略微修改
在VC编程中,我们常常想改变窗体的字体,如加下划线,斜体等等,这些操作并不是使用全新的字体,只是在窗体原有字体的基础上,做略微修改。在窗体初始化时,windows会调用WM_SETFONT,这里给我们机会取得默认字体信息。 case WM_SETFONT: holdfont=(HFONT)wParam; GetObject(holdfont,sizeo原创 2007-10-25 12:23:00 · 1409 阅读 · 0 评论 -
Windows Mobile 5 虚拟内存空间危机
虚拟内存空间这个概念我们常常听见,也有很多人能说出个一二。但是其实真正能理解这个概念的人并不多。今天就以Windows Mobile 5这个嵌入式操作系统理解一下什么叫Virtual Memory Space。Windows Mobile 5的虚拟内存模型如下图:<v:shapetype id="_x0000_t75"coordsize="21600,21600" o:spt="75"原创 2007-06-18 16:28:00 · 1851 阅读 · 0 评论 -
WinCE调试DebugBreak
DebugBreak()这个函数是WinCE使用的调试函数。在上,它其实是只是一条机器指令。反汇编后得到0xE600010,这正是指令集中的undefined instruction。自然它会引起CPU的异常处理,此时也就给了debugger抓住异常的机会。之后的调试就顺理成章的开始了。可是不过此时debugger没有打开,windows如何处理呢?这个程序会崩溃?强制退出?其实windows原创 2007-08-30 10:48:00 · 1617 阅读 · 0 评论 -
微软引起的while不归路
如果你是windows mobile的驱动程序开发人员,又恰好写了类似的这样一句话。while(dev->devState!=5);说明一下,dev是个结构体指针。你希望等待它的成员变量变成5,继续执行。同时有可能你在中断服务程序中改变这个成员变量的值。哈哈!我幸运的告诉你你已经进入了“死循环”,永远跳不出去啦。这是个编译器优化产生的问题,看看编译器产生的汇编片段。原创 2007-05-08 18:22:00 · 1596 阅读 · 3 评论 -
Windows Mobile bus driver的角色不可小看
Windows Mobile的驱动程序程序实际是一个树状结构。Device.exe负责加载几乎所有的驱动程序,而驱动程序的各种信息是存在于注册表里面。在系统启动阶段,device.exe是不知道有多少驱动是要加载的。他只是找到bus driver,然后由它继续加载所有的驱动,所以bus driver是很重要的驱动程序,是桥梁驱动。注册表中,HKEY_LOCAL_MACHINE/Drivers的原创 2007-07-26 10:36:00 · 1590 阅读 · 0 评论