小编cas*_*xer的帖子

在 Linux 上使用 O_DIRECT

如果这个问题过于面向程序员,请告诉我。我想知道是否有人熟悉Linux 2.6上open()系统调用的O_DIRECT标志?Linus 贬低它的使用,但高性能文件写入似乎表明它的使用。我想知道任何现实世界的经验和建议。

更多信息:我正在使用的应用程序确实维护着自己的缓存,这样做的速度平均提高了 5 倍或更多。写入文件时,缓存的内容必须写出到文件系统缓存,这似乎是多余的,而且是一个性能问题。

linux performance programming kernel files

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

每次启动都必须设置 cgroups 中的进程吗?如果是这样,如何坚持它们?

我正在阅读有关使用 cgroups 设置进程限制的问题的答案。给定的示例为流程设置了限制(在示例中为sshd)。在回答中,进程的 PID 是手动设置的。这对我来说是不可接受的,我希望从给定应用程序启动的进程始终设置限制,无论它们何时启动,也不受启动多少个此类进程的限制。

也许从示例中不清楚这将如何发生,因此也欢迎提供清晰的解释或链接。内核 cgroups.txt 中的示例似乎使用与上面已经给出的模型相同的模型。

performance limit cgroups

10
推荐指数
1
解决办法
645
查看次数

Skype 的声音输入问题,选择麦克风?

好的,Skype 再次出现声音问题。这一次,它无法录制音频。系统使用 PulseAudio,我使用网络摄像头作为麦克风。实际上,我尝试了另一个网络摄像头,并且同时插入了两个网络摄像头。lsusb 显示插入的设备。Skype 只允许选择pulseaudio 作为输入设备,没有其他选择。Skype 似乎只能看到模拟声卡上的麦克风输入(没有连接麦克风)。

我曾尝试使用KMix、KDE声子对话框(隐藏在KMix的菜单中)、alsamixer甚至发生在pavucontrol。似乎没有人能够重新排列设备作为麦克风的偏好,或者至少选择所需的麦克风。这可能是 OpenSUSE 11.4 中的一个缺陷,或者我可能只是遗漏了一些明显的东西。一切都会表明网络摄像头麦克风可用,并允许我为任一网络摄像头设置输入电平。

如何选择网络摄像头麦克风?

linux audio skype pulseaudio

9
推荐指数
1
解决办法
6583
查看次数

如何通过 SSH 从远程打印到本地 LAN 打印机?

好的,所以在我的本地 X 屏幕上从远程服务器运行应用程序是相当直接的,就好像它们是本地应用程序一样。问题是,在尝试打印时,远程应用程序只能看到远程端的打印机。

是否可以(当然可以)将本地 CUPS 服务器端口转发到远程会话?如果是这样,如何?我曾尝试使用 -L 选项和打印机 (515) 服务,但无济于事。

ssh printing ssh-tunneling

6
推荐指数
1
解决办法
8492
查看次数

是否同步/var?

似乎在严重崩溃中,尤其是 UPS 无法保持系统运行时,日志的某些内容会由于文件系统缓存而丢失。作为实验,我尝试使用同步选项挂载 /var 分区。启动时有更多的磁盘噪音,但显示停止器试图运行 apt。磁盘砰的一声响起,而 apt 坐在那里没有反应。

挂载 /var sync 是错误,还是成功所需的选项之一,例如 relatime、strictatime 或 noatime?如果是这样,在 /var 上使用这些选项之一是否安全?

logs mount failure-resistance

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

free 输出中的缓冲区列是什么?

这些 问题简要列出了 free 命令的格式,注意缓冲区是必须写入磁盘的内核内存,缓存是不需要写入磁盘的文件数据。

在我的系统上,与大多数时候免费运行不同,缓冲区占用了超过 10% 的 RAM。通常,缓冲区是一个很小的、几乎是令牌的值。

我的问题是,在称为缓冲区的区域中究竟是什么?我可以找它lsof吗?它是否包含尚未刷新的打开文件区域?它是内存映射文件区域吗?它是什么?

系统运行良好,很少使用交换,所以性能很好。

linux memory cache

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

有动态链接库的rpath吗?

因此,我正在从事的项目使用非系统目录来保存代码使用的一些 DLL。我不想将它们放在系统目录中,因此可执行文件设置了一个 rpath 来查找 DLL。然而,随着越来越多的库被添加,现在有 DLL 依赖于该目录中的其他 DLL。

这些库无法找到它们所依赖的 DLL,因为它们不位于链接器正在查找的目录中,例如系统目录。

有没有办法让 DLL 搜索这个特定的非系统目录?比如rpath?图书馆是如何做到这一点的?该项目使用的构建系统是 CMake(如果这有助于回答)。

这个答案不起作用,因为库中没有 rPath 标签: https: //unix.stackexchange.com/a/272286/4193

我考虑过使用LD_LIBRARY_PATH, 这很有效,但打字很烦人,而且让其他人使用该应用程序也不是那么好。如果有办法将rPath标签添加到库中,那将是最好的选择。

感谢指向以前的相关问题和答案。

libraries dynamic-linking shared-library

0
推荐指数
1
解决办法
6196
查看次数