jjzjj

device-driver

全部标签

c++ - 测量由我的程序引起的设备驱动程序 CPU/IO 利用率

有时代码可以利用设备驱动程序直到系统无响应。最近我优化了一段WIN32/VC++代码,导致系统几乎无响应。但是,CPU使用率非常低。原因是1000次GDI对象(钢笔、画笔等)的创建和销毁。一旦我重构代码以仅创建一次所有对象-系统再次变得响应。这让我想到了一个问题:对于给定的程序/功能/代码行,是否有一种方法可以测量设备驱动程序(GPU/磁盘/等)的CPU/IO使用情况? 最佳答案 您可以使用SysInternalsUtilities中的各种工具(现在是Microsoft产品,请参阅http://technet.microsoft.c

c - Windows Driver 时间戳函数

我正在修改现有的Windows内核设备驱动程序,我需要在其中捕获时间戳。我打算使用time.h库并调用clock()函数来获取它,但是在windowsvisualstudio下,链接失败了。所以我把它当作我需要在驱动程序库中工作的一种方式。我找到了以下函数,KeInitializeTimer和KeSetTimerEx,但如果我计划设置定时器并在其上唤醒,则会使用这些函数。我真正需要的是能给我一个时间戳的东西。有什么想法吗? 最佳答案 我正在用答案更新我的问题,以便其他人从我的发现中受益。要获得时间戳,您可以使用KeQueryTick

windows - SysInternals WinObj 设备列表机制

SysInternals的WinObj可以列出所有设备对象。我想知道它如何列出设备。有没有我们可以阅读的开源代码?(或代码片段)我应该知道的最重要的功能是什么? 最佳答案 WinObj使用NT系统调用NtOpenDirectoryObject和NtQueryDirectoryObject。不需要驱动程序或内核代码。您不会看到导入,因为这些NT函数是通过LoadLibrary/GetProcAddress加载的。您不必枚举整个对象命名空间。如果您对设备对象感兴趣,请使用"\Device"调用NtOpenDirectoryObject,

r - R : can only copy from 'windows' devices 中的 savePlot() 错误消息

在Windows8系统上使用RStudio时出现以下错误消息:ErrorinsavePlot(filename="123",type=c("png"),device=dev.cur()):canonlycopyfrom'windows'devices如果我在savePlot之前的行中写入windows(),错误消息就会消失,但绘图是“空的”。如果我使用R而不是RStudio,则问题不存在。除了“不使用RStudio”还有其他解决方案吗?最好的问候编辑:以下是更多原始代码:#--------------createplotx我在哪里以及如何分别使用png和win.metafile函数?它

以编程方式安装 Windows NDIS 中间 (IM) 驱动程序

我正在学习WindowsNDIS中级(IM)驱动程序开发。我在安装时遇到问题。我总是需要手动安装它。我的问题是如何以编程方式安装NDIS中间(IM)驱动程序问候纳瓦尼思 最佳答案 我相信在WinDDK中有一个如何执行此操作的示例。只需查看NDIS示例代码,特别是(如果我没记错的话)NDISPassthru驱动程序有安装程序代码。 关于以编程方式安装WindowsNDIS中间(IM)驱动程序,我们在StackOverflow上找到一个类似的问题: https:/

Windows 设备驱动程序嗅探/调试

我最近买了一台带触摸板的笔记本电脑,但它不能在Linux下完全工作。所以我想我可能会在Windows下监听什么数据发送到PS2Controller(IO端口60),并相应地更新Linux驱动程序。你知道我可能会使用什么工具吗? 最佳答案 PerisoftBushound-昂贵但非常有用。 关于Windows设备驱动程序嗅探/调试,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/58

windows - 在内核空间使用 VC intrinsic

我的问题是当头文件包含在SDK中(从VC10安装)并且我用来编译驱动程序的WDK不了解时,如何在内核空间(在Windows上)使用内部函数这个文件。当我#include一切正常,但是当我开始编译时,我得到了errorC1083:Cannotopenincludefile:'intrin.h':Nosuchfileordirectory我尝试将适当的文件复制到WDK目录,但没有成功。我知道我可以开始编写内联汇编,但老实说我想避免这样做,因为有内在支持,我只是不知道如何访问它。 最佳答案 WDK目录中缺少一些较新的header。只需将声

windows - 访问设备配置空间-win内核PCI设备

我正在编写获取pci设备的方法,以编程方式给定供应商ID、设备ID(就像Linux内核中的pci_get_device一样)。为此,我需要获取设备对象配置。我从这里读到同样的内容:http://msdn.microsoft.com/en-us/library/windows/hardware/ff558707(v=vs.85).aspx现在为了测试这个,我制作了假驱动程序-服务安装框架,它将安装我的I/O设备驱动程序,在DriverEntry中我可以测试这个PCI功能。但是操作系统因irql_not_less_or_equal而崩溃,在irp=IoBuildSynchronousFsd

c++ - 从设备实例路径字符串中获取设备实例 DWORD

我得到一个像这样的设备实例路径L"\\\\?\\USB#VID_0403&PID_6001#6&2cc2d230&0&2#{219d0508-57a8-4ff5-97a1-bd86587c6c7e}"来自IWDFRemoteInterfaceInitialize::RetrieveSymbolicLink.但是对于CM_Get_Parent我需要让我发疯的设备的DEVINST/DWORD。例如我试过instancePath=L"\\\\?\\USB#VID_0403&PID_6001#6&2cc2d230&0&2#{219d0508-57a8-4ff5-97a1-bd86587c6c7

android - Appium Android Windows : driver. findElement(By.name (""))不能连续工作

WebElementusername=driver.findElement(By.name("username"));username.sendKeys("test");WebElementpassword=driver.findElement(By.name("password"));password.sendKeys("test");WebElementloginBtn=driver.findElement(By.name("Login"));loginBtn.click();WebElementbackBtn=driver.findElement(By.tagName("Butt