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


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Zahar Kiselev                        2:5030/382.1   21 Dec 2004  22:31:06
 To : Victor Wagner
 Subject : Re: драйвер
 -------------------------------------------------------------------------------- 
 
 
 Dec 21 09:01 04, Victor Wagner wrote to Zahar Kiselev:
 
  VW>>> А кто тебе сказал, что не будет иметь смысла управлять
  VW>>> платой из скриптов на bash?  
  ZK>> Математические действия на данными в скриптах на Баше - ну
  VW> Hу не из скриптов на баше, а из скриптов на  octave.
 
 Я бы кстати не отказался, если бы в octave можно было присобачить какое-то
 удобное средство читать данные с устройства. Hо то что я нашел в качестве
 примера(чтение со звуковой карты) - ну очень топорно сделано.
 Вот если бы вкомпилировать в octave функцию, возвращающую данные с АЦП, так
 чтобы ее можно было вызывать из встроенного скриптового языка... Hо на это у
 меня не хватит квалификации - слишком велик объем исходника чтобы я в нем не
 "утонул".
 
  VW> Кроме того, задачей шелловского скрипта может быть преобразовать 
  VW> данные в формат, понимаемый каким-нибудь gnuplot.
 
 Вот как раз в процессе преобразования данных и требуются математические
 действия. Hу-ка представь медианную фильтрацию на баше? А без нее "мусорные"
 отсчеты на графике некрасиво "торчат" в стороны от основной кривой.
 Поэтому у меня есть небольшой исходник на Си, размером экрана два, который я
 почти что под каждый сеанс измерений правлю и переделываю(обычно это надо если
 датчики заменил на другие или по-другому к установке присобачил). Вот эта-то
 программка данные в порядок и приводит- используется как фильтр, напускаешь на
 файл с исходными отсчетами - получаешь другой, с обработанными. Решение может
 быть не очень эстетичное, но простое, понятное и удобное. Хотя я бы предпочел не
 Си, а паскалеподобный язык. Даже довольно хорошо знакомую мне Аду, но для нее у 
 меня под линукс нет библиотек для удобного чтения файлов(то, что прилагается к
 языку по умолчанию - прошу не предлагать). Вот в досе у меня такие библиотеки
 были, как и вообще куча полезных функций.
 
  ZK>> высокой частотой увеличение потока данных будет такое, что
  ZK>> не хватит производительности машины.  
  VW> Ой, не факт. 12 бит - 3 шестнадцатиричные цифры. Плюс один пробел. И
  VW> того четыре байта. Увеличение потока данных всего втрое. 
 
 Hу если втрое это "всего" - то я молчу:)
 
  ZK>> засунуть. А отсутствие файловой системы проблематично по
  ZK>> причине необходимости места для хранения собранных данных.
  VW> А нафига их хранить? 
 
 А чтобы с snmp и прочими предложенными сетевизмами не возиться.
 Вот когда на этот проект выделят финансирование эдак с полмиллиона - тогда можно
 будет подумать о солидном измерительном комплексе вокруг установки, 
 с передачей данных по сети и рисованием кривых на экране в реальном времени.
 Потому что ползущие по экрану кривые хорошо потенциальным заказчикам
 показывать:) А "для себя" - и нарисованного за чашкой чая после испытаний
 графика более чем достаточно.
 
  VW> Пусть двадцать таких мелких машинок по углам здания эти данные цифруют, а 
  VW> один большой сервер их тут же собирает и обрабатывает.
  VW> Я могу представить себе много случаев, когда такая система окажется
  VW> надежнее хранения данных непосредственно на месте измерения.
 
 Полностью согласен. Hо это несколько другой масштаб уже. Вот если денег дадут - 
 тогда будем подобные монстрообразные системы создавать:)
 
  VW>>> Так что чем меньше странного ты хочешь, тем лучше.  
  ZK>> В общем случае верно, но если бы автор Линукса не хотел
  ZK>> чего-то странного - он не создал бы Линукс:) 
  VW> Заметим что он не хотел странного. Он хотел под имеющееся железо
  VW> операционную систему, похожую на хорошо известный ему Unix, только
  VW> помощнее имеющегося у  него Minix, и полнее использующую возможности
  VW> железа.
 
 Заметим, что он хотел систему под свое железо вместо того, чтобы сменить железо 
 на то, которое считалось актуальным на тот момент и поставить туда единственно
 правильную ОС :-)
 
  VW> То есть он руководствовался сложившимися традициями.
 
 Hу действовал-то он правильно. Хотя и несколько нетипично для обычного человека.
 
  VW>>> Hу естественно. Это же реализации системных вызовов
  VW>>> write(2) 
  ZK>> Вот меня и заинтересовало - что будет если я его из кода
  ZK>> ядра вызову? Hаткнусь на проблему "повторной невходимости"
  ZK>> как в досе или нет? 
  VW> Боюсь что ты наткнешья на проблему  kernelspace vs userspace.
  VW> А то что из этого следует, что sys_write может привести к странным
  VW> эффектам, так как ожидает буфера отнюдь не в ядерном пространстве, не
  VW> очевидно? 
 
 А в этом месте я уже покопался. И выяснил, что с какой-то там версии ядра
 распределение и отображение памяти поменяли так, что указатель, действительный в
 пользовательском пространстве, остается таковым и в пространстве ядра.
 Как совершенно верно ранее было замечено - использовать этот эффект напрямую не 
 рекомендуется - надо проверять высвоплена эта страница или нет. А вот при
 использовании "наоборот", когда буфер находится в пространстве ядра, на
 высвопленность можно не проверять - так как ядро всегда в памяти. То есть вызову
 sys_write теперь должно быть все равно где находится подсунутый ему буфер:)
  VW> Повторной невходимости быть не может, так как система - 
  VW> многозадачная.
 
 Вот только во всяких интернетных статьях попадались намеки, что ядро внутри себя
 работает последовательно. Я не уверен в том, что правильно понял то что там было
 сказано и что сказанное имеет отношение к данному вопросу.
 
  VW> И этот самый sys_write зовет одновременно куча разных процессов.
 
 Зовет-то одновременно, а вот обрабатывается оно как?....
 И одновременные запросы можно ведь в очередь поставить...
 
 Zahar(@spbdept.rbc.ru) Остров Большой Березовый: http://birch-island.spb.ru
 
 --- Msged/LNX 6.1.1
  * Origin: N:60.17'54" E:28.39'40" (2:5030/382.1)
 
 

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

 Тема:    Автор:    Дата:  
 Re: CorelDraw   Alex Korchmar   20 Dec 2004 16:17:59 
 Re: CorelDraw   Ilya Anfimov   20 Dec 2004 17:19:29 
 драйвер   Zahar Kiselev   20 Dec 2004 17:44:22 
 Re: драйвер   Victor Wagner   20 Dec 2004 20:02:22 
 Re: драйвер   Ilya Anfimov   20 Dec 2004 21:58:28 
 Re: драйвер   Alex Korchmar   21 Dec 2004 01:09:37 
 Re: драйвер   Zahar Kiselev   21 Dec 2004 00:56:30 
 Re: драйвер   Ilya Anfimov   21 Dec 2004 03:16:00 
 Re: драйвер   Zahar Kiselev   21 Dec 2004 05:25:22 
 Re: драйвер   Ilya Anfimov   21 Dec 2004 12:32:21 
 Re: драйвер   Zahar Kiselev   22 Dec 2004 00:04:04 
 Re: драйвер   Zahar Kiselev   20 Dec 2004 22:07:18 
 Re: драйвер   Ilya Anfimov   21 Dec 2004 00:53:17 
 Re: драйвер   Zahar Kiselev   21 Dec 2004 02:49:02 
 Re: драйвер   Ilya Anfimov   21 Dec 2004 12:09:04 
 Re: драйвер   Victor Wagner   21 Dec 2004 01:13:55 
 Re: драйвер   Zahar Kiselev   21 Dec 2004 03:02:16 
 Re: драйвер   Victor Wagner   21 Dec 2004 10:01:58 
 Re: драйвер   Ilya Anfimov   21 Dec 2004 12:17:59 
 Re: драйвер   Zahar Kiselev   21 Dec 2004 22:31:06 
 Re: драйвер   Ilya Anfimov   21 Dec 2004 12:15:53 
 Re: драйвер (Offtopic)   Serg Oskin   20 Dec 2004 20:49:09 
 Re:   Zahar Kiselev   20 Dec 2004 22:41:18 
 Re:   Serg Oskin   21 Dec 2004 13:04:20 
 Re:   Zahar Kiselev   22 Dec 2004 00:09:16 
 Re:   Serg Oskin   22 Dec 2004 16:02:11 
 Re: драйвер   Ilya Anfimov   20 Dec 2004 21:20:14 
 Re: драйвер   Zahar Kiselev   20 Dec 2004 22:47:52 
 Re: драйвер   Ilya Anfimov   21 Dec 2004 01:29:02 
 Re: драйвер   Zahar Kiselev   21 Dec 2004 03:34:48 
 Re: драйвер   Ilya Anfimov   21 Dec 2004 12:26:06 
 Re: драйвер   Zahar Kiselev   21 Dec 2004 23:53:24 
 Re: драйвер   Igor Tihonov   20 Dec 2004 22:42:44 
 Re: драйвер   Ilya Anfimov   21 Dec 2004 00:57:51 
 Re: драйвер   Zahar Kiselev   21 Dec 2004 01:11:16 
 Re: драйвер   Igor Tihonov   21 Dec 2004 19:58:59 
 Re: драйвер   Igor Tihonov   21 Dec 2004 20:05:35 
 Re: драйвер   Ilya Anfimov   21 Dec 2004 22:06:43 
 Re: драйвер   Zahar Kiselev   22 Dec 2004 03:46:22 
 Re: драйвер   slava kozyrev   21 Dec 2004 11:34:50 
 Re: драйвер   Zahar Kiselev   21 Dec 2004 22:19:36 
 Re: CorelDraw   Nick Gazaloff   21 Dec 2004 03:00:14 
 Re: CorelDraw   Peter V. Chernikoff   31 Dec 2004 23:29:54 
Архивное /ru.linux/328841c88cf7.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional