Написание приостановленной программы в Linux

Программы, зависящие от физического времени, такие как jackd и его клиенты, не очень хорошо работают с программным обеспечением для переноски ноутбука в Linux. Я хотел бы исправить клиента, который начинает выдавать множество «временных ошибок», позволяя ему отключиться, прежде чем программное обеспечение приостановит и снова подключится к возобновлению. Можно ли это сделать с клиента, без необходимости настройки системы? Я знаю, что могу убить программу, отредактировав системные скрипты, но есть ли интерфейс в Linux, чтобы ждать приостановки событий напрямую и без прав root? Знаете ли вы о программах, которые зависят от физического времени, но дескриптор правильной обработки?

  • Ограничить доступ к файлам только для добавления
  • Процессы дочернего процесса Linux не отбираются
  • Определение разницы в датах в формате «% Y% m% d% H% M% S»
  • Как правильно рекурсивно редактировать файлы (включая скрытые директории)
  • Как проверить подстроку в shell script bash?
  • Могут ли правила iptables манипулировать наборами IP-адресов?
  • Был ли «diff» включен в первую версию Linux?
  • практическое использование файла / etc / networks
  • В системной памяти ... в частности, разница между `tmpfs,` `shm,` и `hugepages ...`
  • Chrome не открывает веб-сайты Https
  • Сохранять прокрутку на консоли консоли Linux
  • Переключить пользователя на root и выполнить выполнение остальной части скрипта
  • One Solution collect form web for “Написание приостановленной программы в Linux”

    Если программа зависит от физического времени, она должна периодически проверять часы. Если это не программа реального времени, работающая на версии Linux с патчами ядра для гарантий реального времени, процесс может быть остановлен от выполнения в течение произвольного периода времени планировщиком. Процесс также может быть остановлен сигналом STOP (он может знать об этом, поставив обработчик на сигнал CONT, отправленный для его возобновления).

    Если программное обеспечение просто должно знать, что прошло много времени, он может поставить таймер, чтобы разбудить его. Однако пример, который вы даете, должен знать больше, чем это: например, он должен знать о изменениях конфигурации сети. Для такой программы подключение к событиям приостановки / возобновления системы предоставляет больше информации, чем просто обнаружение пропусков.

    При подключении к событиям приостановки / возобновления системы требуются либо привилегии root, либо запуск внутри сеанса с доступом D-Bus. (Я не знаю, какие события D-Bus вам нужно подписаться.)

    Приобретение событий приостановки / возобновления системы имеет то преимущество, что вы можете запускать код на приостановке, а не только на резюме.

    Linux и Unix - лучшая ОС в мире.