Seri hat ve iki ethernet NIC ile bağlı yüksek kullanılabilirlikli bir kümem (Kalp Atışı) var. Bağlantısı kesilmiş seri hattı tanıyabilecek bir izleme komut dosyası kurmak istiyorum (temelde aynı soru SO'da cevaplandı , ancak böyle bir genel cevaptan memnun değilim).
Seri cihazı Heartbeat tarafından açıldığından, seri cihazı açıp verileri kendim okuyamıyorum.
Böylece dolaylı ipuçları aramaya başladım. Şimdiye kadar bulduğum tek fark, içeriğinde /proc/tty/driver/serial
. Bağlandığında şöyle görünür:
# cat /proc/tty/driver/serial
serinfo:1.0 driver revision:
0: uart:16550A port:000003F8 irq:4 tx:2722759 rx:2718165 brk:1 RTS|CTS|DTR|DSR|CD
Bağlantı kesildiğinde:
# cat /proc/tty/driver/serial
serinfo:1.0 driver revision:
0: uart:16550A port:000003F8 irq:4 tx:2725233 rx:2720703 brk:1 RTS|DTR
/ Proc / tty / driver / serial / içindekiler hakkında herhangi bir belge bulamadığım için, hattın sonunda listelenen sinyallerin bağlı / bağlantısız kablo anlamına sahip olduğuna karar verecek kadar emin değilim. Sadece sinyalin varlığının verilen sinyalin "şu anda" (ya da yakın geçmişte? Veya?) Olduğu anlamına geldiğini varsayabilirim. Seri NASIL kablosu (CTS akış kontrol sinyali DSR, CD "Modem birbirine bağlı" "I iletişim kurmak için hazır değilim") bağlandığı zaman, ek sinyaller "girdi" yönünde hepsi mevcut olduğunu belirtti. Öyleyse diğer ucunda yaşayan biri olmalı.
Sinyallerin anlamının Seri NASIL belgesinde anlatıldığı varsayıldığında, kararımı CD sinyalinin varlığına dayandırabilirim. Ancak gerçekten emin değilim.
Yani soru şu: Metodum "doğru" mu yoksa farkında olmadığım daha iyi seçeneklerim var mı?
EDIT: Bazı ilave gözlemler yaptım ve meslektaşımla konuştum. Hattın sonunda sinyallerin varlığı veya yokluğunun, her iki uçta seri port aktivitesinin oldukça iyi bir göstergesi olduğu ortaya çıkıyor. Bununla birlikte, bir kablonun fiziksel varlığının bir göstergesi değildir. Seri bağlantı noktasına bir program yazıldığında, giden sinyaller mevcuttu (RTS | DTR). Diğer taraf yazarken gelen sinyaller mevcuttu (CTS | DSR | CD). Tarafların hiçbiri iletişim kuramadığında hiç sinyal yoktur (bu, hiçbir kablo olmadığı anlamına gelmez). Kesin sinyallerin kablonun kablo bağlantısına bağlı olduğunu unutmayın (kısmi el sıkışma ile "boş modem var").