免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3651 | 回复: 6
打印 上一主题 下一主题

[FreeBSD] 如何在内核中打开一个文件并取得其文件描述符 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-06-11 15:51 |只看该作者 |倒序浏览
请教大家,内核中打开一个文件并取得该文件的描述符是哪个函数?谢谢相告 !

论坛徽章:
2
技术图书徽章
日期:2013-09-04 15:21:51酉鸡
日期:2013-11-01 21:20:20
2 [报告]
发表于 2007-06-11 16:04 |只看该作者
你的真实意图是什么呢?

论坛徽章:
0
3 [报告]
发表于 2007-06-11 17:06 |只看该作者
原帖由 mirnshi 于 2007-6-11 16:04 发表
你的真实意图是什么呢?

打算利用Unix域协议实现内核与用户进程通信,在它们之间传送文件描述符,但这样就得在内核中打开文件并创送文件描述符,现在结果是内核可以发送文件描述符,用户态也可以接受到文件描述符,但如果用户程序使用该描述符,进程就自动中止,用dmesg查看,是该进程接受到了一个11号信号而终止的,我怀疑是内核中使用了一个不正确的打开函数,现在真是一愁莫展。帮小弟分析一下啊!

论坛徽章:
2
亥猪
日期:2014-03-19 16:36:35午马
日期:2014-11-23 23:48:46
4 [报告]
发表于 2007-06-11 17:19 |只看该作者
内核管理的是系统的描述符,用户级进程是进程可见得的描述符...不一样的说.

具体可以去kern/kern_descrip.c 里面看看. 这个文件的作用是内核管理系统的描述符.

论坛徽章:
0
5 [报告]
发表于 2007-06-11 17:21 |只看该作者
原帖由 大漠guyan 于 2007-6-11 17:06 发表

打算利用Unix域协议实现内核与用户进程通信

汗……我怎么听着挺玄的。。。

论坛徽章:
2
技术图书徽章
日期:2013-09-04 15:21:51酉鸡
日期:2013-11-01 21:20:20
6 [报告]
发表于 2007-06-11 20:08 |只看该作者
原帖由 大漠guyan 于 2007-6-11 17:06 发表

打算利用Unix域协议实现内核与用户进程通信,在它们之间传送文件描述符,但这样就得在内核中打开文件并创送文件描述符,现在结果是内核可以发送文件描述符,用户态也可以接受到文件描述符,但如果用户程序使用该 ...

为啥不自己创建一个设备文件,方便内核和用户层交互?你可以参考ipmon的实现

论坛徽章:
0
7 [报告]
发表于 2007-06-12 09:27 |只看该作者
freebsd下面可以使用域协议实现通信么?我知道linux那个是很方便,以前做freebsd的时候调研好像发现freebsd没这个玩意。可能是我的版本太老,我用的是4.11
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP