т.е. какой-либо способ найти в памяти для определенного приложения нужный кусок данных и отредактировать его
>т.е. какой-либо способ найти в памяти для определенного приложения нужный кусок данных
>и отредактировать егоUnix система не даст доступ к памяти чужой программы.
Это возможно сделать только из под root'а через /dev/mem и дополинтельных средств IMHO.
допустим есть рут, как ПО нужно юзать?
>допустим есть рут, как ПО нужно юзать?Ну допустим, есть рут, есть доступ к /dev/mem. Это вся память твоего люликса. Узнай адрес приложения, и поковыряйся в памяти :-) Можешь использовать двоичный редактор :))
ну не шарю я =(
как можно узнать его адрес? biew для едита сойдёт? и собственно что редактировать?
>ну не шарю я =(
>как можно узнать его адрес? biew для едита сойдёт? и собственно что
>редактировать?Память выполняющейся программы защищена, ну не даст тебе ядро туда лазить :)) А /dev/mem - это дамп всей памяти :) Да и вообще не понимаю, зачем тебе это надо ? Ты что, debug таким образом реализовать решил ? :) Какая память, стек, динамически выделенная, глобальная память выделенная приложением ? Странные у тебя требования :)
Зато ты можешь дебажить программу, если она скомпилирована с поддержкой этого действа :) Просто почитай документацию по GDB и в бой !
P.S.: программа называется gdb. (GNU DEBUGGER)
я всего-то хочу для какой-либо программы найти текущее состотяние одной из переменных и изменить его. прога скомппилена ессесно без дебаг-мода, так что гдб тут не присунуть.вообщем в виндовсе видел такие реализации - artofmoney, omatic, etc
но как быть в линуксе - хз