中断系统调用posix_memalign

时间:2011-04-15 10:03:23

标签: c linux memory-management

我使用posix_memalign获得此异常。知道为什么我们得到它吗?

提前致谢。

2 个答案:

答案 0 :(得分:0)

系统调用中断通常是系统调用中断的结​​果。换句话说,进程正在执行调用时接收信号。

答案 1 :(得分:0)

问题得到解决:问题是对齐边界应该是2和sizeof(void *)的倍数。所以如果posinter size是4个字节,那么第二个参数应该是4,8,16等。而不是我把它作为2的倍数,因此它崩溃了。

Wrong usage: crashes
posix_memalign(&addr, 2, 8);

Correct usage:
 posix_memalign(&addr, 4, 8); // Second argument multiple of void* and 2