реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Открытие COМ-порта
eugen_pcad_ru
сообщение Oct 6 2011, 10:06
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 642
Регистрация: 15-11-07
Пользователь №: 32 353



Всем доброго времени суток!
Разбираюсь сейчас с сом-портом, в связи с чем возник вопрос (программный):
Почему во всех реализациях объем буфера приема/передачи не более 4096 байт?
И к каким последствиям может привести увеличение этого значения до, скажем, 2^31 байт? В разных ОС и на разном железе.
Кто-нибудь сталкивался?

Всем спасибо!


--------------------
Правильно сформулированый вопрос содержит в себе половину ответа.
P.S.: Некоторые модераторы в качестве ответа так навязчиво предлагают посетить свой сайт, что иначе как саморекламу такие действия интерпретировать сложно.
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Oct 6 2011, 10:53
Сообщение #2


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Можете вообще без буфера обходиться, если обработка одного символа меньше периода поступления этих самых символов.

Если же вы не знаете, сколько времени уйдет на обработку (например, работаете по ОС нереального времени), то следует сделать буфер, который позволит увеличить допустимое время реакции.

Делать буфер гигабайт - можно.


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
Xenia
сообщение Oct 6 2011, 11:00
Сообщение #3


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(eugen_pcad_ru @ Oct 6 2011, 14:06) *
Разбираюсь сейчас с сом-портом, в связи с чем возник вопрос (программный):
Почему во всех реализациях объем буфера приема/передачи не более 4096 байт?

Жаль, что вы не пишите, к какой операционной системе относится ваш вопрос. Например, в Windows буфера на ввод и вывод совершенно точно можно увеличить до 64 KB - 2 (ограничение, по-видимому, связано с особенностями контроллера DMA). Хотя не исключено, что в новых версиях это ограничение уже отменено. По крайней мере здесь - http://msdn.microsoft.com/en-us/library/wi...9(v=vs.85).aspx - о верхней границе размера буфера ничего не сказано. Но из своего (горького sm.gif) опыта знаю, что задание нечетного числа байт для буферов приводит к ошибке.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 08:36
Рейтинг@Mail.ru


Страница сгенерированна за 0.01333 секунд с 7
ELECTRONIX ©2004-2016