Перейти к содержанию
    

superdetka

Участник
  • Постов

    215
  • Зарегистрирован

  • Посещение

Весь контент superdetka


  1. Добрый день, Не подскажете как вывести какой либо текст поверх всего в Windows? Поверх всего: вывод текущего времени в каком нибудь углу, который будет отображаться (не перекрываться другими окнами) не зависимо что будет запускаться в системе. Конкретный пример: вывод времени текущего и запуск игры, чтобы игра не закрывала вывод времени. windows 7
  2. Если кто озадачится таким же вопросом, то решил сделать с помощью ethernet usb адаптера на базе чипа типа ASIX AX88XXX. Драйверы идут на >= 2.6.14. Я взял apple брелок с ASIX AX88772. Встал на 2.6.32 ровно, без каких либо проблем. Драйвер идет на основе usbnet прослойки, упомянутой выше.
  3. Пока надумываю организовать это дело через usb ethernet брелок. На тек момент по моим знаниям хост-хост соединить нельзя два usb устройства. Нужен usb-usb bridge, которые по моим поискам в меньшей доступности в России чем usb ethernet. С последним брелком тогда вообще менять ничего не надо, только http сервер заставить слушать на usb network interface'е.
  4. Если использовать usbnet нужен ли какой нибудь кабель? usb bridge?
  5. Еще подумал, что usb вроде имеет режимы работы типа "master slave". Получается PC работает в master и плата тоже. Или контроллер может работать и так и так, если подхимичить. И на какой стороне химичить? Или какой то брелок нужен между ними На плате usb мама. Это имеет значение? И нужно будет обязательно подключать к плате хаб для отладки usb устройств.
  6. Добрый день, Возникла задача организовать взаимодействие между платой (с usb разъемом и linux(2.6) на борту) и PC. Взаимодействие в плане посылка команд на плату и получение ответа. Это нужно для отладки ПО, которое крутится на плате. Изначально команды посылались по сети. На плате запущен http сервер и принимал запросы от PC. Но понадобилось отлаживать и сеть. И хочу найти способ отладки через usb. Но в то же время не переписывать ПО на плате по приему через http сервер этих команд. В голове крутится мост: по usb приходит команда на плату-> там как то это ловится и в user space открывается сокет и пишет на тот http сервер. По этому usb предполагается использоваение и других устройств через хаб. Сможно ли черещ один usb скоммутировать и отсылку команд и работу других устройств? Не могли вы подсказать как это организовать и с названием ПО для этой организации? libusb я как то работал, но тонкостей usb протокола и самой библиотеки мало знал и уже забыл. Помогите с решением и какими то подсказками. Спасибо.
  7. А если раздобыть бинарник под х86, сможет ли это улучшить ситуацию? С ассемблером можно разобраться
  8. Добрый день! Столкнулся с тем, что очень хочется узнать алгоритм работы одной программы. Программа в виде бинарника под arm linux, stripped. Так как я не на ты с ассемблером, тем более под arm, то есть ли какие то программы(бесплатные) для перевода в си или псевдо какой то язык, чтобы ни читать ассемблер? Или другой вариант, я прогнал бинарник через strings, и обнаружил логи той части программы, которая мне интересна. Можно ли хотя бы через gdb и ассемблер, найти функцию где скорее всего вызывается printf() c адресом того сторокого литерала(лога)который мне нужен, чтобы не читать весь код? Или можно подсказать, что еще можно сделать. Я в этих делал не силен, поэтому тут. Спасибо.
  9. Извините за наглость конечно, но эти подсказанные фильтры подошли более чем и не могу не спросить, можно ли как-нибудь выявлять такие резкие переходы? допустим в последовательности из 5 отсчетов 1 1 6 1 1 выявить возрастающий перепад, определить что он возрастающий или убывающий, и определить что в посдедовательности нет скачков. Также достаточно названия метода, способа.
  10. спасибо, если будут еще предложения, то буду рад.
  11. Добрый день! Я извиняюсь, если не в тот раздел написал, но называется "Математика" и думаю что вопрос к ней относится. Есть проблема, что при скачивании данных из ip сети значение битрейта скачивания может скакать очень сильно. Например в цифрах, 1 мбит -> 1 мбит -> 6 мбит -> 1 мбит. Я ищу метод который высчитывает среднее по n-значениям но с убиранием этого пика в 6 мбит. Чтобы он на результат не сильно влиял. Что искать в сети? Как называется какой нибудь из методов , который это решает? Спасибо!
  12. Не до конца уверен в том что говорю, но под Linux можно сделать соответствие между именем и устройством с помощью udev, если устройства втыкаются каждый раз в один и тот же физ порт. Или был вариант несколько модемов с интерфейсом com over usb, в системе они могли возникнуть с другими именами нежели забиты строкой в программе. был вариант отправлять команду вроде version и парсить ответ и определять кто есть кто. но под линукс должен уметь все делать udev. под windows не знаю, но сколько программ не видел (с gui, пользователь взаимодействует с по) везде вручную выбирался ком порт.
  13. Просто тогда pthread_cancel может прервать вызов библиотеки в середине. Нет гаранитии 100 %, что вызов не меняет какие структуры , какие будут использоваться при освобождении. Вдруг cancel прервет как раз в этом момент, и при lib::free() приложение рухнет.
  14. Давайте я расскажу ход моих мыслей, когда я читал ваши ответы. Здесь вы сказали, что код дочернего потока делать не блокируемым это не вариант. Дальше вы пишите. С этим я соглашусь. Эту мысль я отразил в своей фразе ...Вроде как напрашивается только одно решение Затем. То есть вы предложили вариант, который отвергли в предыдущем сообщении. Так же я писал. Вот об этом и вопрос. О конктретной части правда, как в функции stop() реализовать корректый останов потока? Вы написали кусок текста про работу с потоками, который не содержал ответа на вопрос. Тут либо я тугой, либо кто то другой. Если я, то признаю , если будут аргументы.
  15. Вы наверно невнимательно прочитали тему. Вы дали "пример" функций о реализации которых тема и заводилась. Как вы сами описали, что эти функции часть api библиотеки. Где же место пользовательскому коду здесь?) Согласен с ситауцией допустим воспроизведение видео файла lib::start("file_path"); lib::stop(); Но такой простой api почти всегда не прокатывает. Такие функции носят больше reference характер, чем использование в рабочем коде. Также не все библиотеки имеют такой реферс. Всегда приходится реализовывать их самому. Вот об этом и вопрос. О конктретной части правда, как в функции stop() реализовать корректый останов потока?
  16. а не будет ли это одно и тоже, что и освободить ресурсы в обработчиках при завершении? Явный контекст потока , вы имели ввиду, что ясно представлять код? Вроде как напрашивается только одно решение: делать код потока неблокируемым.
  17. pthread_cancel() доходит до потока когда он натыкается на cancellation point и поток завершается после этой точки, можно добавить обработчики на выходе. Но если используется сторонняя библиотека и один из ее вызовов прервется на середине выполнения при cancel(), откуда знать что она не рухнет, когда в обработчике будет происходит освобождение ее ресурсов. Тоже самое с сигналом и его обработчиком. Или хорошая библиотека не должна так делать?) В функциях может стоять if (errno == EINTR)
  18. Добрый день! Не подскажите с реализациями завершения потоков? Как обработать такую ситуацию : дочерний поток висит на вызове блокируемой функции из third-party библиотеки. Родительский поток хочет его завершить. Как сделать? Учитывать корректное освобождение ресурсов. Api: pthread, система: Linux Спасибо!
  19. я выше уже написал про хедер вендора.
×
×
  • Создать...