草庐IT

Linux驱动

全部标签

Java:在 Windows 上获取设备/驱动器名称

这个问题在这里已经有了答案:Acquiringdrivenames(asopposedtodriveletters)inJava(3个答案)关闭5年前。我可以使用File.listRoots()获取插入计算机的驱动器列表,但我只能获取驱动器号。如何获得Windows资源管理器中显示的驱动器的实际名称(例如“本地磁盘”、“DVDRW驱动器”等)?

windows - 如何使用虚拟音频设备驱动程序在 RDP session 中将音频从服务器重定向到客户端?

我想创建一个应用程序,用于将音频从服务器重定向到客户端,并在通过服务器上的播放器播放歌曲时通过客户端的扬声器播放音频如何通过创建新的虚拟音频设备驱动程序来实现?如何将虚拟音频设备设置为每个用户模式session的默认设备?如何从虚拟音频设备驱动中获取音频流并将其写入RDP虚拟channel?我需要同时支持WindowsXP和Vista。我们将不胜感激。谢谢。 最佳答案 这已内置于RDP5.1版及更高版本(WindowsXP)中。请参阅此链接了解如何激活它(该链接适用于Windows2008Server,但它也适用于早期版本的Wind

windows - 在 EMC Celerra 上的 Linux 和 Windows 之间共享的文件设置权限

我有一个在Windows和Linux客户端之间共享的EMCCelerra文件系统。Windows客户端上的用户A创建一个目录和一组文件,Linux客户端上的用户B将修改和/或删除这些文件;但是文件和目录除了原始所有者之外没有任何人的写权限。如果这是在LinuxNFS共享上,我可以使用umask设置权限以允许组写入权限。有没有办法让Windows客户端在创建文件时设置正确的权限?或者有没有办法在EMCCelerra上执行此操作?我可以编写一个脚本来在Linux端执行chmod,但我想尽可能避免这种情况。谢谢,JP20036 最佳答案

windows - 为什么设备驱动程序会导致页面错误?

我有一个Windows控制台应用程序,它使用并行IO卡进行高速数据传输。(通用标准HPDI32ALT)我的进程在用户模式下运行,但是,我确信在设备API后面的某个地方有一些内核模式驱动程序事件(PCIDMA传输、读取设备状态寄存器等)。工作模型大致是这样的:在启动时:我从API请求一个指向IO缓冲区的指针。在我的主循环中:阻止API等待设备缓冲区中的空间(低水位线)用传输数据填充IO缓冲区通过将指向IO缓冲区的指针传递给设备开始传输(在此期间,API使用PCI总线上的DMA将数据移动到卡)阻止API等待IO完成该应用程序似乎在长时间内以适当的数据速率和持续的吞吐量正常工作,但是,当我在

java - 无法在 linux 上解析 xhtml 文档

我正在尝试使用DocumentBuilder解析格式良好的xhtml文档,要求是我将解析xhtml文档并将内容附加到xhtml文档的正文部分。为了解析文档,我使用下面的代码org.w3c.dom.Documentdocument=null;DocumentBuilderFactoryfactory=DocumentBuilderFactory.newInstance();factory.setNamespaceAware(false);DocumentBuilderbuilder=factory.newDocumentBuilder();document=builder.parse(f

Windows 内核驱动 Boot\winlogon 完成回调

当引导过程完成或用户登录时,我能否获得对内核驱动程序的事件回调? 最佳答案 简单的答案是否定的。长答案是肯定的,但为什么呢?我会回答第二部分,因为它更容易。您可以轻松注册以在启动任何进程时接收通知。对WindowsInternals的简短检查会告诉您,从Vista及更高版本开始,进程userinit.exe是任何给定用户session中要执行的第一个进程。对于第一部分,这会根据您对引导过程的定义而发生很大变化。是在加载GUI时吗?是电脑可以接收网络请求的时候吗?哪些网络请求(TCP/IP、SMB、RPC)重要吗?每个问题的答案都非常

windows - 我需要为 Windows 创建一个虚拟打印机驱动程序,它将通过另一个程序重定向请求

总结一下我的问题,我在一家使用激光制作贴在我们产品上的标签的公司工作。激光机附带了一个特定的标记软件,该软件具有一个API,我们将其与我们定制编写的软件一起使用来处理每个请求。现在,标记软件会保持打开状态,等待我们软件的请求,并会在请求时标记标签。我想改变这一切的运作方式。我想为激光制作一个虚拟打印机,它将接受打印请求并将该请求重定向到激光随附的标记软件。作为这个项目的一部分,我正在尝试对标记软件使用的文件结构进行逆向工程,以便我可以直接生成标签,然后只使用标记软件将它们发送到激光机。最终目标是扩大这种激光的有限使用范围,这样我就可以处理来自任何软件的打印请求。打印机驱动程序将用于限制

windows - Windows驱动程序可以访问进程的页表吗?

在Windows中,内核驱动程序可以执行诸如固定内存以备份虚拟地址范围(MMProbeandLockPages)之类的操作。但是我找不到一种方法来实际验证虚拟地址对特定进程是否有效。换句话说,内核驱动程序有没有办法检查给定的虚拟页面是否包含在给定进程的页表中? 最佳答案 如果驱动程序没有在进程上下文中运行,您必须先调用KeStackAttachProcess。然后,您可以在try/exceptblock中执行ProbeForRead或ProbForWrite。例如,请参阅WinDDK示例中src\general\ioctl\wdm\

c++ - 在 Windows 上编译+分发 Linux 代码

我有一个更大的代码在Linux中运行,用c++(c++11)和python编写并使用大量库(VTK、boost、pyqt、OpenGL)并编译为python扩展模块(和这些模块的插件)和纯python模块(主程序是python脚本)。代码是跨平台的(除了少数异常(exception),例如dlopen、gettimeofday可以通过#ifdef替换为Windows等价物)和编译器不可知(它编译为-ansi,以及一些特定于编译器的东西,如__attribute__,如果需要的话,希望也可以被替换)。我正在尝试在Windows上进行编译,但我完全不知道应该如何进行(我在Linux开发方面

java - 谁能解释 Windows (7 Pro N) 和 Linux ( Ubuntu 12-04) 之间的套接字吞吐量差异

在评估3rd方软件(使用NIO的Java框架)时,我们发现该框架在Windows上的吞吐量约为Linux上的50%。假设有一些影响Windows的JVM或操作系统设置,我们将开始测试跨两个平台的简单计算(Fibonacci、heapsort、strcat等)和对象构建。在所有情况下,操作系统都差不多。然而,当我们使用简单的ServerSocket和ClientSocket(java.netjdk1.7u5)执行吞吐量测试时,我们注意到Linux吞吐量可以高达Windows的10倍,尤其是对于小消息(100字节)。我们的直接假设是操作系统套接字发送/接收缓冲区大小不同,并且它们在吞吐量中