Which one to use Cross Memory Attach or ptrace?
Clash Royale CLAN TAG#URR8PPP
I'm trying out ptrace system calls, I just discovered Cross Memory Attach from Christopher Yeoh.
I wonder which one is better in term of performance between Cross Memory Attach and ptrace.
Thanks in advance
process memory strace ptrace
add a comment |
I'm trying out ptrace system calls, I just discovered Cross Memory Attach from Christopher Yeoh.
I wonder which one is better in term of performance between Cross Memory Attach and ptrace.
Thanks in advance
process memory strace ptrace
1
use both -- they're not equivalent. use ptrace() to control the process and process_vm_*() instead of PTRACE_PEEK or POKE.
– mosvy
Feb 25 at 10:01
1
you can also use/proc/PID/mem
, but since there's no multi-pread() or multi-pwrite(), the process_vm_*() funcs are nicer, even if the rationale for their existence is not convincing ;-)
– mosvy
Feb 25 at 10:09
Thank you very much @mosvy, why process_vm_*() is nicer for read & write than ptrace with PEEK and POKE please ? :)
– Pierre Le Guen
Feb 25 at 10:17
1
I was saying that process_vm_*() are nicer than pread, pwrite, readv, etc on /proc/pid/mem. Their advantage vs ptrace_peekdata or pokedata is obvious -- the latter can only transfer one word at a time. I suggest you try them insyead of doing a dry assessment.
– mosvy
Feb 25 at 10:26
add a comment |
I'm trying out ptrace system calls, I just discovered Cross Memory Attach from Christopher Yeoh.
I wonder which one is better in term of performance between Cross Memory Attach and ptrace.
Thanks in advance
process memory strace ptrace
I'm trying out ptrace system calls, I just discovered Cross Memory Attach from Christopher Yeoh.
I wonder which one is better in term of performance between Cross Memory Attach and ptrace.
Thanks in advance
process memory strace ptrace
process memory strace ptrace
asked Feb 25 at 9:44
Pierre Le GuenPierre Le Guen
185
185
1
use both -- they're not equivalent. use ptrace() to control the process and process_vm_*() instead of PTRACE_PEEK or POKE.
– mosvy
Feb 25 at 10:01
1
you can also use/proc/PID/mem
, but since there's no multi-pread() or multi-pwrite(), the process_vm_*() funcs are nicer, even if the rationale for their existence is not convincing ;-)
– mosvy
Feb 25 at 10:09
Thank you very much @mosvy, why process_vm_*() is nicer for read & write than ptrace with PEEK and POKE please ? :)
– Pierre Le Guen
Feb 25 at 10:17
1
I was saying that process_vm_*() are nicer than pread, pwrite, readv, etc on /proc/pid/mem. Their advantage vs ptrace_peekdata or pokedata is obvious -- the latter can only transfer one word at a time. I suggest you try them insyead of doing a dry assessment.
– mosvy
Feb 25 at 10:26
add a comment |
1
use both -- they're not equivalent. use ptrace() to control the process and process_vm_*() instead of PTRACE_PEEK or POKE.
– mosvy
Feb 25 at 10:01
1
you can also use/proc/PID/mem
, but since there's no multi-pread() or multi-pwrite(), the process_vm_*() funcs are nicer, even if the rationale for their existence is not convincing ;-)
– mosvy
Feb 25 at 10:09
Thank you very much @mosvy, why process_vm_*() is nicer for read & write than ptrace with PEEK and POKE please ? :)
– Pierre Le Guen
Feb 25 at 10:17
1
I was saying that process_vm_*() are nicer than pread, pwrite, readv, etc on /proc/pid/mem. Their advantage vs ptrace_peekdata or pokedata is obvious -- the latter can only transfer one word at a time. I suggest you try them insyead of doing a dry assessment.
– mosvy
Feb 25 at 10:26
1
1
use both -- they're not equivalent. use ptrace() to control the process and process_vm_*() instead of PTRACE_PEEK or POKE.
– mosvy
Feb 25 at 10:01
use both -- they're not equivalent. use ptrace() to control the process and process_vm_*() instead of PTRACE_PEEK or POKE.
– mosvy
Feb 25 at 10:01
1
1
you can also use
/proc/PID/mem
, but since there's no multi-pread() or multi-pwrite(), the process_vm_*() funcs are nicer, even if the rationale for their existence is not convincing ;-)– mosvy
Feb 25 at 10:09
you can also use
/proc/PID/mem
, but since there's no multi-pread() or multi-pwrite(), the process_vm_*() funcs are nicer, even if the rationale for their existence is not convincing ;-)– mosvy
Feb 25 at 10:09
Thank you very much @mosvy, why process_vm_*() is nicer for read & write than ptrace with PEEK and POKE please ? :)
– Pierre Le Guen
Feb 25 at 10:17
Thank you very much @mosvy, why process_vm_*() is nicer for read & write than ptrace with PEEK and POKE please ? :)
– Pierre Le Guen
Feb 25 at 10:17
1
1
I was saying that process_vm_*() are nicer than pread, pwrite, readv, etc on /proc/pid/mem. Their advantage vs ptrace_peekdata or pokedata is obvious -- the latter can only transfer one word at a time. I suggest you try them insyead of doing a dry assessment.
– mosvy
Feb 25 at 10:26
I was saying that process_vm_*() are nicer than pread, pwrite, readv, etc on /proc/pid/mem. Their advantage vs ptrace_peekdata or pokedata is obvious -- the latter can only transfer one word at a time. I suggest you try them insyead of doing a dry assessment.
– mosvy
Feb 25 at 10:26
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "106"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f502823%2fwhich-one-to-use-cross-memory-attach-or-ptrace%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Unix & Linux Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f502823%2fwhich-one-to-use-cross-memory-attach-or-ptrace%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
use both -- they're not equivalent. use ptrace() to control the process and process_vm_*() instead of PTRACE_PEEK or POKE.
– mosvy
Feb 25 at 10:01
1
you can also use
/proc/PID/mem
, but since there's no multi-pread() or multi-pwrite(), the process_vm_*() funcs are nicer, even if the rationale for their existence is not convincing ;-)– mosvy
Feb 25 at 10:09
Thank you very much @mosvy, why process_vm_*() is nicer for read & write than ptrace with PEEK and POKE please ? :)
– Pierre Le Guen
Feb 25 at 10:17
1
I was saying that process_vm_*() are nicer than pread, pwrite, readv, etc on /proc/pid/mem. Their advantage vs ptrace_peekdata or pokedata is obvious -- the latter can only transfer one word at a time. I suggest you try them insyead of doing a dry assessment.
– mosvy
Feb 25 at 10:26