Znak końca transmisji - End-of-Transmission character

W telekomunikacji , charakter end-of-Transmission ( EOT ) jest transmisja znak kontrolny . Jego zamierzonym zastosowaniem jest wskazanie zakończenia transmisji, która mogła zawierać jeden lub więcej tekstów oraz wszelkie powiązane nagłówki wiadomości .

EOT jest często używany do inicjowania innych funkcji, takich jak zwalnianie obwodów, odłączanie zacisków lub ustawianie zacisków odbiorczych w stan gotowości . Obecnie jego najczęstszym zastosowaniem jest spowodowanie, aby sterownik terminala uniksowego sygnalizował koniec pliku, a tym samym wychodził z programów oczekujących na dane wejściowe.

W ASCII i Unicode znak jest zakodowany w U+0004 <control-0004> . Może być określany jako Ctrl+ D, ^D w notacji z daszkiem . Unicode zapewnia znak U+2404 SYMBOL ZAKOŃCZENIA TRANSMISJI (HTML  &#9220;) w przypadku, gdy EOT ma być wyświetlany graficznie. Ponadto U+2301 ELECTRIC ARROW może być również używany jako graficzna reprezentacja EOT; jest on zdefiniowany w Unicode jako „symbol końca transmisji”.

Znaczenie w Uniksie

Znak EOT w Unix różni się od Control-Z w DOS. Bajt DOS Control-Z jest faktycznie wysyłany i/lub umieszczany w plikach, aby wskazać, gdzie kończy się tekst. W przeciwieństwie do tego Control-D powoduje, że sterownik terminala uniksowego sygnalizuje warunek EOF , który nie jest znakiem, podczas gdy bajt nie ma specjalnego znaczenia, jeśli faktycznie jest odczytywany lub zapisywany z pliku lub terminala.

W systemie Unix znak końca pliku (domyślnie EOT) powoduje, że sterownik terminala natychmiast udostępnia wszystkie znaki w swoim buforze wejściowym; normalnie kierowca zbierałby znaki, dopóki nie zobaczy znaku końca wiersza. Jeśli bufor wejściowy jest pusty (ponieważ nie wpisano żadnych znaków od ostatniego końca linii lub końca pliku), program czytający z terminala odczytuje liczbę bajtów zero. W systemie Unix taki stan jest rozumiany jako osiągnięcie końca pliku.

Można to zademonstrować za pomocą programu cat w uniksopodobnych systemach operacyjnych, takich jak Linux : Uruchom polecenie cat bez argumentów, więc przyjmuje dane wejściowe z klawiatury i wyświetla dane wyjściowe na ekranie. Wpisz kilka znaków bez naciskania ↵ Enter, a następnie wpisz Ctrl+ D. Znaki wpisane do tego momentu są wysyłane do kota, który następnie zapisuje je na ekranie. Jeśli Ctrl+ Dzostanie wpisane bez wcześniejszego wpisywania jakichkolwiek znaków, strumień wejściowy zostaje zakończony i program się kończy. Rzeczywisty EOT uzyskuje się, wpisując Ctrl+ Vnastępnie Ctrl+ D.

Jeśli sterownik terminala jest w trybie „surowym”, nie interpretuje już znaków kontrolnych, a znak EOT jest wysyłany w niezmienionej postaci do programu, który może go dowolnie interpretować. Program może wtedy zdecydować się na obsługę bajtu EOT jako wskazania, że ​​powinien kończyć tekst; byłoby to wtedy podobne do obsługi Ctrl+ Zprzez programy DOS.

Wykorzystanie w protokołach komunikacyjnych systemów komputerowych typu mainframe

Znak EOT jest używany w starszych protokołach komunikacyjnych przez producentów komputerów typu mainframe, takich jak IBM , Burroughs Corporation i BUNCH . Protokoły sterowania transmisją terminala, takie jak IBM 3270 Poll/Select lub protokół Burroughs TD830 Contention Mode, wykorzystują znak EOT do zakończenia sekwencji komunikacyjnej między dwiema współpracującymi stacjami (takimi jak multiplekser hosta lub terminal wejścia/wyjścia).

Pojedyncza operacja Poll (zapytaj stację o dane) lub Select (wyślij dane do stacji) będzie obejmować dwie operacje wysyłania i odpowiedzi w obie strony między stacją wyborczą a odpytywaną stacją, przy czym końcową operacją jest transmisja pojedynczego znaku EOT do stacji inicjującej.

Zobacz też

Bibliografia