问题标签 [hotplugging]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
196 浏览

windows - XEN 上的 Windows 上的 VCPU 热拔出

我有一个运行 Windows Server 2008 R2 Datacenter 版本的 XEN 管理程序。我可以使用以下命令将 Windows 2008 的 VCPU 热插拔到四个 VCPU:

但我无法使用以下任何命令从其中热拔出 VCPU:

如果执行了上述任何命令,则 Windows 2008 将显示一个弹出窗口,上面写着:“AMD Opteron(TM) 处理器 6234 设备不可移动且无法弹出或拔出”

Windows 2008 不支持热拔出 VCPU 还是 XEN 不支持?有谁能够帮我?

0 投票
1 回答
1857 浏览

linux - Linux上PCIe的重枚举和热插拔

我正在使用通过电缆连接到 linux RH6.4 机器的 PCIe 设备,我需要强制 linux 重新枚举 PCIe 设备(开机后)而不重新启动机器。

目前仅在重新启动后进行枚举。我尝试了以下但它不工作

echo "1" > /sys/bus/pci/rescan

任何想法谢谢

0 投票
1 回答
5772 浏览

linux - 在 Linux 中热插入设备时检测设备的存在

我在熊猫板上运行 SPI代码,我想知道代码中的哪个函数负责在设备热插拔时检测设备。

有嵌入式系统、Linux 设备驱动程序和/或 spi 背景的人可以回答我的问题吗?

0 投票
1 回答
1764 浏览

linux - pci_Driver.probe 未被调用

我开始为通过笔记本电脑的 PCIe 扩展槽连接的 PCI 设备开发 Linux 设备驱动程序。

在启动时,一切正常。但是,我正在尝试在线获得基本的 Hotplug 支持。当我弹出卡时,我可以看到 (in dmesg) 调用了正确的删除内容。但是,当重新插入卡时,什么也没有发生。如果我手动移除模块,然后插入卡(或开机后插入卡),那么我可以看到模块init被调用,但没有probe。此外,该设备不会出现在lspci输出中。

但是,如果 Iecho 1 > /sys/bus/pci/rescan那么它出现在lspci输出中,但模块无法加载并出现错误 ( pci_enable_device failed with code -22)。

有什么想法可以从哪里开始诊断?执行失败.probe是真正让我感到困惑的地方。

我应该提到这是一个连接在这里的 FPGA 板,所以设备本身可能有问题,但我仍然希望探针运行,然后稍后会出现奇怪的错误而失败。

0 投票
1 回答
245 浏览

linux - 在 linux 中添加设备后,udev 规则不起作用

这是我在 /etc/udev/rules.d/70-persistent-cd.rules 中创建的一个简单规则:

run.sh 非常简单,它使用 insmod 和 rmmod 从内核中插入和删除模块。

现在我的外部驱动器已添加和删除,但 run.sh 无法运行。这里有什么问题?

我在这里查看了文档以及这个问题。我正在使用 Debian 机器。

0 投票
2 回答
1221 浏览

windows - 热插拔设备和可移动设备有什么区别?

我读过 USB HDD 是可热插拔但不可移动的,而 USB 闪存驱动器既可移动又可热插拔。在内部,Windows DEVICE_OBJECT 结构具有可以为可移动媒体(而不是可移动设备)设置值 FILE_REMOVABLE_MEDIA 的特性标志。此外,STORAGE_HOTPLUG_INFO 结构具有 Devicehotplug 布尔成员,表示设备是否可热插拔。你能用一些细节证明你的答案吗?

0 投票
0 回答
648 浏览

c++ - (C++) Wjwwood 串行库 - Windows 上的热插拔 COM 端口

我目前正在使用这个 C++ 库 - https://github.com/wjwwood/serialv-来读取 Windows 上的 COM 端口设备。

该应用程序似乎运行良好,但我遇到了一个奇怪的边缘情况。

当我插入设备时,在启动应用程序之前,应用程序将按预期工作,但是当没有可用设备时,我会轮询 COM 端口以获取新连接。如果找到新连接,则应用程序似乎会拾取热插拔设备,但流似乎以某种方式损坏。

但是,如果我“serial::close()”设备(请参见此处 - http://wjwwood.io/serial/doc/1.1.0/classserial_1_1_serial.html#afbe59407e718bc3d22ea4a67b304db6c)并重新打开它,设备将按预期工作.

为了解决这个问题,我目前捕获了 12 秒的 COM 端口流,如果它已损坏,我关闭并重新打开热插拔设备。

这感觉像是一个非常讨厌的黑客,但我也怀疑我不是唯一遇到这个问题的人。

有没有更有效的解决方案?或者这只是一个 RTFM 时刻?

0 投票
3 回答
83696 浏览

linux-kernel - 如何对 PCIe 总线进行 TRUE 重新扫描

我有一个 FPGA(就像大多数问这个问题的人一样),它在我的 Linux 内核进行初始 PCIe 总线扫描和枚举之后进行配置。您可以猜到,FPGA 实现了一个 PCIe 端点。

我想让 PCIe 内核重新枚举整个 PCIe 总线,这样我的 FPGA 就会显示出来,我可以加载我的驱动程序模块。我还希望能够为不同的配置交换 FPGA 负载。我的意思是我希望能够:

  1. 引导 Linux
  2. 配置 FPGA
  3. 枚举 PCIe 端点和加载模块
  4. 移除 PCIe 端点
  5. 重新配置 FPGA
  6. 重新枚举 PCIe 端点

无需重启 Linux

以下是其他地方提出的解决方案,但并未解决问题。

echo 1 > /sys/bus/pci/rescan这似乎有效(仅有时),如果我想在首次枚举 FPGA 负载后对其进行热交换,则它不起作用。

可以使用 PCIe 的热插拔/电源管理工具来完成这项工作吗?如果是这样,是否有任何关于如何将 Hotplug 系统与 PCIe 一起使用的好资源?(LDD并没有完全覆盖它)

0 投票
2 回答
5211 浏览

linux - 插入 USB HID 设备时防止 usbhid 自动加载

我正在尝试(可逆地)禁用 Raspbian Jessie 安装(内核版本 4.4.16-v7+)上的 USB HID 支持。我们需要将 Raspberry Pi 放在半公共空间并在电视上显示内容,我们希望至少让它有点难以处理。

到目前为止,我已经设法通过 rmmod 使 usbhid 模块从内核中移除。但是,在对模块进行 rmmod 之后,似乎每次我插入 USB 键盘或鼠标时,设备驱动程序都会重新加载到内核中。

有什么办法可以防止这种情况发生吗?

0 投票
1 回答
310 浏览

jakarta-ee - 使用 CDI 实例迭代器的 Java EE 插件框架

我有一个应用程序,它由战争、一个核心 ejb 和一个 jar 中的许多服务 bean 和另一个 jar 中的远程接口组成。一切都打包在一个耳朵里,并在 Glassfish 4.1 上运行。

现在我想为核心 ejb 添加扩展点或插件支持。

目标是拥有不同的热插拔数据导入服务,它们都共享相同的接口,因为它们从路透社和彭博等供应商那里获取和规范化财务数据。

这些插件应该由核心 ejb jar 中的“插件管理器”bean 检测和管理。插件应支持在运行时加载、卸载和替换。

理想情况下,插件接口位于单独的包中,这样其他人就可以针对它们进行开发,而无需我的应用程序或 Glassfish,即使没有 Java EE 堆栈也可以完美地进行开发。我还想按需部署插件,而不是总是部署整个应用程序。

目前我尝试使用 CDI 实例迭代器,只要它们在核心 ejb 中,它就可以很好地与两个导入服务实现一起工作。如果我将一个实现放入单独的 ejb jar 中,那么 CDI 根本找不到它。我猜问题是 Glassfish 将每个 ejb jar 作为应用程序加载到单独的类加载器中。

现在是我当前的简化代码!

单独的jar包中的插件接口:

未找到的单独 ejb jar 包中的插件实现:

找到的核心ejb jar包中的插件实现:

远程接口 jar 中“插件管理器”的远程接口:

核心 ejb jar 中的“插件管理器”bean 实现:

最后是在战争中将名称呈现给网站的控制器:

最后只渲染了“Bloomberg”。

现在我的问题:

  1. 我在正确的轨道上吗?

  2. 如果是这样,我在代码中缺少什么?

  3. 这个问题是否有更好的解决方案(OSGI、自定义 clazz.forName、...)?