问题标签 [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.
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 不支持?有谁能够帮我?
linux - Linux上PCIe的重枚举和热插拔
我正在使用通过电缆连接到 linux RH6.4 机器的 PCIe 设备,我需要强制 linux 重新枚举 PCIe 设备(开机后)而不重新启动机器。
目前仅在重新启动后进行枚举。我尝试了以下但它不工作
echo "1" > /sys/bus/pci/rescan
任何想法谢谢
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 板,所以设备本身可能有问题,但我仍然希望探针运行,然后稍后会出现奇怪的错误而失败。
windows - 热插拔设备和可移动设备有什么区别?
我读过 USB HDD 是可热插拔但不可移动的,而 USB 闪存驱动器既可移动又可热插拔。在内部,Windows DEVICE_OBJECT 结构具有可以为可移动媒体(而不是可移动设备)设置值 FILE_REMOVABLE_MEDIA 的特性标志。此外,STORAGE_HOTPLUG_INFO 结构具有 Devicehotplug 布尔成员,表示设备是否可热插拔。你能用一些细节证明你的答案吗?
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 时刻?
linux-kernel - 如何对 PCIe 总线进行 TRUE 重新扫描
我有一个 FPGA(就像大多数问这个问题的人一样),它在我的 Linux 内核进行初始 PCIe 总线扫描和枚举之后进行配置。您可以猜到,FPGA 实现了一个 PCIe 端点。
我想让 PCIe 内核重新枚举整个 PCIe 总线,这样我的 FPGA 就会显示出来,我可以加载我的驱动程序模块。我还希望能够为不同的配置交换 FPGA 负载。我的意思是我希望能够:
- 引导 Linux
- 配置 FPGA
- 枚举 PCIe 端点和加载模块
- 移除 PCIe 端点
- 重新配置 FPGA
- 重新枚举 PCIe 端点
无需重启 Linux
以下是其他地方提出的解决方案,但并未解决问题。
echo 1 > /sys/bus/pci/rescan
这似乎有效(仅有时),如果我想在首次枚举 FPGA 负载后对其进行热交换,则它不起作用。
可以使用 PCIe 的热插拔/电源管理工具来完成这项工作吗?如果是这样,是否有任何关于如何将 Hotplug 系统与 PCIe 一起使用的好资源?(LDD并没有完全覆盖它)
linux - 插入 USB HID 设备时防止 usbhid 自动加载
我正在尝试(可逆地)禁用 Raspbian Jessie 安装(内核版本 4.4.16-v7+)上的 USB HID 支持。我们需要将 Raspberry Pi 放在半公共空间并在电视上显示内容,我们希望至少让它有点难以处理。
到目前为止,我已经设法通过 rmmod 使 usbhid 模块从内核中移除。但是,在对模块进行 rmmod 之后,似乎每次我插入 USB 键盘或鼠标时,设备驱动程序都会重新加载到内核中。
有什么办法可以防止这种情况发生吗?
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”。
现在我的问题:
我在正确的轨道上吗?
如果是这样,我在代码中缺少什么?
这个问题是否有更好的解决方案(OSGI、自定义 clazz.forName、...)?