バックグラウンドプロセスによって実行されたプロセス(ターミナルタイプを読み書きします)があります。 psを使って見ることができます。 フォアグラウンドにそれを持参しようとすると、これは私が試みたものです:それはしかし動作していないフォアグラウンドにプロセスを持ち込みます
int main()
{
FILE* fd = popen("pidof my_program","r");
// ...
// Some code to get the pid of my_program as mpid
//...
printf("pid of my_program is %d",mpid);
signal(SIGTTOU, SIG_IGN);
setpgid(mpid,0); // Set program group id to pid of process
tcsetpgrp(0,mpid); // Give it terminal stdin access
tcsetpgrp(1,mpid); // Give it terminal stdout access
return 0;
}
。誰かが私にこれを助けることができますか?おかげさまで
しかし私は、これは私がビジーボックスバイナリしか持っていない埋め込みLinuxマシン上で実行しており、fg、bg、またはジョブを利用することはできません。どうすればいいですか? – Bornfree
私はあなたが上記のコードをコンパイルすることができます。 – vulkanino