Articles of 进程

在Linux上执行stream程之前获得pid

在stream程实际执行之前,我将如何去打印stream程ID? 有没有一种方法,我可以得到以前执行的进程ID,只是增量? 即 printf(<process id>); execvp(process->args[0], process->args);

在Linux下的C程序:如何找出另一个程序是否正在运行

我在Linux下运行的C程序想要找出是否有其他程序正在运行。 怎么做?

确定一个过程的状态

我试图找出在Linux环境中使用C(运行,睡眠或退出)进程的状态。 我最初的想法是用命令ps 12345调用execv() ,其中12345是进程ID,然后parsing输出以获得STAT。 但是,我不认为我可以将它输出到我的程序中,因为它只是自动输出(或者我可以吗?)。 我也在想,我可以给这个过程发送一个信号,但我还没有find一个好的方法来做到这一点,我甚至不知道是否可以用这种方式来确定过程状态。 所以,我的问题是,如何确定C中的进程的状态?

停止并使用C ++在Linux中重新开始运行进程

我有两个进程和一个共享内存区域,我的工作stream程就是这样。 进程A在共享内存中写入一些数据,然后等待并发送信号给其他进程B开始运行。 进程B应该从共享内存中读取一些数据,做一些东西写入结果,然后发送一个信号给进程A继续运行,这个进程B等待之后。 任何人都可以提供一个例子或地方,我可以find如何停止一个过程,我怎样才能开始再次运行的过程? 我正在使用Linux和C ++。 我已经有了信号量,但是我不喜欢的东西,就是一个进程停止从共享内存中读取所有的时间,直到它检测到它可以运行。 这就是为什么我只是在适当的时候发出信号 更新与解决scheme 我select了stefan.ciobaca的答案作为最喜欢的,因为它是一个完整的解决scheme,它的作品,它有一个很好的解释。 但在所有其他的答案还有其他有趣的select。

如何获得特定进程的进程ID?

假设有3个进程名为abc , abcd和abcde 。 我正在使用以下命令来找出进程ID: ps -ef | grep abc | grep -v grep 这给所有3个进程的输出及其对应的pid: user 6009 1 0 May 11 ? 0:23 ./abc user 28047 1 0 Apr 24 ? 0:04 ./abcd user 28548 1 0 Apr 27 ? 0:04 ./abcde 现在我想要的是一个grep的东西,输出abc的进程ID,而不返回abcd和abcde 。 我知道使用grep -v "processname"消除了我想要的,但有什么简单和具体的?

难以将应用程序移植到64位吗?

我惊奇地发现Adobe停止了64位版本的Flash for Linux 。 虽然有一个新的32位版本,Adobebuild议用户使用Firefox的32位版本。 想知道,因为我还没有这样做,是不是很难将应用程序移植到64位? 除了库变化和重新编译(Makefile中的设置)之外,什么使得端口变得困难? (Flash是一个例子)

我怎么能从Linux中的Python的进程ID获取用户名?

我想从Linux中的Python中的进程ID获取用户名,所以我可以这样显示它: name user name pid Chrome wong2 123

TaskManager for Linux – Java Swing能在Linux上工作吗?

我要开发一个Linux任务pipe理器,目前正处于初级阶段。 首先我在Windows平台的Java Eclipse中实现它,它工作得很好。 它在Linux平台上不起作用。 我已经使用了Java / Swing的组合。 窗口中的“tasklist.exe”完美地工作。 Linux中的“ps-aux”不起作用。 码: package test.t100.t001; import java.awt.*; import java.awt.event.KeyEvent; import java.io.BufferedReader; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintStream; import javax.swing.*; public class TabbedPaneDemo extends JPanel { private static final long serialVersionUID = 1L; Integer i; JTextArea output = new JTextArea(); public static void main(String args[]) { SwingUtilities.invokeLater(new […]

阻止用户使用简单的C代码locking崩溃的Linux机器

有没有办法阻止用户使用以下代码来lockingLinux机器: #import <stdio.h> int main (int argc, char** argv) { while (1) fork(); } 有问题的计算机在计算机实验室,所以我不能完全不允许编译…但有没有办法确保这些进程只消耗一定的系统资源的一部分? 这个问题的重要性更加复杂,因为任何用户都可以进入任何系统,所以真正的唯一原因还没有成为一个问题,大多数用户对C或者其他低级语言或多或less不熟悉。 不过,我想把这个扼杀在萌芽之中。

我如何得到一个进程重新加载自己的Linux?

我有一个服务,说foo,用C ++编写,以root身份运行。 有通常的脚本,/etc/init.d/foo start | stop | restart。 在某些时候,foo需要重新加载。 通常在升级完成后。 但是要做的事情是: system("/etc/init.d/foo restart") 因为只要重新启动杀死foo,system()调用显然也会被终止,重启脚本也不会执行完成。 有没有另一个调用,我可以使用,而不是system()asynchronous运行的调用进程的兄弟,而不是创build一个同步的孩子? 谢谢!