预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共16页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)国家知识产权局(12)发明专利申请(10)申请公布号CN114996030A(43)申请公布日2022.09.02(21)申请号202210631609.3(22)申请日2022.06.06(71)申请人中国银行股份有限公司地址100818北京市西城区复兴门内大街1号(72)发明人姚钰宸李嘉铭韩笑孙晨菲汲美辰(74)专利代理机构北京集佳知识产权代理有限公司11227专利代理师杨傥月(51)Int.Cl.G06F9/52(2006.01)G06F9/54(2006.01)G06F11/30(2006.01)权利要求书2页说明书8页附图5页(54)发明名称基于EPOLL的IO多路复用伪终端的实现方法、装置及设备(57)摘要本申请公开了一种基于EPOLL的IO多路复用伪终端的实现方法、装置及设备,可应用于大数据领域以及金融领域,能够利用伪终端保证客户端并发读写的正确性,并提高系统资源利用率。该方法包括:首先在客户端输入和服务端输出时获取文件锁,然后利用Linux文件的管道机制,将目标伪终端的输入映射到服务端的输出、目标伪终端的输出映射到服务端的输入,接着利用Linux内核的Hook机制,将目标伪终端的负责监听输入的回调函数注册到服务端,并在拦截客户端输入后将获取的输入当作命令行进行解析,以传送给Shell应用程序执行相应的操作,进而利用EPOLL机制对客户端的输入和服务端的输出进行监听,并将应用程序执行指令返回的结果和服务端的输出传输给对应的客户端进行回显。CN114996030ACN114996030A权利要求书1/2页1.一种基于EPOLL的IO多路复用伪终端的实现方法,其特征在于,所述方法包括:在客户端输入和服务端输出时获取文件锁,以保证并发读写时输入输出的顺序;利用Linux文件的管道机制,将目标伪终端的输入映射到服务端的输出,以及将所述目标伪终端的输出映射到服务端的输入,实现对服务器和客户端之间输入输出的中继处理;利用Linux内核的Hook机制,将所述目标伪终端的负责监听输入的回调函数注册到服务端,以实现对客户端输入的拦截,并在拦截后将获取的输入当作命令行进行解析,以传送给Shell应用程序执行相应的操作;利用EPOLL机制对客户端的输入和服务端的输出进行监听,并通过预设传输方式,将应用程序执行指令返回的结果和服务端的输出传输给对应的客户端进行回显,以实现IO多路复用。2.根据权利要求1所述的方法,其特征在于,所述在客户端输入和服务端输出时获取文件锁之后,所述方法还包括:若获取锁成功,则将自身进程的PID写入锁文件后给文件加互斥锁;或者,若获取锁失败,则所述目标伪终端将设置客户端的输入进程进入阻塞状态,等待锁的释放,直到指令被捕获并解析完毕,所述目标伪终端的进程才会释放文件锁,以确保同一时刻只执行一个客户端的指令。3.根据权利要求1所述的方法,其特征在于,所述在拦截后将获取的输入当作命令行进行解析之后,所述方法还包括:若解析失败,则通过Linux终端继续进行解析;或者,若解析成功,则会调用指令对应的回调函数,将所述指令传给Shell应用程序执行相应的操作,并将操作执行的结果再次捕获,并输出到所述目标伪终端的输出文件区。4.根据权利要求1‑3任一项所述的方法,其特征在于,所述利用EPOLL机制对客户端的输入和服务端的输出进行监听,并通过预设传输方式,将应用程序执行指令返回的结果和服务端的输出传输给对应的客户端进行回显,以实现IO多路复用,包括:利用EPOLL机制对客户端的输入和服务端的输出进行监听,并通过水平触发的方式,将应用程序执行指令返回的结果和服务端的输出传输给对应的客户端进行回显,以实现IO多路复用。5.一种基于EPOLL的IO多路复用伪终端的实现装置,其特征在于,所述装置包括:获取单元,用于在客户端输入和服务端输出时获取文件锁,以保证并发读写时输入输出的顺序;映射单元,用于利用Linux文件的管道机制,将目标伪终端的输入映射到服务端的输出,以及将所述目标伪终端的输出映射到服务端的输入,实现对服务器和客户端之间输入输出的中继处理;解析单元,用于利用Linux内核的Hook机制,将所述目标伪终端的负责监听输入的回调函数注册到服务端,以实现对客户端输入的拦截,并在拦截后将获取的输入当作命令行进行解析,以传送给Shell应用程序执行相应的操作;回显单元,用于利用EPOLL机制对客户端的输入和服务端的输出进行监听,并通过预设传输方式,将应用程序执行指令返回的结果和服务端的输出传输给对应的客户端进行回显,以实现IO多路复用。2CN114996030A权利要求书2/2页6.根据权利要求5所述的装置,其特征在于,所述装置还包括:第一处理单元,用于在客户端输入和服务端输出时获取文件锁之后,若获取锁成功,则将自身进程的PID