タグ付けされた質問 「process」

プロセスは、実行中のコンピュータプログラムのインスタンスです。



2
ゾンビが子供を待っているのはなぜですか?
私はさまざまな情報源を掘り下げていますが、子刈りの解剖学についての適切な説明が見つかりません。これは私が理解したいことの単純なケースです。 $ cat <( sleep 100 & wait ) & [1] 14247 $ ps ax -O pgid | grep $$ 12126 12126 S pts/17 00:00:00 bash 14248 12126 S pts/17 00:00:00 bash 14249 12126 S pts/17 00:00:00 sleep 100 14251 14250 S pts/17 00:00:00 grep --color=auto 12126 $ kill -2 …

2
サブシェルは子シェルと同じです
この2つの名前があります。サブシェルと子シェルです。 はい、子プロセスは次のいずれかによって開始されます: sh -c 'echo "Hello"' ( echo "hello" ) echo "$(echo "hello") echo "hello" | cat すべて同等で、同じ名前を共有していますか?すべて同じプロパティを共有していますか? POSIXには次の定義があります。 シェル実行環境は...で構成されています。 しかし、上記のリンクの最後の段落にはこれがあります: サブシェル環境は、無視されないシグナルトラップがデフォルトのアクションに設定されることを除いて、シェル環境の複製として作成されます。 そして特に: コマンド置換、括弧でグループ化されたコマンド、および非同期リストは、サブシェル環境で実行されます。さらに、マルチコマンドパイプラインの各コマンドはサブシェル環境にあります。.... sh -c 'echo "Hello"'そこに含まれていない、それもサブシェルと呼ばれるべき?

3
プロセスを強制終了せずに一時停止します
そのため、私は永続的なプログラムをバックグラウンドで実行しています。強制終了すると、別のPIDで再起動するだけです。一時停止したい(実際に殺さずにスリープ状態にする)。kill -9はこれを行いますか?そうでない場合、これはどのように行う必要がありますか?
11 process  kill 

3
シェルはどのようにプログラムを実行しますか?
gccを使用してプログラムをコンパイルし、それをbashシェルから実行しようとすると、それを実行するためにbashが実行するステップの正確なシーケンスは何ですか? 私が知っているfork()、execve()、loader、dynamic linker(および他のもの)に関与していることができますが、誰かがステップと、いくつかの適切な読取基準の正確な配列を与えますか? 編集: 答えから、質問は多くの可能性を暗示することができるようです。簡単なケースに絞り込みたい: (test.cはhello worldを出力するだけです) $ gcc test.c -o test $ ./test 上記のケース(./test)のステップ、具体的には、いくつかの子プロセスでのbash開始プログラムの関連付け、ロード、リンクなどの手順は何ですか?

2
Linuxでネットワークコマンドラインを使用せずに、開いているポートのリストとそれらを所有するプロセスを知る方法は?
embedded-linuxのどのプロセスがどのポートを使用しているかを知りたい。シンプルなembedded-linuxなので、netstat、lsofなどのネットワークコマンドラインはありません。(cat、cp、echoなどの基本的なコマンドラインのみが存在します)。 部分的な解決策は、「cat / proc / net / tcp」および「cat / proc / net / udp」コマンドラインを使用することです。ただし、これらのコマンドラインから出力されたリストに使用中のすべてのポートが表示されているかどうか、またどのリストが特定のポートにバインドされているかは表示されません。 コメントをいただければ幸いです。

2
プロセスの「時間」が最上位で停止したとはどういう意味ですか?
重要なスワップアラートが発生する理由を調べます。次のようなものが見つかります。 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ SWAP COMMAND 14683 user1 30 10 16.0g 772m 744 S 0.3 0.3 277:24.87 6.5g MATLAB 14576 user1 30 10 8125m 1.1g 736 S 0.3 0.4 261:16.73 4.1g MATLAB これらのプロセスでは、TIME +列が凍結されています。 私の質問は、上記において、これは何を意味するのですか? 私が理解しているように、停止時間とは、休止状態のプロセスであること、またはCPUによって処理されていないことを意味します。ただし、上記の例は0.3%のCPU使用率を示しているため、非常に小さいにもかかわらず、時間列が増加し続けるのではないでしょうか。 これらのプロセスは「終了」していますか?その場合、それらはどのようにクリーンアップされますか?それらを開始したユーザーは、それらを解放するためにそれらを承認する必要がありますか?
11 process  cpu  swap  top  htop 

2
Linuxでユーザーが作成した実行可能ファイルを追跡するにはどうすればよいですか?
Linuxを使用して、コマンドライン全体(実際には、すべてのexec *()が自分のユーザーとして実行されます)を含め、自分の名前で実行された実行可能ファイルを追跡したいと思います。私が制御しないプログラムは、タスクを処理するために、渡したプログラムを実行することを想定していますが、それを確実に実行し、どのようなオプションを使用するかを確認します。私が制御しないプログラムは卑劣であり、タスクに対して実行することになっているプログラムの名前に応じて動作を変更するようですので、情報をログに記録して実際のプログラムを呼び出すシェルスクリプトを渡すことができませんプログラム。 Linuxのシステムで自分のユーザーとして実行されたすべてのexec *()を、完全なコマンドラインを含めて通知することはできますか?psつまり、ループでの実行に不足しています。作業しているシステムで直接実行し、ルートアクセスは必要ありませんが、必要に応じて、ルートアクセスが可能なシステムを起動し、プログラムをインストールして調査できます。 Ubuntu 12.4 LTSを使用します。

5
プロセスの終了時または強制終了時にSMS /テキストメッセージ通知を取得することは可能ですか?
サーバープロセスが完了したときに電子メールを送信するスクリプトがあります。 ただし、仕事が終了したかどうかを確認するためだけにメールをチェックすることはあまりありません。したがって、SMSメッセージを取得したいと思います。 私の質問はこれと似ていますが、SMSをすべての「電子メール」と交換するだけです。プロセスが終了したときに通知電子メールを送信できるプログラムはありますか? ジョブが終了した(または途中で終了した)ときにSMSを送信できるようにするための回避策、アプリ、スクリプトなどは何でも考えられますか?

4
再起動しないと強制終了できないプロセスを強制終了するにはどうすればよいですか?
強制終了できない5つのプロセスがありkill -9 $PID、実行するcat /proc/$PID/cmdlineと現在のセッションがハングします。多分それらはゾンビプロセスです。 実行ps -ef or htopすると、現在のセッションもハングします。しかしtop、ps -e正常に動作しています。 したがって、ファイルシステムが応答しないという2つの問題があるようです。 これは仮想マシンを実行する本番マシンであるため、再起動することはできません。 次のプロセスIDが機能していません:16181 16765 5985 7427 7547 これらのプロセスの親はinitです ├─collectd(16765)─┬─{collectd}(16776) │ ├─{collectd}(16777) │ ├─{collectd}(16778) │ ├─{collectd}(16779) │ ├─{collectd}(16780) │ └─{collectd}(16781) ├─collectd(28642)───{collectd}(28650) ├─collectd(29868)─┬─{collectd}(29873) │ ├─{collectd}(29874) │ ├─{collectd}(29875) │ └─{collectd}(29876) そしてqemuプロセスの1つが機能していません |-qemu-system-x86(16181)-+-{qemu-system-x86}(16232) | |-{qemu-system-x86}(16238) | |-{qemu-system-x86}(16803) | |-{qemu-system-x86}(17990) | |-{qemu-system-x86}(17991) | |-{qemu-system-x86}(17992) | |-{qemu-system-x86}(18062) …

10
プロセスがバックグラウンドで既に実行されているかどうかを確認する方法(およびそれに基づいて再実行をスキップする方法)をbashしますか?
プロセスがまだ(バックグラウンドで)実行されていない場合に、特定のコマンドのみを実行するbashコマンドラインを作成できますか? コマンドがすでに実行されているかどうかを確認するにはどうすればよいですか? (&&そのため、間に次のコマンドを追加して、最初のコマンドがtrueの場合にのみ次のコマンドが実行されるようにすることができます)。 *:テスト、決定、発見、発見
11 bash  shell  process 



4
bashで、control-zを使用してプロセスを一時停止した場合の潜在的な悪影響は何ですか?
bashを使用すると、でプロセスを一時停止できますcontrol-z。ただし、一時停止するとプロセスが適切に動作しない場合に注意すべき一般的な状況やガイドラインはありますか? 私の具体的なシナリオは、予想よりも時間がかかっていたtarファイルを作成することでした。一時停止してバックグラウンドに置きたかったのですが、止めないことにしました。もちろん、私の質問はtarに固有のものではありません。むしろ、bashの一時停止機能と、プロセスが一時停止された場合の反応が悪くなる原因について少し理解したいと思っています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.