Определить, что ОС пошла в Suspend (из демона на с++)

Модератор: Модераторы разделов

Аватара пользователя
Spider
Сообщения: 72

Определить, что ОС пошла в Suspend

Сообщение Spider »

Всем привет!

Встала задача определить момент, когда ОС пошла в Sleep или Hibernate режимы. Подскажите как это узнать? Сигнал может какой есть? Что-то я найти не могу...

Заранее спасибо!
Спасибо сказали:
Аватара пользователя
Nazyvaemykh
Сообщения: 438
Статус: Подопытный участник

Re: Определить, что ОС пошла в Suspend

Сообщение Nazyvaemykh »

/usr/src/$(uname -r)/Documentation/power/notifiers.txt — оно или нет?
¡ Страсть к разрушению есть творческая страсть!
Спасибо сказали:
Аватара пользователя
Gineaser
Сообщения: 157
Статус: Evrashka
ОС: Arch Linux

Re: Определить, что ОС пошла в Suspend

Сообщение Gineaser »

Обезьянка видит - Обезьянка делает...
Спасибо сказали:
Аватара пользователя
Nazyvaemykh
Сообщения: 438
Статус: Подопытный участник

Re: Определить, что ОС пошла в Suspend

Сообщение Nazyvaemykh »

Насколько могу судить я, можно написать модуль ядра, который будет информировать демон…
¡ Страсть к разрушению есть творческая страсть!
Спасибо сказали:
Аватара пользователя
Spider
Сообщения: 72

Re: Определить, что ОС пошла в Suspend

Сообщение Spider »


А как отличить halt,reboot и всё остальное в таком случае?
Спасибо сказали:
Аватара пользователя
Gineaser
Сообщения: 157
Статус: Evrashka
ОС: Arch Linux

Re: Определить, что ОС пошла в Suspend

Сообщение Gineaser »

В момент выключения INIT посылает SYGTERM всем запущенным процессам. Как то так
Обезьянка видит - Обезьянка делает...
Спасибо сказали:
Аватара пользователя
Spider
Сообщения: 72

Re: Определить, что ОС пошла в Suspend

Сообщение Spider »

Nazyvaemykh писал(а):
21.05.2011 20:28
Насколько могу судить я, можно написать модуль ядра, который будет информировать демон…

а что готового ничего нет? Неужели велосипед не изобретён?
Спасибо сказали:
Аватара пользователя
Gineaser
Сообщения: 157
Статус: Evrashka
ОС: Arch Linux

Re: Определить, что ОС пошла в Suspend

Сообщение Gineaser »

как вариант могу предложить парсить syslog на момент записи завершения работы.
Обезьянка видит - Обезьянка делает...
Спасибо сказали:
Аватара пользователя
Nazyvaemykh
Сообщения: 438
Статус: Подопытный участник

Re: Определить, что ОС пошла в Suspend

Сообщение Nazyvaemykh »

Gineaser, еще можно попробовать использовать upower, проект freedesktop.org.
От него можно получить сообщение, когда система будет суспендиться. У вас на все про все роно одна секунда!
http://upower.freedesktop.org/docs/UPower....Power::Sleeping
¡ Страсть к разрушению есть творческая страсть!
Спасибо сказали:
Аватара пользователя
Spider
Сообщения: 72

Re: Определить, что ОС пошла в Suspend

Сообщение Spider »

хм... Как всё сложно то :)
Спасибо сказали:
shotdownsystem
Сообщения: 423
ОС: Basic command interpreter

Re: Определить, что ОС пошла в Suspend

Сообщение shotdownsystem »

Spider писал(а):
22.05.2011 20:36
хм... Как всё сложно то :)

если проще, то можно
1. acpid настроить/переписать
2. перемонтировать /sys/power и перенаправлять запись )
puts ("Working, please wait...");while(1);
Спасибо сказали: