Получение процесса программы (Service и Daemon) в Linux на C - PullRequest
2 голосов
/ 05 января 2009

Я хотел бы знать, как можно создать приложение, которое запускается в фоновом режиме. В настоящее время я создаю веб-сервер на C в виде небольшого проекта для изучения старого программирования на C и Linux. Но моя текущая проблема:

  • Как узнать номер текущего процесса?

Я хочу получить это, потому что когда я запускаю процесс, я хочу отобразить номер процесса для пользователя, который запускает службу.

  • Моя вторая проблема: как запустить приложение в качестве демона для запуска в фоновом режиме?

Любые ссылки, учебные пособия и / или видео о том, как я это делаю, приветствуются!


Может быть, мне было немного неясно; Я хочу получить идентификатор процесса из C. Итак, мне нужно создать сценарий оболочки для моего приложения или я могу сделать это из C?

Ответы [ 2 ]

5 голосов
/ 05 января 2009
  1. Чтобы получить идентификатор запущенного процесса, используйте функцию getpid().
  2. Чтобы создать демон, т.е. отдельный процесс, работающий в фоновом режиме, следуйте этим инструкциям .
1 голос
/ 05 января 2009

В * nix, получите идентификатор процесса с ps или если вы знаете имя процесса, наберите

ps aux | grep processname

А для запуска любой программы в качестве демона используйте nohup

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...