一种Linux内核接管socket链接的方法和装置的制造方法_2

文档序号:9217040阅读:来源:国知局
Linux内核,
[0030]Linux内核根据socket链接的标识符,借助Linux内核中的fget函数接口获得并标记此socket链接在Linux内核中使用;
[0031]利用close函数接口关闭Linux用户空间的socket,即完成了 socket链接从Linux用户空间向Linux内核空间的转移。
[0032]参考图3,完成socket链接从Linux用户空间向Linux内核空间的转移后,socket链接在Linux内核空间承担数据传输任务。
[0033]进一步地,利用Linux内核中socket链接的数据发送和接收函数接口,进行Linux内核空间的数据通信。
[0034]按照以上描述,在Linux用户空间完成socket链接的创建、协商、认证等链路管理工作,然后把此安全可信赖的socket链接下发到Linux内核空间,Linux内核接管socket链接后,Linux用户空间即可关闭socket链接,即完成了 socket链接从Linux用户空间到Linux内核空间的转移,之后Linux内核便可以自由的使用socket链接传输数据,执行Linux内核数据在控制器之间的通信了。
[0035]图4示出了根据本发明的一实施例的一种Linux内核接管socket链接的装置。该装置400,包括socket链接建立单元402,socket链路管理单元404,socket链接接管单元406,数据传输单元408。
[0036]socket链接建立单元402,用于在分布式设备的多个控制器或主机之间于用户空间建立socket链接。所述控制器或主机运行Linux操作系统。
[0037]socket链路管理单元404,用于在用户空间完成socket链接的协商和认证等链路管理工作。
[0038]进一步地,当所述协商和认证是在内核空间有数据需要传输时进行的。
[0039]socket链接接管单元406,用于设置socket链接的内核接管。
[0040]进一步地,通过如下步骤设置socket链接的内核接管:
[0041]将Linux用户空间的socket链接的标识符传递到Linux内核,
[0042]Linux内核根据socket链接的标识符,借助Linux内核中的fget函数接口获得并标记此socket链接在Linux内核中使用;
[0043]利用close函数接口关闭Linux用户空间的socket,即完成了 socket链接从Linux用户空间向Linux内核空间的转移。
[0044]数据传输单元408,用于进行Linux内核空间的数据传输。
[0045]进一步地,利用Linux内核中socket链接的数据发送和接收函数接口,进行Linux内核空间的数据通信。
[0046]在示例性实施例中,装置400可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSH))、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
[0047]在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由分布式设备的控制器、主机或其他装置的处理器执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
[0048]虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
【主权项】
1.一种Linux内核接管socket链接的方法,其特征在于,包括: 在用户空间,建立socket链接; 在用户空间完成socket链路管理工作; 设置Linux内核接管socket,将socket链接下发到内核空间; 在内核中使用socket链接传输内核空间的数据。2.如权利要求1所述的方法,所述socket链路管理包括:链路协商、和/或身份认证。3.如权利要求2所述的方法,在需要内核数据传输前,进行链路协商、和/或身份认证的链路管理。4.如权利要求2或3中任一所述方法,如果链路协商、和/或身份认证不成功,则关闭socket 链接。5.如权利要求1所述的方法,所述Linux内核接管包括: 将Linux用户空间的socket链接的标识符传递到Linux内核; Linux内核根据socket链接的标识符,获得并标记此socket链接在Linux内核中使用; 关闭Linux用户空间的socket。6.如权利要求1所述的方法,所述在内核中使用socket链接传输内核空间的数据是利用Linux内核中socket链接的数据发送和接收函数接口进行的。7.一种用于Linux内核接管socket链接的装置,其特征在于,包括: socket链接建立单元402,用于在用户空间建立socket链接; socket链路管理单元404,用于在用户空间完成链路管理工作; socket链接接管单元406,用于设置socket链接的内核接管; 数据传输单元408,用于进行Linux内核空间的数据传输。8.如权利要求7所述的装置,所述socket链路管理包括:链路协商、和/或身份认证。9.如权利要求8所述的装置,在需要内核数据传输前,进行链路协商、和/或身份认证的链路管理。10.如权利要求8所述的装置,所述Linux内核接管包括: 将Linux用户空间的socket链接的标识符传递到Linux内核; Linux内核根据socket链接的标识符,获得并标记此socket链接在Linux内核中使用; 关闭Linux用户空间的socket。11.如权利要求7所述的装置,所述Linux内核空间的数据传输是利用Linux内核中socket链接的数据发送和接收函数接口进行的。
【专利摘要】本发明公开了一种Linux内核接管socket链接的方法和装置,包括在Linux用户空间创建socket链接,socket链接在Linux用户空间完成协商和认证等链路管理工作,设置Linux内核接管socket链接,Linux内核中使用socket链接传输Linux内核空间的数据。减少了Linux操作系统中socket链接资源的浪费,避免了多个socket链接相互关联的复杂性,更加符合Linux操作系统软件的设计原则。
【IPC分类】G06F9/44
【公开号】CN104932899
【申请号】CN201510377911
【发明人】李美欣, 闫永刚
【申请人】浪潮(北京)电子信息产业有限公司
【公开日】2015年9月23日
【申请日】2015年6月30日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1