OSX上来自x86_64的mmap

时间:2015-02-06 11:00:14

标签: macos mmap

我一遍又一遍地尝试了这个并且看了一个小C版本的反汇编工作正常但是试图分配这个小块的内存会一直返回'9'?有人能看出我做错了什么,谢谢。

movl    $0x0, %edi
movl    $0x4000, %esi           ## imm = 0x4000
movl    $0x3, %edx
movl    $0x1002, %ecx           ## imm = 0x1002
movq    $-0x1, %r8
movl    $0x0, %r9d
movl    $0x20000c5, %eax        ## imm = 0x20000C5
syscall

此致

克里斯

1 个答案:

答案 0 :(得分:3)

好的,我发现了问题,如果使用系统调用,则需要传递r10而不是rcx!从C开始,反汇编使用rcx,因为它不直接调用系统调用!

希望这有助于其他人。

克里斯