[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
--------
По поводу не соответствия размеров буфера и пересылаемого блока.
Буфер это "бассейн" в которую заливается приходящая информация.
Если программа успевает "вычерпывать из бассейна воду" то размер блока не имеет никакого отношения к размеру буфера.
Думаю если программу запустить на 486DX33 на старом HDD и 16M памяти,
то будет происходить потеря информации.
--------
Сигнал RTS
Размер приемного и передающего буферов в последовательном порте
16 байт. Сигнал RTS может и должен выставляться не при полном заполнении а за несколько байт до этого.
В WIN при настройке удаленного соединения есть возможность выставлять этот параметр.
------
Дальше, а что будет, если в момент прихода байта в порт машина занята, например, обрабатывается более приоритетное прерывание.
Обычно драйвера защищают критические участки программ.
Так как для приема байта требуется всего несколько операторов то
ставят первую комманду запретить прерывание. При выходе из прерывания разрешают.
И более приоритетное прерывание "не отберет" процессор.
E-mail: info@telesys.ru