【发布时间】:2011-01-28 05:49:32
【问题描述】:
我想从程序集中动态分配内存 不链接到标准 C 库的程序。 由于 brk(2) 和 sbrk(2) 在 Mac OS X (10.6.2) 上不可用, 有什么替代品?
(我猜它涉及马赫调用,但似乎 几乎没有文档)
【问题讨论】:
-
为什么不想链接到 C 库?
标签: macos assembly memory-management sbrk
我想从程序集中动态分配内存 不链接到标准 C 库的程序。 由于 brk(2) 和 sbrk(2) 在 Mac OS X (10.6.2) 上不可用, 有什么替代品?
(我猜它涉及马赫调用,但似乎 几乎没有文档)
【问题讨论】:
标签: macos assembly memory-management sbrk
可能最简单的做法是查看 Darwin sources 并了解 malloc 在内部是如何工作的。
【讨论】:
貌似malloc调用了mmap,又调用了__mmap,貌似只是一个syscall
【讨论】: