gdb で curses プログラムをデバッグする

には kterm をもう1つ開いて、--tty オプションか tty コマンドでデバッギの端末をそちらの疑似端末に設定してやるとよろしい。
http://www.dirac.org/linux/gdb/07-Debugging_Ncurses_Programs.php
しかしその kterm 上で sleep 100000 などとしてシェルを眠らせておかないといけないらしい。
そうしないと、デバッギの画面が一瞬表れるのだが、キー入力をしようとするとシェルへ渡ってしまい、画面にシェルの出力が上書きされていく。
なんで一瞬だけデバッギの画面が出るんだろう。疑似端末をとって画面出力まではできたものの、すぐシェルに横取りされてしまうんだろうか。なんでシェルが勝つんだろう。そこらへんの仕組みがよくわからない。