【linux – 限制CentOS 5中的进程资源消耗(2.6.18内核)】教程文章相关的互联网学习教程文章

linux-如何控制正在运行的进程数?【代码】

我正在执行Shell脚本,并且发生未知情况.我必须执行一定数量的进程,假设12.但是我想每次都将执行限制为’t’.因此,如果“ t”为3,则我必须执行3个进程,然后执行3、3,最后是3个进程.但是我想自动执行,所以我需要监视那些正在运行的进程,当其中一个进程完成时,我必须执行一个其余过程. 经过研究,我发现以下命令:launch backgroundprocess & PROC_ID=$! while kill -0 "$PROC_ID" >/dev/null 2>&1; doecho "PROCESS IS RUNNING" done ...

linux-Bash:内联执行返回重复的“进程”.为什么?【代码】

bash:4.3.42(1)-发行版(x86_64-pc-linux-gnu) 执行以下脚本:# This is myscript.sh line=$(ps aux | grep [m]yscript) # A => returns two duplicates processes (why?) echo "'$line'" ps aux | grep [m]yscript # B => returns only one输出:'tom 31836 0.0 0.0 17656 3132 pts/25 S+ 10:33 0:00 bash myscript.sh tom 31837 0.0 0.0 17660 1736 pts/25 S+ 10:33 0:00 bash myscript.sh' t...

linux-如何通过SSH将SIGINT(Ctrl-C)发送到当前远程进程(不带-t选项)【代码】

我需要向SSH会话中在前台运行的远程进程发送SIGINT. SSH会话已经建立,因此我无法使用启动它的选项(如How to send SIGINT to a remote process over SSH?中所述)ssh -t user@host我知道我可以打开第二个ssh会话并终止进程或关闭当前的ssh会话,但是我想避免这种情况并直接抛出当前的会话(如果可能的话).解决方法:如果您使用ssh在远程系统上启动没有PTY的进程,那么据我所知,无法通过该ssh会话向远程进程发出信号. SSH协议的编号为mess...

linux-如何避免进程?【代码】

我将ZFS远程复制从主控主机复制到从属主机,在那里我在主控主机上运行一个Perl脚本. 对于每个文件系统,它ssh到远程主机并以侦听模式启动mbuffer,然后脚本继续执行,然后发送数据.成功时,mbuffer应该自行退出. 问题 通过ssh在远程主机上启动mbuffer,然后能够在脚本中继续是非常困难的.我最终做了下面可以看到的事情. 问题在于,直到脚本退出,脚本都会留下< defunct>每个文件系统处理一个. 题 可以避免< defunct>过程?sub mbuffer {my ...

linux-如何在不重新启动的情况下杀死“ fast fork()”进程?【代码】

我在Linux系统上找到了Torjan,它使用一种称为“快速派生”的方法,如下面的代码while(1) {count += 1;pid_t pid = fork();if (pid < 0){printf("there is something wrong\n");}if (pid > 0) // father process{/* every 0x1000 times fork run the evil code once */if (count & 0xfff){exit(0);}/* stop the program if the job isn't done in XXs */alarm(XX);// evil code} }它真的很有效,您无法通过ps aux找到它,是否仍然可以找...

Linux-在KDB后台进程停止中输入结果【代码】

我在Linux服务器上运行Kx Q process 我注意到,当我运行此命令时,在我的shell上按下return / enter之后,该进程停止./kdb/q/l32/q -p 1234 &但是,如果我在前台运行它…./kdb/q/l32/q -p 1234它会打开一个q)提示,提示您按回车/回车不会使其退出 我想知道是否按Enter键导致进程停止与Kx有关,还是与Linux有关? 任何建议表示赞赏解决方法:您应该使用nohup在后台执行命令.例如nohup ./kdb/q/l32/q -p 1234 &

如何对Linux中无响应的Java应用程序/进程进行故障排除【代码】

假设您的应用程序无响应,并且您无法将调试器附加到该应用程序,因为它拒绝所有操作.您所拥有的只是一个Linux Bash和进程ID.您将如何调查此问题?您将使用哪些工具?我的目标是提高使用Java的故障排除技能. 我们在客户现场生产中遇到的这个特殊问题.解决方法:您可以通过发出以下命令从应用程序中进行线程转储:kill -3 这将为您提供有关线程当前状态的一些信息,并有望帮助诊断问题.但是,诀窍不是采取线程转储,而是读取产生的线程转储...

如何在Linux中获取进程的CPU信息?

在我的服务器中,有几个CPU(0-7).我需要运行并行代码,并且每个进程都隶属于一个CPU,所以我如何知道每个进程的CPU信息? 例如,如果存在两个进程(#0和#1),并且进程#0使用CPU 5,而进程#1使用CPU 7. 我怎么知道用C或Fortran编程?解决方法:使用sched_getcpu()呼叫. 请记住,可以自由安排进程/线程在任何可用的cpu /内核上运行,因此一个进程可以在内核1上运行一秒钟,而在内核2上运行下一毫秒.您可以使用sched_setaffinity()限制进程可以在...

在进程退出之前是否有Linux命令可以阻止?【代码】

这就是问题的所在.另外,我所拥有的只是PID,而我正在从中运行命令的外壳不一定是最初调用该过程的外壳.有任何想法吗?解决方法: while ps -p $PID >/dev/null 2>&1; do sleep 1; done要么while ps -p $PID >/dev/null 2>&1; do :; done

如何在linux命令行中查看进程的命令行和环境变量【代码】

我希望能够看到启动给定进程(通过PID)的命令行及其环境变量. 最好从命令行开始,但是脚本可以接受. 这将在Centos 5.3上进行,但越广泛,效果越好.解决方法:cat /proc/$pid/environ cat /proc/$pid/cmdline$pid是您感兴趣的pid

c-守护进程未在Linux中停止【代码】

我使用了以下指南(http://peterlombardo.wikidot.com/linux-daemon-in-c),它运作良好且美观,接受它不会杀死您. Main.cpp//Global Directives //#define DEBUG 1 #define DAE_NAME "dae" #define DAE_PID "/var/run/dae.pid"//Includes #include <iostream> #include <stdio.h> #include <stdlib.h> #include <sstream> #include <string> #include <fstream> #include <iomanip> #include <vector> #include <syslog.h>#include <s...

docker 进程 转载:https://www.cnblogs.com/ilinuxer/p/6188303.html【代码】

今天我们会分析Docker中进程管理的一些细节,并介绍一些常见问题的解决方法和注意事项。 容器的PID namespace(名空间) 在Docker中,进程管理的基础就是Linux内核中的PID名空间技术。在不同PID名空间中,进程ID是独立的;即在两个不同名空间下的进程可以有相同的PID。 Linux内核为所有的PID名空间维护了一个树状结构:最顶层的是系统初始化时创建的root namespace(根名空间),再创建的新PID namespace就称之为child namespace(...

[转帖]Linux系统进程的知识总结,进程与线程之间的纠葛...【代码】

Linux系统进程的知识总结,进程与线程之间的纠葛...https://cloud.tencent.com/developer/article/1500509 当一个程序开始执行后,在开始执行到执行完毕退出这段时间内,它在内存中的部分就叫称作一个进程。 Linux 是一个多任务的操作系统,也就是说,在同一时间内,可以有多个进程同时执行。我们大家常用的单CPU计算机实际上在一个时间片段内只能执行一条指令。那么Linux是如何实现多进程的同时执行的呢?原来Linux使用了一种称为...

linux-使用Proc文件系统计算进程的内存

我正在通过从Proc文件系统中读取值在Perl中编写小型进程监视器脚本.现在,我可以使用/ proc / [pid] / status和/ proc / [pid] / io文件获取线程数,进程状态,读写字节数.现在,我想计算一个进程的内存使用情况.搜索之后,我知道/ proc / [pid] / statm将出现内存使用情况.但是我仍然无法弄清楚该文件中需要哪些字段来计算内存使用情况.谁可以帮我这个事?提前致谢.解决方法:您可能需要居民或规模.从kernel.org开始. >程序总大小 >这是...

Linux C运行并与新进程通信【代码】

我需要制作一个运行一个进程的程序(我的另一个程序),并且可以与此进程进行通信(发送stdin和接收stdout).我已经阅读过有关popen()和CreateProcess()之类的函数的信息,但我并不真正了解如何使用它们. 如果您向我展示一些示例代码(如何启动过程,发送stdin,接收stdout),那就太好了.C函数将是首选(如果有). 谢谢你的指教.解决方法:POSIX的接口仅使用C语言.但是您可以在C中使用它们. 基本上:#include <unistd.h> // Include some other ...