如何在Mac / Linux中制作难以杀死的进程?

时间:2009-05-01 06:00:04

标签: linux macos process

我意识到这听起来像恶意软件程序会做的事情,所以我理解你是否有些人对我的意图持怀疑态度。对于一个供其他人使用的程序,我绝不会这样做,但我也意识到其他人可能会查看答案并自行完成。

当我上网时,我的工作效率会下降,所以我想写一个程序,每隔一段时间就会自动关闭我的连接。但是知道我,我可能只是sudo杀了-9它一旦它变得烦人,我想让它稍微困难,所以我不会一直这样做。对此的任何建议(或其他方法来实现我正在尝试做的事情)?我正在考虑将其命名为与另一个进程相同的事情所以我必须花一些时间来弄清楚我需要杀死什么,经常用cron作业生成一个进程等等。

5 个答案:

答案 0 :(得分:9)

答案 1 :(得分:3)

获取一个小部件,在桌面上显示您的银行余额(或配偶皱着眉头的脸,或您孩子饥饿的脸)。

当您意识到这与您浪费的互联网使用之间存在联系时,您将停止。你只需要创建适当的刺激/响应反馈循环,你就会做出适当的反应。

答案 2 :(得分:2)

将其作为内核模块,您不能简单地kill

答案 3 :(得分:0)

让两个进程互相监视,当一个进程消失时,另一个进程立即重新启动它。让他们等待对方持有的信号量,或类似的东西,这样你就不会睡觉和投票(没有看过的时期!)。

并使它们高于正常优先级。

答案 4 :(得分:0)

你可以在你的crontab上输入一个有机会每十分钟杀死一次firefox的东西。没有杀死进程以防止它发生。

类似的东西:

#!/ usr / bin / perl -w strict

my $ random_number = rand()* 10;

if(rand()* 10 == 1)   {     kill firefox-bin   }

并在crontab中: * / 10 * * * * * /home//maybe_kill_firefox.pl