Как вызвоть демона с помощью сочетания клавиш на текучий терминал.
>Как вызвоть демона с помощью сочетания клавиш на текучий терминал.Сочетанием указательного пальца и бубном над головой ;)
ps: никак. Можно немного покурить над gdb attach
>>Как вызвоть демона с помощью сочетания клавиш на текучий терминал.
>
>Сочетанием указательного пальца и бубном над головой ;)
>
>ps: никак. Можно немного покурить над gdb attach>Вопрос остаётся открытым. Спасибо.
>Как вызвоть демона с помощью сочетания клавиш на текучий терминал.Ты демона с background process не путаешь?
>>Как вызвоть демона с помощью сочетания клавиш на текучий терминал.
>
>Ты демона с background process не путаешь?>Наверное для перехвата нажатия клавиш разницы нет.
Жду ответа (Спасибо).
А демон то свой, самописный? У меня такое предложение(стандартных средств не помню чё-то) делаешь своего демона(нужна инфа-пиши мне-отвечу) который стартует вместе с системой и читает со всех термналов, жуёт и если чего-то нашёл то может послать сигнал этому твоему демону или скормить эти нажатия кому следует. Чё-то в этом духе, а вообще лучше поискать чего-нибудь посерьёзнее по shell'ам. Хотя нет - самое хаккерское решение: качаешь bash в исходниках учишь его читать конфиг по сочетаниям клавиш сопоставленных с бинарником, который выполняет нужное дей-е(или находишь в этих исходниках таку фичу 8)). сорцы bash'а мега 3.5 кажется весят.
А демон то свой, самописный? У меня такое предложение(стандартных средств не помню чё-то) делаешь своего демона(нужна инфа-пиши мне-отвечу) который стартует вместе с системой и читает со всех термналов, жуёт и если чего-то нашёл то может послать сигнал этому твоему демону или скормить эти нажатия кому следует. Чё-то в этом духе, а вообще лучше поискать чего-нибудь посерьёзнее по shell'ам. Хотя нет - самое хаккерское решение: качаешь bash в исходниках учишь его читать конфиг по сочетаниям клавиш сопоставленных с бинарником, который выполняет нужное дей-е(или находишь в этих исходниках таку фичу 8)). сорцы bash'а мега 3.5 кажется весят.
>А демон то свой, самописный? У меня такое предложение(стандартных средств не помню
>чё-то) делаешь своего демона(нужна инфа-пиши мне-отвечу) который стартует вместе с системой
>и читает со всех термналов, жуётА не подавится со всех терминалов читать?! Вообще, ИМХО, написана полнейшая чуть не имеющая никакого отношения к изначальному вопросу.
>Как вызвоть демона с помощью сочетания клавиш на текучий терминал.Ужас, сколько же ещё народу мыслит понятиями ms-dos'ных tsr...
>>Как вызвоть демона с помощью сочетания клавиш на текучий терминал.
>
>Ужас, сколько же ещё народу мыслит понятиями ms-dos'ных tsr...>Я думаю написать скрипт, который будет посылать демону сигнал.
>А какое решение предлогаешь ты?
>>>Как вызвоть демона с помощью сочетания клавиш на текучий терминал.
>>
>>Ужас, сколько же ещё народу мыслит понятиями ms-dos'ных tsr...
>
>>Я думаю написать скрипт, который будет посылать демону сигнал.
>>А какое решение предлогаешь ты?А я придлогаю не зобыть напесать оброботчег int21h, это важно!
>>>>Как вызвоть демона с помощью сочетания клавиш на текучий терминал.
>>>
>>>Ужас, сколько же ещё народу мыслит понятиями ms-dos'ных tsr...
>>
>>>Я думаю написать скрипт, который будет посылать демону сигнал.
>>>А какое решение предлогаешь ты?
>
>А я придлогаю не зобыть напесать оброботчег int21h, это важно!
>Ассемблер это gut, но хотелось бы попроще..
А если подойти с другой стороны? Посмотрите как работает связка mysqld-mysql. Имеется некоторый демон и консольный фронтенд к нему. Связь через сокеты (tcp или unix - по усмотрению). В вашем случае фронтенд может тупо передавать демону клавиатурный ввод и выводить на терминал то что получает от демона. Правда вызываться будет не комбинацией клавиш а командой ;)
Кстати, в качестве фронтенда можно использовать обычный telnet.
>А если подойти с другой стороны? Посмотрите как работает связка mysqld-mysql. Имеется
>некоторый демон и консольный фронтенд к нему. Связь через сокеты (tcp
>или unix - по усмотрению). В вашем случае фронтенд может тупо
>передавать демону клавиатурный ввод и выводить на терминал то что получает
>от демона. Правда вызываться будет не комбинацией клавиш а командой ;)
>
>Кстати, в качестве фронтенда можно использовать обычный telnet.>Немного поменяю вопрос, Имеется демон, по определённому событию он вызывает другой исполняемый модуль :
fork()
{
exec
...
}
который каким то образом должен открыть терминал (/dev/tty)...
Как можно реализовать? Жду ответа. Спасибо.
>Немного поменяю вопрос, Имеется демон, по определённому событию он вызывает другой исполняемый модуль :
>
>fork()
>{
> exec
> ...
>}
>который каким то образом должен открыть терминал (/dev/tty)...
> Как можно реализовать? Жду ответа. Спасибо.Откройте ему псевдотерминал через openpty(). Детали работы с псевдотерминалом можете посмотреть например в исходнике утилиты script (там немного кода и очень легко разобраться). Кстати, так поступают telnetd и sshd.
>Как вызвоть демона с помощью сочетания клавиш на текучий терминал.
ну повесь его на CTRL+ALT+DEL . пропиши в иниттабе, вместо шатдауна :)
А вообще откуда такая задача? Это не виндовс с системой событий, под терминалом тут либо, IMHO, криво и сомнительно, либо тотально, но это уже пахнет оконными менеджерами. собственно в любом случае кто-то должен поверх всего софта читать с терминала. либо модуль что-ли писать, изначально в unix драйвер терминала в не 'сыром' режиме мог прежевывать по особому esc последовательности. ИМХО по-уму должна оболочка такие фичи предоставлять.
>Как вызвоть демона с помощью сочетания клавиш на текучий терминал.Что сделать ??? Это как ??? Демон писан специально что бы отвязаться от терминала, в выводит он (если что и выводит) все через syslog. а теперь вопрос. Зачем его обратно привязывать к терминалу???
чего то писать ???
или управлять ????
первое незачем
второе, для этого терминал не нужен ...странный вопрос ...
>Что сделать ??? Это как ??? Демон писан специально что бы отвязаться от >терминала, в выводит он (если что и выводит) все через syslog. а теперь >вопрос. Зачем его обратно привязывать к терминалу???
>чего то писать ???
>или управлять ????
>первое незачем
>второе, для этого терминал не нужен ...>странный вопрос ...
Да-да, внатуре! Это идет в разрез утсоями межпрочессового взаимодействия в posix системах!! 8) Да и вообще пахнет клавиатурными шпионамми. Может автору темы стоит найти именно клав. шпион для интересующей его системы?
там-то должно быть всё в лучшем виде сделано.
>>Что сделать ??? Это как ??? Демон писан специально что бы отвязаться от >терминала, в выводит он (если что и выводит) все через syslog. а теперь >вопрос. Зачем его обратно привязывать к терминалу???
>>чего то писать ???
>>или управлять ????
>>первое незачем
>>второе, для этого терминал не нужен ...
>
>>странный вопрос ...
>
>Да-да, внатуре! Это идет в разрез утсоями межпрочессового взаимодействия в posix системах!!
>8) Да и вообще пахнет клавиатурными шпионамми. Может автору темы стоит
>найти именно клав. шпион для интересующей его системы?
>там-то должно быть всё в лучшем виде сделано.> Я спросил как, а не сопутствует ли моя задача определенным стандартам.
Перед мной стоит такая задача, и скидывание инф в syslog не катит.Не понимаю, разве это трудно, захватить на время текучий терминал, или открыть его …
>> Я спросил как, а не сопутствует ли моя задача определенным стандартам.
>Перед мной стоит такая задача, и скидывание инф в syslog не
>катит.
>
>Не понимаю, разве это трудно, захватить на время текучий терминал, или открыть
>его …
>
>fork()
{
exec
...
} >> /dev/tty8Это или ?????
терминал, да нет, не трудно, главное имеет нужные права, а вот как это сделать по нажатию клавиши ...ОС то какая ?