关于mmap()的返回值
我现在想把内核空间的一块RAM映射到用户空间,在应用程序里面使用mmap(),我看过几个例子,发现有的例子里根据mmap()返回值是否为空指针(0)来判断映射是否成功,有的例子里面根据返回值是否为(void *)-1来判断的,请问到底应该根据哪一个返回值来判断呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
man 一下看看:
On success, mmap() returns a pointer to the mapped area. On error, the value MAP_FAILED (that is, (void *) -1) is returned, and errno is set appropriately.
知道了,应该是用(void *)-1来判断
我之前在驱动版块发过一个mmap共享内存的实例,LZ可以参考一下。
直接看mmap的返回值就知道了