Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > pl.comp.os.linux.programowanie > #2121

Re: Jak skutecznie odczytać wolne miejsce w buforze nadawczym portu szeregowego?

X-Received by 2002:a37:614e:: with SMTP id v75-v6mr18151072qkb.39.1531332359235; Wed, 11 Jul 2018 11:05:59 -0700 (PDT)
X-Received by 2002:a0c:e889:: with SMTP id b9-v6mr36474qvo.3.1531332358841; Wed, 11 Jul 2018 11:05:58 -0700 (PDT)
Path csiph.com!xmission!news.snarked.org!border2.nntp.dca1.giganews.com!nntp.giganews.com!f6-v6no3357068qth.0!news-out.google.com!u13-v6ni1455qtg.0!nntp.google.com!f6-v6no3357065qth.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups pl.comp.os.linux.programowanie
Date Wed, 11 Jul 2018 11:05:58 -0700 (PDT)
In-Reply-To <pi4u7m$j0j$1$gof@news.chmurka.net>
Complaints-To groups-abuse@google.com
Injection-Info glegroupsg2000goo.googlegroups.com; posting-host=188.146.68.11; posting-account=gLUTRAoAAADr4_ywPlZaMoP-wsVeFJh_
NNTP-Posting-Host 188.146.68.11
References <62ce83e9-ba03-4a59-8f59-6e4acc6ad001@googlegroups.com> <pi4u7m$j0j$1$gof@news.chmurka.net>
User-Agent G2/1.0
MIME-Version 1.0
Message-ID <b861f107-de90-4db7-8b82-2473d6bfb4e2@googlegroups.com> (permalink)
Subject Re: Jak skutecznie odczytać wolne miejsce w buforze nadawczym portu szeregowego?
From spryciarzsprytny7@gmail.com
Injection-Date Wed, 11 Jul 2018 18:05:59 +0000
Content-Type text/plain; charset="UTF-8"
Content-Transfer-Encoding quoted-printable
Lines 32
Xref csiph.com pl.comp.os.linux.programowanie:2121

Show key headers only | View raw


Dzięki za odpowiedź. Skomentuję twoją odpowiedź, bo mam wątpliwości.

> 3. Jak select() zwróci writability to wyślij całą kolejkę do write() 
>    (ale nie więcej, niż SSIZE_MAX bajtów)

Bufor portu szeregowego w Linux-e to 4KB. Przynajmniej bufor wejściowy tyle ma... Natomiast SSIZE_MAX to 9223372036854775807 (w Kubuntu 18.10 jaki mam pod ręką - podejrzewam, że na Raspbianie jest podobnie bo to też 64 bitowy system - mogę to jutro sprawdzić). Tak więc ZCW te twoje zastrzeżenie w nawiasie jest bez sensu, bo SSIZE_MAX jest dużo większa od całej pamięci operacyjnej...

Poza tym nawet gdyby założyć, że SSIZE_MAX ma wielkość bufora to i tak nie o to mi chodzi, bo ja chcę wykorzystać bufor Linux-a do ciągłej transmisji (w tym celu też robię obsługę zapisu i odczytu w 2 wątkach). Bardzo mi zależy na tym, by zrobić obsługę portu szeregowego porządnie i by byłą uniwersalna i wydajna. Tak by był sens użycia jej do innych projektów...

Póki tego nie wyjaśnisz, to nie będę niczego zmieniał, bo jak pisałem, zapis po jednym bajcie z uprzednim sprawdzeniem pselect działa bez zarzutu...

W sumie to nie wiem co widzisz w tym złego (w zapisie bajt po bajcie), skro jest powiedziane (przez inne guru - link w mojej poprzedniej wypowiedzi), że w Linux-ie port szeregowy to urządzenie znakowe, a nie blokowe - przez to nie ma buforów i zapis i odczyt odbywa się po jednym znaku (tak działa też klawiatura i mysz). W sumie trochę tego nie jarzę, bo można sprawdzić ile danych jest do odczytu, a nie wiadomo ile można wysłać...

Back to pl.comp.os.linux.programowanie | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Jak skutecznie odczytać wolne miejsce w buforze nadawczym portu szeregowego? spryciarzsprytny7@gmail.com - 2018-07-10 09:54 -0700
  Re: Jak skutecznie odczytać wolne miejsce w buforze nadawczym portu szeregowego? spryciarzsprytny7@gmail.com - 2018-07-11 02:07 -0700
    Re: Jak skutecznie odczytać wolne miejsce w buforze nadawczym portu szeregowego? spryciarzsprytny7@gmail.com - 2018-07-11 11:17 -0700
  Re: Jak skutecznie odczytać wolne miejsce w buforze nadawczym portu szeregowego? gof@somewhere.invalid (Adam Wysocki) - 2018-07-11 12:46 +0000
    Re: Jak skutecznie odczytać wolne miejsce w buforze nadawczym portu szeregowego? spryciarzsprytny7@gmail.com - 2018-07-11 11:05 -0700
      Re: Jak skutecznie odczytać wolne miejsce w buforze nadawczym portu szeregowego? gof@somewhere.invalid (Adam Wysocki) - 2018-07-11 19:45 +0000
        Re: Jak skutecznie odczytać wolne miejsce w buforze nadawczym portu szeregowego? szykcech@gmail.com - 2018-07-13 11:11 -0700

csiph-web