~によるとこれこのページでは、このフィールドは、ユーザーがバックスペースキーまたは^ Cを押したときに発生する結果を決定する「行規則」を説明します。本質的にプログラムがread(2)
。
しかし、設定には何の影響もないようです。私のLinuxボックスには2つの行規則があります。
$ cat /proc/tty/ldiscs
n_tty 0
n_null 27
しかし、$ stty line 27
何の影響も与えないようです。バックスペースキーはまだうまく機能します。
ただし、これを行うと$ stty -icanon
1つの変更が表示されます。バックスペースキーが正しく機能しなくなり、プログラムは内容を文字ごとに読み込みます(read(2)
常に1文字だけが返されるようです)。
ここで何が起こっているのでしょうか?
ベストアンサー1
ワイヤ規律は、ttyドライバとttyコアの間の階層です(次の画像を参照)。ここ):
27(tty_null)に設定すると、日付はチャートの左側を横切ります(行ルールをスキップ)。 0に設定されている場合は、raw入力を処理できる基本的な接続規則を渡します。料理入力する。
TTY(0)
The default line discipline, providing transparent operation (raw mode)
as well as the habitual terminal line editing capabilities (cooked mode).
その他の科目リストはここ。
自分で作成したり、既存のものを使用したりできます。モジュールがあり、slip
それを接続すると、modprobe slip
次のことがわかります。
$ cat /proc/tty/ldiscs
n_tty 0
slip 1
n_null 27
これにより$ stty line 27
ラインルールが削除され(空のラインルールに設定されます)、これによりネイティブモードでデフォルトの$ stty -icanon
ラインルールが設定されます。