草庐IT

Linux驱动

全部标签

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

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

c++ - 如何确定特定驱动器的类型?

对于获取CPU的硬件信息,我觉得有些菜鸟,所以我提出了这个要求:硬盘驱动器、CD/DVD/蓝光阅读器、软盘,如果可能的话还有USB。我一直在MSDNGetDriveType上寻找但似乎我不擅长搜索或者我不明白。有什么想法吗? 最佳答案 我不确定您对链接到的文档有什么不了解...该函数接受的唯一参数是您要获取其信息的驱动器的根目录(包括结尾的反斜杠)。该函数返回一个值,指示驱动器的类型。显示的图表给出了可能的返回值以及每个值的含义。例如:GetDriveType(_T("C:\\"))//returnsDRIVE_FIXEDifC:\

c++ - 从 Windows ffmpeg 0.52 迁移到 linux ffmpeg 0.61 代码错误。如何解决?

以前我在Windows上使用ffmpeg(我在某处找到的0.52版本)。现在我正在移植到linux和最新的ffmpeg。到目前为止,我在2行中有4个错误在这样简单的一行上:size=avpicture_get_size(pix_fmt,nWidth,nHeight);我得到:initializingargument1of‘intavpicture_get_size(PixelFormat,int,int)’C/C++Problem和invalidconversionfrom‘int’to‘PixelFormat’C/C++Problem在这么简单的线上avpicture_fill((A

python - 基于 expat 的 xml 解析脚本在 Linux 上不工作,在 Windows 上工作

我正在用python编写一组工具,以从交通模拟软件生成的一些xml文件中提取数据。由于生成的文件可能非常大,我使用xml.parsers.expat来解析它们。问题是,当我在工作时在WindowsXP机器上运行我的脚本时,它运行良好,但在家里,在Ubuntu10.10上,在同一个文件上,我收到以下错误:ExpatError:格式不正确(无效标记):第1行,第0列该文件最初是用utf-8编码的,标签中声明的编码是ascii,因此尝试将其更改为utf-8(或UTF8或utf8)但没有成功。由于没有BOM,我尝试编写它,但仍然没有成功。我还尝试用Unix换行符(CR)替换Windows换行符

windows - 插入USB设备时自动加载驱动程序

我在WindowsXP下使用受限用户帐户,在获取Adaptoid(最令人垂涎​​的N64Controller->USB适配器,因为它支持发送原始N64Controller命令+事实上它已经停产)才能顺利运行:安装时,随附的软件需要管理员权限才能加载驱动程序。据推测,通过向驱动程序的INF文件添加一些内容(wishna1.inf),可以安排在插入Adaptoid时自动加载驱动程序:问题是,什么东西?(如果驱动程序可以在任何尝试打开\Device\Wish_NA1时自动加载,或者甚至在每次启动时自动加载它,那也很适合我,真的,但是在插入时执行它似乎是正确的方式。)注意:我确实可以访问管理帐

windows - stdio 的 printf 和 Windows 驱动程序

我想在驱动程序代码(DDK)中使用“printf”,因此我包含了stdio.h。但是编译器说:errorLNK2001:unresolvedexternalsymbol__imp__printf有什么想法吗?我在某处看到这是不可能的——但这太糟糕了——我不敢相信。为什么我不能在内核代码中使用标准C例程?像printf这样的C函数来自一个静态的cstd.lib或什么AFAIK不是吗?为什么WDK会为我提供stdio.h? 最佳答案 Windows内核仅支持部分标准C运行时。特别是,不支持高级功能(如文件流、控制台I/O和网络)。相反,

在 Linux 和 Windows 中具有包含和排他性的 C++ 多线程函数

Linux我有两个函数:functionA和functionB这两个函数可以多线程运行,即:一次最多可以运行一个functionA一次可以运行多个functionBfunctionA和functionB是互斥的,即如果正在执行functionA然后functionB必须等到functionA完成,并且如果有functionB的任何实例正在执行,那么functionA必须等到functionB的allinstances完成。你能告诉我如何在Linux中使用pthread实现这个吗?我试了很多方法,但似乎不够清楚。Windows我如何使用C++在Windows中完成同样的事情?

windows - 如何使用默认程序从网络驱动器/路径打开文件?

在我的应用程序中,我想使用网络驱动器中的默认Windows程序打开文件(jpg、pdf、..)。我知道start,但它似乎不适用于网络路径。我尝试了以下命令,但我得到的只是Windows对话框,告诉我他不知道如何打开该文件以及我是想使用网络服务来请求程序还是手动选择。从cmd.exe(P:\是网络驱动器):cmd/c"start\server\path\to\image.jpg">cmd/c"startP:\path\to\image.jpg"文件的路径是正确的,在资源管理器中点击它可以正常工作。谢谢更新:我发现了问题。请参阅下面我的回答。 最佳答案

windows - Windows 上的 Linux pthread 可移植性

对于某个项目,我必须在pthread中使用静态互斥锁初始化器。但是我的库应该也可以在Windows上移植。pthread_mutex_tcsapi_mutex=PTHREAD_MUTEX_INITIALIZER;Windows上有相应的静态初始化程序吗?谢谢。 最佳答案 Pthreads-win32应该为这种结构提供很好的支持。但是我没有查过。 关于windows-Windows上的Linuxpthread可移植性,我们在StackOverflow上找到一个类似的问题:

windows - Linux 中是否存在内存泄漏?

这个问题纯粹是理论上的。我想知道Linux源代码是否可能存在内存泄漏,考虑到毕竟是Linux来处理每个程序的内存,他们是如何调试它的?我显然明白Linux是用C语言编写的,必须自己处理malloc和free。我不明白的是我们如何测量操作系统的内存泄漏。请注意,这个问题不是特定于Linux的;它还解决了Windows和MacOSX(darwin)中的相应问题。 最佳答案 非常频繁的非主流驱动程序和暂存树有内存泄漏。遵循LKML,您可以偶尔看到针对处理SKB列表的极端情况的网络代码错误的修复。由于内核的性质,大部分工作是代码审查和重构,