Hat Hızı
Önceki Uçbirim Kipleri Sonraki
Hat Hızı
Uçbirim hat hızı, bilgisayara uçbirime ne kadar hızlı okuma ve yazma yapacağını belirtmek için kullanılır.
Uçbirim gerçek bir seri hatta bağlıysa, belirttiğiniz uçbirim hızı aslında hat hızını denetler (Eğer hat hızı ile uçbirimin kendi hızı eşleşmezse iletişim gerçekleşmez). Gerçek seri portlar sadece belirli standart hızları kabul ederler. Ayrıca, bazı donanımlar standart hızların tamamını desteklemeyebilir. Hızın sıfır olarak belirtilmesi bir çevirmeli ağ bağlantısının kesilmesine ve modem denetim sinyallerinin durdurulmasına sebep olur.
Eğer uçbirim gerçek bir seri hat değilse (örneğin, bir ağ bağlantısı), hat hızı gerçekte iletim hızını etkilemez ama bazı uygulamalar boşluk doldurma miktarını saptayabilmek için bu değeri kullanabilecektir. En iyisi bir hattın hızını, asıl uçbirimin asıl hızı ile eşleşen bir değer olarak belirtmektir, ancak boşluk doldurma miktarını değiştiren farklı değerler hakkında deneyimli olmanız gerekir.
Esas olarak her uçbirim için iki hat hızı vardır: girdi ve çıktı hızı. Bunları birbirinden bağımsız olarak ayarlamak mümkünse de çoğunlukla her iki yönde de aynı hızlar kullanılır.
Hız değerleri struct termios yapısında saklanır ama onlara doğrudan yapı üzerinden erişmeye kalkmayın. Bu değerleri yapı içinde değiştirmek ya da okumak için aşağıdaki işlevleri kullanın:
speed_t cfgetospeed
(const struct termios *termios-p)
işlev
*termios-p yapısında saklanan çıktı hat hızı ile döner.
speed_t cfgetispeed
(const struct termios *termios-p)
işlev
*termios-p yapısında saklanan girdi hat hızı ile döner.
int cfsetospeed
(struct termios *termios-p,
 speed_t         hız)
işlev
Bu işlev hız değerini *termios-p yapısında çıktı hızı olarak saklar. Normal dönüş değeri sıfırdır, -1 değeri bir hata oluştuğunu gösterir. Eğer hız bir hız değeri belirtmiyorsa işlev -1 ile döner.
int cfsetispeed
(struct termios *termios-p,
 speed_t         hız)
işlev
Bu işlev hız değerini *termios-p yapısında girdi hızı olarak saklar. Normal dönüş değeri sıfırdır, -1 değeri bir hata oluştuğunu gösterir. Eğer hız bir hız değeri belirtmiyorsa işlev -1 ile döner.
int cfsetspeed
(struct termios *termios-p,
 speed_t         hız)
işlev
Bu işlev hız değerini *termios-p yapısında hem girdi hem de çıktı hızı olarak saklar. Normal dönüş değeri sıfırdır, -1 değeri bir hata oluştuğunu gösterir. Eğer hız bir hız değeri belirtmiyorsa işlev -1 ile döner. Bu işlev bir BSD oluşumudur.
speed_t
veri türü
speed_t hat hızını göstermek için kullanılan bir işaretsiz tamsayı veri türüdür.
cfsetospeed ve cfsetispeed işlevleri hataları sadece hat hızları sistem tarafından desteklenmediğinde raporlar. Eğer hat hızlarını temel olarak kabul edilebilir değerlerde belirtirseniz bu işlevler başarılı olur. Fakat işlevler belli bir donanım aygıtının bu hat hızlarını destekleyip desteklemediğine bakmaz, aslında hangi aygıtın kullanılacağını da bilmezler. Eğer tcsetattr işlevi ile belli bir aygıta bir hız belirtirseniz ve bu aygıt bu hızı desteklemiyorsa işlev -1 ile dönecektir.
Taşınabilirlik Bilgisi
GNU kütüphanesinde, yukarıda bahsedilen işlevler hızları saniyede bit sayısı olarak kabul eder ve saniyede bit sayısı olarak döndürürler. Diğer kütüphanelerde hızların belirli kodlarla belirtilmesi gerekir. POSIX.1 taşınabilirliği için, hızı aşağıdaki sembolleri kullanarak belirtmelisiniz, onların sayısal değerleri sisteme bağımlıdır fakat her isim belli bir anlama gelir: B110 => 100 bps, B300 => 300 bps, ... böyle gider. Bu hızları taşınabilir olarak belirtmenin başka bir yolu yoktur. Bunlar sadece seri hatların desteklediği, sıklıkla kullanılan hızları belirtirler.
B0  B50  B75  B110  B134  B150  B200
B300  B600  B1200  B1800  B2400  B4800
B9600  B19200  B38400  B57600  B115200
B230400  B460800
BSD bunlara ek olarak iki hız sembolünü takma ad olarak tanımlar: EXTA sembolü B19200 için, EXTB sembolü de B38400 için bir takma addır. Bu semboller atıl olmuştur.
Önceki Üst Ana Başlık Sonraki
Yerel Kipler Başlangıç Özel Karakterler
Bir Linux Kitaplığı Sayfası