去年我编译了一个可以从闪存驱动器运行的便携式博客/网络服务器系统。它很棒,而且效果很好,尤其是在 XP 上。问题是,当它在 Windows 7 中运行时,每个控制台程序都会产生两个进程,进程本身,加上conhost.exe.
在便携式博客系统的情况下,它的每个服务器组件(MySQL 的mysqld.exe、Apache 的两个实例httpd.exe、VisualSVN 的两个实例visualsvnserver.exe和 PHP 的多个实例php-cgi.exe)都会产生一个 实例conhost.exe。此时(没有php-cgi.exe活动副本,我有五个conhost.exe正在运行的实例,几乎没有使用 CPU 周期,但消耗了 22MB 的内存(除了实际进程当前使用的 80MB)。
自从 Windows 7 发布后(我认为可能是从 Vista 开始),我曾多次试图弄清楚各种(新)主机进程(例如,、、 和)的确切用途以及它们是否真的有必要。我尝试杀死它们并发现控制台程序继续工作,无论是使用控制台窗口的程序还是不使用控制台窗口的程序(如服务器)。conhost.exedllhost.exetaskhost.exe
我已经很熟悉了csrss.exe?视窗 ? conhost.exe并且多次看到相同的(几乎是逐字逐句的)解释。问题是每个人都只是简单地复制粘贴相同的解释,这是没有帮助的。它只是说,在 XP 中,控制台应用程序“托管于”或“运行于” csrss.exe,但在 Windows 7 中,conhost.exe为了安全起见,它们被转移到了。安全方面是有道理的,但它没有说明托管它的含义或为什么/何时需要(或者如果不需要,是否可以避免它)。甚至 Raymond Chen对此事的讨论也掩盖了为什么控制台应用程序的托管方式完全不同。
我能找到的最接近详细的技术解释的是Microsoft 的博客文章,它似乎强化了这样一种观点,即它仅与控制台应用程序的 GUI 和窗口有关。这让我更加怀疑 …
我把这个小锤子放在音量、功率、时间等旁边。我如何让它消失?选项菜单呈灰色。没有菜单项可以关闭它,我可以找到。
我有一台配备 Lion 10.7.2、2.26 GHz CPU 和 2GB DDR3 RAM 的 MacBook Pro。
如果我打电话
top -o cpu
Run Code Online (Sandbox Code Playgroud)
该/usr/libexec/opendirectoryd过程消耗CPU的40%以上。
$ ps aux | grep opend
root 27834 40,4 0,3 2472048 5780 ?? Rs 6:36PM 167:19.66 /usr/libexec/opendirectoryd
Run Code Online (Sandbox Code Playgroud)

当我将命令的输出重定向到一个文件(例如,echo Hello > file)时,该文件是否能保证在命令退出后立即具有此类数据?或者在命令退出和写入文件的数据之间仍然有一个非常小的窗口?我想在命令退出后立即读取文件,但我不想读取空文件。
我有一个关于如何在 Windows 上的 Cygwin 中终止进程的问题。我对 Cygwin 完全陌生。但我有一个我根本无法杀死的任务。我尝试发出以下命令:
kill 4568
kill -9 4568
/bin/kill -f 4568
Run Code Online (Sandbox Code Playgroud)
我已在单独的 Cygwin 终端中发出命令,因为我无法在运行该进程的 Cygwin 终端中使用 Ctrl+C。我已经在互联网上搜索过,但没有成功。
我有一台 13 英寸 Sony Vaio笔记本电脑(型号 SVS13A1C5E),我通过全新安装将其升级到Windows 8,升级后我安装了此处列出的 Win8 驱动程序。
现在我的 CPU 使用率有问题(它耗尽了我的电池),在任务管理器中我可以看到“系统”进程总是使用我的 CPU (i7-3520M) 的15-20%并且看起来正在使用单核。这是我使用 Process Explorer 发现的,用法来自ACPI.sys,看起来它正在生成大量硬件中断。

通过进行一些研究,我发现这应该是某些驱动程序的问题,但我不知道如何确定是哪个驱动程序导致了这种情况。(请不要告诉我“升级”到 Windows 7)
我在 Windows 11 上将 WSL2 与 Ubuntu 一起使用,并且有一个奇怪的进程,名为plan9I see with htop。
这是它的图片。
ps ax输出:
4 ? Sl 0:00 plan9 --control-socket 5 --log-level 4 --server-fd 6 --log-truncate
Run Code Online (Sandbox Code Playgroud)
谁能解释那是什么?我在互联网上没有找到任何相关内容。
只是出于好奇,0 到 4 之间以及 4 到 200 之间的过程是什么。

如何恢复已被删除但仍被进程打开的文件?
该博客文章“从恢复文件/proc”介绍了如何做到这一点在Linux上:
lsof(例如,lsof -c name)查找当前为给定进程打开的所有文件(名称以 开头name)。从输出中,您可以了解正在查找的文件的进程pid和文件描述符 ( fd)。cp /proc/<pid>/fd/<fd>/tmp/restored-file` 进行复制。第一步在 OS X 上也是一对一的。但是,第 2 步似乎更复杂。OS X 上有类似的功能吗?
(我尝试过,/dev/fd但就我而言,它不包含我的进程/文件的 PID/FD。)
我想停止一个长时间运行的进程,这样它就不会消耗任何 CPU 或物理内存资源,以便将来恢复相同的进程。
我知道,CPU部分是可以实现的使用SIGSTOP和SIGCONT 信号,但有可能页出(换出在工艺脏页的情况下),立即一(停止)进程的专用内存RSS?