日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

为什么linux的TTY登录程序getty/agetty一般都会设置一个-L的option?

發布時間:2025/3/21 73 豆豆
生活随笔 收集整理的這篇文章主要介紹了 为什么linux的TTY登录程序getty/agetty一般都会设置一个-L的option? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

-L option表示程序不等待DCD信號。DCD信號是串口通訊時的一個信號,表示Data Carrier Detected,一般是modem連通之后會發送回來的一個信號,表示數據載波OK,可以繼續通信了。

但是,在現在的串口通信中,特別是嵌入式開發的時候,開發板上的串口,DCD這個pin一般都不會連線的,一般只連tx/rx/cts/rts四根線就OK了。

所以,如果getty或者agetty沒有指定-L選項,那么open /dev/ttyS0就會block在那里,因為kernel會wait在一個waitqueue上,等待串口的DCD信號上來(通過中斷)。

事實上,在getty/agetty程序中,指定-L option之后,代碼中就會以NON_BLOCK的方式來打開/dev/ttyS0,這樣kernel就不會去等待DCD信號了,從而打開串口就不會block了。

?

對于local的開發板上的串口來說,不連DCD線是合理的。因為這是local設備,不是要和遠程的一個modem進行通信,所以需要DCD。本地的串口連上述那四根線就OK了。

總結

以上是生活随笔為你收集整理的为什么linux的TTY登录程序getty/agetty一般都会设置一个-L的option?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。