似乎 Firefox NPAPI 插件在 Mac OSX(在 10.6 和 10.7 上测试)VMware 虚拟机中已损坏。有谁知道原因,或者有解决方法的想法 - 例如检测用户何时运行 Firefox/OSX/VM?
上下文:
- 仅当 FF && OSX && VM 时,我的插件才会消耗 100% CPU。但是,该插件仍然有效。这始终是可重现的,并且会在多个虚拟机上发生。
- Adobe Reader、Adobe Flash 以及我使用 Firebreath(教程)构建的测试插件在此环境中也全部损坏。
- Firefox 在控制台中输出以下日志消息:“无效像素格式”和“无效上下文”。可能与 OpenGL 有关 - 请参阅 bug report .
运行 glxinfo 命令会出现类似的错误:
cb-sea-miniosx64-03:~ seabld$ glxinfo name of display: /tmp/launch-LojaDe/:0 Thu Jul 5 20:13:51 cb-sea-miniosx64-03.comm-build.scl1.mozilla.com glxinfo[1009 <Error>: unknown error code: invalid pixel format Thu Jul 5 20:13:51 cb-sea-miniosx64-03.comm-build.scl1.mozilla.com glxinfo[1009] <Error>: kCGErrorFailure: Set a breakpoint @ CGErrorBreakpoint() to catch errors as they are logged. X Error of failed request: GLXBadContext Major opcode of failed request: 0 () Serial number of failed request: 16 Current serial number in output stream: 16
- Instruments 探查器报告我的插件在 IOSurfaceCreate/IOSurfaceClientCreate 上花费了大量时间。如果我理解正确的话,浏览器使用 IOSurface 与插件共享渲染数据。
- 使用 Activity Monitor 获取的样本似乎没有任何有用的信息 - 除了 CPU 问题出现在主线程 (DispatchQueue) 中。
- 一种解决方法是在 32 位模式下运行 Firefox:右键单击 FF 应用程序 >“获取信息”>“以 32 位模式打开”。但我们不能指望用户这样做。
最佳答案
听起来好像 OS X VMWare 客户机根本没有功能齐全的 3D 加速。如果有的话,这是一个 VMWare 错误(未公开完整的 3D 加速),或者可能是一个 Firefox 错误(对缺乏 3D 功能做出了糟糕的 react );这几乎肯定不是你的错。
我不会花太多时间尝试解决这个问题,特别是考虑到您尝试过的所有其他插件(包括 Flash!)似乎都受到完全相同的问题的影响。将其列为“已知问题”并继续。
关于macos - Firefox NPAPI 插件在 VMware 上的 OSX 中损坏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12611896/