Linux/POSIX 与 MEM_TOP_DOWN 的 VirtualAlloc 等价物是什么?

What is Linux/POSIX equivalent of VirtualAlloc with MEM_TOP_DOWN?

什么是 Linux 或 POSIX 相当于 VirtualAlloc 和 MEM_TOP_DOWN,如果有的话?

POSIX 好像没啥好说的 mmap.

The GNU C Library version of mmap (BSD libc also has these flags) 扩展了它的功能,但有一个 MAP_FIXED (在特定地址分配)和 MAP_GROWSDOWN (名称类似但 MEM_TOP_DOWN 实际上没有做这个选项)。 GNU 和 BSD 的联机帮助页都不鼓励使用这些函数,因为存在可移植性问题(您绑定到特定的 C 库,不再完全 OS 独立)。

您需要确定一种查找最高地址的方法。我建议尝试在顶部分配,并将传递的地址向下移动直到成功。步长和 "search" 算法将取决于您对精度和性能的需求。