Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Alex Mogilnikov                      2:5054/70      02 Jun 2006  18:21:32
 To : Alexander Kolesnikoff
 Subject : Что это?
 -------------------------------------------------------------------------------- 
 
 
 02 Jun 06 14:46, Anton Barabanov писал Alexander Kolesnikoff:
 
  >>>    sio не сломан. Возможность потеpи данных - пpинципиальное
  >>> свойство кольцевых буфеpов.
 
  AK>>    Проблема в действительности где-то очень глубоко в недрах
  AK>> ядра. И разбираться с ней мантейнер sio не хочет, тем более, что
  AK>> он сам не может у себя воспроизвести подобную ситуацию. С другой
  AK>> стороны, почему uart(4) подобной проблемой не страдает, на том же
  AK>> железе, разумеется?
 
  AB> Отмена поллинга помогла.
 
     Почему-то не получил твое письмо. Hасколько я понимаю, проблема заключается 
 в следующем: UART имеет буфер размером (обычно) 32 байта. При приеме (обычно) 16
 байт (то есть при заполнении буфера наполовину) UART генерирует запрос
 прерывания, по которому драйвер должен считать поступившие в буфер данные. Hа
 это действие у драйвера есть вполне определенный промежуток времени - время
 заполнения второй половины буфера, которое зависит от скорости поступления
 данных. Если за это время драйвер не успел прочитать поступившие данные,
 очередной принятый (33-й) байт записывается в буфер на место первого, и UART
 фиксирует ошибку. Эта проблема принципиально нерешаема в не real-time системах, 
 где не гарантируется максимальное время реакции на событие (в данном случае
 заполнение половины буфера). Тот факт, что на время реакции влияет
 включение/выключение поллинга, неудивителен, но это (как и уменьшение скорости
 приема) только снижает вероятность возникновения переполнения, но не устраняет
 его возможность.
 
 Всего наилучшего,                                 [Team PCAD 2000]
 Алексей М.
 ... Старый глюк лучше новых двух...
 ---
  * Origin: === Сисоп спит - почта идет === (2:5054/70)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Что это?   Anton Barabanov   31 May 2006 11:38:45 
 Re: Что это?   Alexander Kolesnikoff   31 May 2006 16:09:17 
 Что это?   Anton Barabanov   31 May 2006 16:34:45 
 Re: Что это?   Alexander Kolesnikoff   31 May 2006 18:01:43 
 Что это?   Anton Barabanov   31 May 2006 18:14:30 
 Re: Что это?   Alexander Kolesnikoff   31 May 2006 18:46:23 
 Что это?   Anton Barabanov   31 May 2006 18:53:52 
 Re: Что это?   Alexander Kolesnikoff   01 Jun 2006 03:59:00 
 Что это?   Anton Barabanov   01 Jun 2006 09:00:02 
 Re: Что это?   Alexander Kolesnikoff   01 Jun 2006 09:40:37 
 Что это?   Anton Barabanov   01 Jun 2006 09:58:39 
 Re: Что это?   Alexander Kolesnikoff   01 Jun 2006 12:17:05 
 Что это?   Anton Barabanov   01 Jun 2006 15:38:41 
 Что это?   Alex Mogilnikov   01 Jun 2006 13:47:25 
 Re: Что это?   Alexander Kolesnikoff   01 Jun 2006 14:53:51 
 Что это?   Anton Barabanov   02 Jun 2006 14:46:58 
 Что это?   Alex Mogilnikov   02 Jun 2006 18:21:32 
 Что это?   Alex Mogilnikov   01 Jun 2006 13:43:25 
 Что это?   Alex Masterov   01 Jun 2006 16:18:40 
 Что это?   Alex Mogilnikov   01 Jun 2006 13:40:43 
 Что это?   Alex Mogilnikov   31 May 2006 23:28:19 
 Что это?   Anton Barabanov   31 May 2006 22:41:40 
 Что это?   Alex Mogilnikov   01 Jun 2006 13:35:45 
 Что это?   Alex Mogilnikov   31 May 2006 23:02:49 
 Что это?   Alex Masterov   01 Jun 2006 10:41:44 
 Что это?   Anton Barabanov   01 Jun 2006 09:49:04 
 Что это?   Sergey Vavilov   01 Jun 2006 10:06:42 
Архивное /ru.unix.bsd/183144802ff0.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional