标签: drivers

如何保留内存数据结构以便以后在单元测试中使用它

在我的代码中,我偶尔会传递各种字节数组等.此外,它们可能是托管对象.我想保留这些内存结构,以便我可以针对具体示例编写测试用例.

我的标准方法是点击断点,使用调试器查找各种值,然后将它们新建或将单元测试程序集中的文件或内容嵌入为资源.有时,这涉及编写我自己的组件交互抽象,以使我的代码依赖于可以新建的东西.

有没有更简单的方法?我无法想象这是新事物.假设你有一个消防中央单位与之交流.您可以使用它来生成数据报,您希望为单元测试创​​建数据报.此外,当您遇到由于某个未记录的方式而导致的错误,即fire central正在组成其复合消息时,您希望记录并保留这些示例.

理想情况下,我希望能够将所有交互记录到我的代码中,然后选择各种播放方案.但是从调试器中获取内存中的各种数据报示例并将其重新置于单元测试中会对我有所帮助.

有什么建议?

c# tdd unit-testing drivers

5
推荐指数
1
解决办法
119
查看次数

RNDIS小工具无法启动

我在TI Davinci dm365板上构建了带有Linux内核的摄像机.

该主板支持RNDIS驱动程序,因此我的相机可以在Windows中"即插即用".这是某种"USB以太网"网络适配器.

Windows加载RNDIS驱动程序usb8023.sys以与我的硬件进行交互.

当我插入多个摄像头时,地狱会松动,我会遇到很多问题,有时我的所有USB端口都会停止工作,但大多数时候,两个摄像头中的一个停止工作.

我已经尝试导入旧的驱动程序,复制usb8023.sys并为每个凸轮加载一个单独的驱动程序,没有运气.我检查并仔细检查了我的IP设置.

windows drivers texas-instruments davinci rndis

5
推荐指数
1
解决办法
1452
查看次数

未连接硬件时卸载Windows驱动程序

我正在开发一个Windows C++应用程序,用于驱动插在USB上的电机控制器.该控制器依赖于Ftdibus驱动程序,它在我的电脑上运行良好.然而,在测试计算机上它曾经工作但是因为我在插入控制器后立即搞砸了Ftdi驱动程序,我得到了一个BSoD(提到Ftdibus).我想清理驱动程序,但是:

  • 它们没有出现在Windows"卸载程序"中
  • 我无法右键单击设备管理器中的控制器并选择"卸载",因为我无法插入控制器(BSoD)
  • 我尝试了nirsoft 工具,它有一个卸载设备的选项,但它不起作用

我很无能,我怎么能清理那个乱七八糟的东西?

PS:如果有人有关于驱动程序如何绑定USB端口号的文档,我会喜欢阅读这个主题

windows hardware drivers uninstall

5
推荐指数
2
解决办法
3万
查看次数

如何在RHEL 6/Linux上设置Oracle ODBC驱动程序

我需要在RHEL 6上设置Oracle ODBC驱动程序以连接到驻留在远程Windows机器上的Oracle数据源.

我已经采取了以下步骤:
[1]安装oracle-instanceclient-basic
[2]设置环境变量:ORACLE_HOME和LD路径
[3]创建/etc/oracle/TNSnames.ora并配置但是没有正确设置

最初,我收到了错误, "Connect failed because target or object does not exist"

然后,我ORACLE_SID = DB_NAME在TNSnames.ora文件中设置:

但是,这没有解决问题,我现在收到一条新的错误消息: "TNS: net service name is incorrectly specified"

linux oracle odbc drivers rhel6

5
推荐指数
1
解决办法
4万
查看次数

驱动程序如何成为内核的一部分?

有人告诉我,对于大多数操作系统,驱动程序成为内核的一部分。这是怎么发生的?内核是否自己反编译,添加驱动程序,然后重新编译?还是内核的驱动程序插件?驱动程序甚至是他们自己的独立程序吗?

operating-system drivers kernel

4
推荐指数
1
解决办法
740
查看次数

Unix中的键盘设备

如何捕获所有用户输入,一次读取一个字节?

我做了这个编码,但它不起作用

if ((fd = open("/dev/char", O_RDONLY) != 1) {
    tty = open("/dev/tty", O_RDONLY);
    tcsetattr(0, TCSANOW, &orig_info);
    read (fd, &buf, sizeof(char));
}
close(fd);
Run Code Online (Sandbox Code Playgroud)

我希望终端等待输入,但事实并非如此.

linux keyboard drivers device

4
推荐指数
1
解决办法
1万
查看次数

Linux内核 - 时钟框架 - clk_prepare/unrepare的作用是什么?

我正在阅读以下关于Linux内核中存在的新时钟框架的文章.

http://lwn.net/Articles/489668/

  • 我不清楚的是,新API的clk_prepare/nothingpare的使用是对clk_enable/disable API的补充.
  • 还提到虽然可以从原子上下文调用API的clk_enable/disable,但这不适用于clk_prepare/unrepare(可以休眠).为什么这种功能和行为分离?
  • 我很想知道我们需要准备/取消它们的时钟是什么?

谢谢,

〜VJ

drivers clock linux-device-driver linux-kernel

4
推荐指数
1
解决办法
2147
查看次数

如何在 Linux 中通过 USB 转 RS232 线与设备通信?

我最近有一个关于通过 RS-232 线与特定设备进行通信的项目。由于我的计算机没有串行端口,因此我使用 USB 转 RS232 线作为设备和计算机之间的中间设备。但我是 Linux 驱动程序的新手,所以我很难理解它的想法。

我在 Debian 下工作,其中有一个默认的工作驱动程序,我已经测试了硬件方面可以完成的所有操作,发现一切都很好。现在的情况是如何在 C 中向设备发送命令并接收相应的数据。我读过一些书,我认为也许将 USB 端口映射为 tty 设备会起作用。

我的思考方式正确吗?我有点困惑。我下载了“minicom”的源代码并阅读了其中的几行,但我仍然不太明白。请帮帮我。

linux usb drivers serial-port

4
推荐指数
1
解决办法
1万
查看次数

开始学习OpenGL.在现代Linux上,所有这些概念如何相关?

我开始学习OpenGL,因为那是我选择的硕士学位课程的一部分.在课堂上,加速3D图形在MS Windows上实现(实际上可能使用DX3d而不是OpenGL,不确定).但是,我已经使用Linux多年了,而且我很肯定它是正确的开发环境,当你可以自由选择时.但是,据我所知,加速3D,特别是驱动程序和硬件支持,在Linux上是一团糟.所以,请帮助我将以下一堆概念组织成一个合理的结构,因为这是我能看到和理解事物的唯一方法.

  1. 首先,有司机.NVIDIA和AMD专有,加上"nouveau"和一些开放的Radeon驱动程序,以及一个实验性的AMD开放但仍然是正式的.这似乎很清楚.

  2. 其次,有一种叫做"台面"的东西.那是什么?它是仅为免费驱动程序定义的,它是免费驱动程序项目的一部分,还是定义和要求,无论使用何种驱动程序?

  3. 在2)的开发中,究竟什么是"opengl"以及它包含在哪里:台面,驱动程序,还有什么?它可以是专有的吗?

  4. 最后,鉴于上述三点,"在现代Linux系统上获取和安装OpenGL意味着什么?

linux opengl api drivers

4
推荐指数
1
解决办法
132
查看次数

微型过滤器与文件系统过滤器

我知道有两种类型的过滤驱动程序,旧的文件系统过滤器和较新的微型过滤器。

我一直在查找有关这两个版本的信息,看起来当前版本的 Windows 仍然支持这两个版本。我找不到任何关于它是否会保持这种状态的可靠信息。我在 Microsoft 网站上看到鼓励开发人员将旧版过滤器移植到微型过滤器,但我没有找到任何有关弃用旧系统(或计划弃用它)的信息。

然而,在一些博客上,我读到它们应该被移植,并且微软已经表示这将在未来强制执行,但我还没有找到该声明的来源。

有人能解释一下吗?

我自己并没有开发新的驱动程序,我有一个特定的遗留过滤器,想知道它是否可以安全使用。我不想使用这个,微软突然决定在下一个版本的 Windows 或其他版本中只支持微型过滤器

windows drivers minifilter

3
推荐指数
1
解决办法
1912
查看次数