实现计算机设备共享的系统及其方法

文档序号:7959672阅读:199来源:国知局
专利名称:实现计算机设备共享的系统及其方法
技术领域
本发明涉及一种计算机设备管理系统及其方法,尤其是有关于一种实现计算机设备共享的系统及其方法。
背景技术
目前,档案共享可以让计算机相互传递档案数据,也可以让一台计算机的一个档案夹当作一个网络硬盘共享以供其它计算机使用。然而,这种共享被限制在档案系统的层次,于使用者,共享的是档案而非设备。因此,使用者无法对一个共享档案进行格式化等操作。
然而公知技术的这种做法仍然存有诸多缺陷,例如,当多台服务器均新增一块硬盘时,管理员需要亲自到每一台服务器前对新增的硬盘进行格式化等操作,这种方式占用管理员很多时间,降低了工作效率。
此外,一些传统设备(如,刻录机)仅可以供一台计算机使用,无法让多台计算机同时共享,降低了设备的使用效率。

发明内容
为解决上述问题,本发明的目的在于提供一种实现计算机设备共享的系统及其方法,用于在连接有多个实体设备的第一计算机和通过网络与第一计算机相连的第二计算机之间实现实体设备的共享。
本发明所提供的一种实现计算机设备共享的系统,包含服务器端管理模块,位于第一计算机,与第一计算机的第一网络接口卡以及各实体设备的驱动程序通讯,其进一步包含第一传输模块,与第一网络接口卡通讯,通过第一网络接口卡接收和发送数据,解析模块,与第一传输模块和各实体设备的驱动程序通讯,用以于接收到第二计算机发送的启始化请求后,发送一个允许共享设备列表至第二计算机,以及解析通过第一传输模块接收的数据,并将解析后的数据发送至各实体设备的驱动程序,且回复操作结果至第二计算机,以及身份验证模块,与解析模块通讯,用以验证第二计算机的身份信息;客户端管理模块,位于第二计算机,与第二计算机的第二网络接口卡通讯,其进一步包含第二传输模块,与第二网络接口卡通讯,通过第二网络接口卡接收和发送数据,以及管理模块,与第二传输模块通讯,通过第二传输模块向第一计算机发送启始化请求,以获得允许共享设备列表,并解析通过第二传输模块接收的数据;以及多个客户端设备驱动程序,位于第二计算机,与管理模块通讯,接收管理模块解析的数据,以在第二计算机虚拟各实体设备,并将第二计算机对各虚拟设备进行操作的数据发送至管理模块,以传递至第一计算机的各实体设备。
本发明所提供的一种实现计算机设备共享的方法,包含以下步骤第二计算机发送启始化请求至第一计算机;第一计算机回复一个允许共享设备列表;第一计算机验证第二计算机的身份信息;第一计算机发送各实体设备的信息至第二计算机;第二计算机依照接收的各实体设备的信息通过各实体设备的客户端设备驱动程序于第二计算机虚拟各实体设备;通过各实体设备的客户端设备驱动程序将第二计算机对各虚拟设备进行操作的数据传输至第一计算机;以及第一计算机依照接收的操作数据对各实体设备进行相应操作,并回复操作结果至第二计算机。
综上所述,本发明的优点在于实现了设备在驱动层的共享,因而可以不受限制地对共享设备进行各种操作。同时,多台计算机共享一台设备可以增加设备的使用效率,减少维护和购买设备的成本。


图1为依照本发明的较佳实施例的系统方块图;图2为本发明的用户自定义格式结构图;以及图3为依照本发明的较佳实施例的方法流程图。
其中,附图标记100第一计算机 110第一网络接口卡120服务器端管理模块121第一传输模块122解析模块123身份验证模块130硬盘驱动程序140硬盘200第二计算机 210第二网络接口卡
220客户端管理模块 221第二传输模块222管理模块 230客户端硬盘驱动程序240虚拟硬盘 300用户自定义格式310因特网协定报文头 320传输控制协议报文头330指令 340设备指令350设备数据具体实施方式
配合附图将最佳实施例详细说明如下。
请参考图1和图2,图1为依照本发明的较佳实施例的实现计算机设备共享的系统,图2为用户自定义格式的结构。如图所示,依照本发明的较佳实施例的实现计算机设备共享的系统,于连接有硬盘140的第一计算机100和通过网络与第一计算机100相连的第二计算机200之间共享硬盘140。该系统包含服务器端管理模块120,位于第一计算机100,与第一网络接口卡110以及硬盘驱动程序130通讯,其进一步包含第一传输模块121,与第一网络接口卡110通讯,解析模块122,与第一传输模块121和硬盘驱动程序130通讯,以及身份验证模块123,与解析模块122通讯;客户端管理模块220,位于第二计算机200,与第二网络接口卡210通讯,其进一步包含第二传输模块221,与第二网络接口卡210通讯,以及管理模块222,与第二传输模块221通讯;以及客户端硬盘驱动程序230,位于第二计算机200,与管理模块222通讯。
其中,第一计算机100与第二计算机200之间传递的数据均依照用户自定义格式300进行封装。用户自定义格式300(如图2所示)包含因特网协议报文头310、传输控制协议报文头320、指令330、设备指令340以及设备数据350。指令330为由建立连接指令、关闭连接指令、开始传输数据指令、开始接收数据指令、要求进行身份验证指令、要求给出支持设备列表信息指令以及对设备进行操作指令组成的指令组中选择的一个指令,设备指令为对设备进行具体操作的指令,设备数据为进行设备操作时所需要的数据。例如,将硬盘格式化为第三代扩展档案系统(Ext3)分区,则可在设备指令340部份用0x30表示格式化操作指令,在设备数据350部份用0xAE表示格式化为Ext3分区。然而,用户自定义格式300并不限于上述格式,可以为任何一种可在网络中传输并携带足够数据的格式。
当第二计算机200需要共享第一计算机100的硬盘140时,位于第二计算机200的客户端管理模块220的管理模块222通过第二传输模块221经由第二网络接口卡210发送一个启始化请求至第一计算机100,第一计算机100的第一传输模块121通过第一网络接口卡110接收启始化请求,并将请求传递至解析模块122。解析模块122解析启始化请求,并依照解析后的启始化请求读取第一计算机100的一个配置档案所记录的允许共享设备列表,在本实施例中该列表仅包含一个允许共享硬盘140的标志。解析模块122通过第一传输模块121将允许共享硬盘140的标志发送至第二计算机200。
第二计算机200的管理模块222接收到允许共享硬盘140的标志后,发送第二计算机200的身份信息至第一计算机100。第一计算机100的解析模块122接收身份信息,并通过身份验证模块123验证第二计算机200的身份信息,当验证成功后,解析模块122回复一个确认标志至第二计算机200,否则,解析模块122发送一个信息至第一计算机100的操作系统以关闭与第二计算机200的连接。身份验证方式可采用验证用户名和密码等类似方式,而用户名和密码可由用户预先设置于身份验证模块123。当确认第二计算机200的身份信息后,解析模块122将硬盘140的信息(如,设备类型,大小等)发送至第二计算机200。第二计算机200的管理模块222将接收的硬盘140的信息传递至客户端硬盘驱动程序230。客户端硬盘驱动程序230依照接收的硬盘140的信息于第二计算机200虚拟出虚拟硬盘240,并发送一个信息至第二计算机200的操作系统以通知第二计算机200有新硬盘接入本机。同时,管理模块222通过第二传输模块221回复一个成功标志至第一计算机100,以通知第一计算机100虚拟硬盘140成功。
依上所述,虚拟硬盘240通过客户端硬盘驱动程序230虚拟,即于设备驱动层虚拟出虚拟硬盘240。因此,第二计算机200的操作系统会认为有一个真实的实体硬盘接入本机。
当第二计算机200的操作系统对虚拟硬盘240进行各种操作(包含格式化等低阶操作)时,客户端硬盘驱动程序230将操作系统发送的操作指令和数据传递至管理模块222。管理模块222依照用户自定义格式300封装操作指令和数据,并通过第二传输模块221将封装后的操作指令和数据发送至第一计算机100。第一计算机100的解析模块122通过第一传输模块121接收第二计算机200发送的数据,并将接收的数据解析为相应的操作指令和数据。解析模块122将解析后的操作指令和数据发送至硬盘驱动程序130,硬盘驱动程序130依照接收的操作指令和数据对硬盘140进行相应操作。操作完毕后,硬盘驱动程序130将操作结果发送至解析模块122,解析模块122依照用户自定义格式300封装操作结果,并通过第一传输模块121发送至第二计算机200。第二计算机200的管理模块222通过第二传输模块221接收封装后的操作结果,并解析封装后的操作结果。解析完毕后,管理模块222将解析后的操作结果发送至客户端硬盘驱动程序230。客户端硬盘驱动程序230依照操作结果返回相应信息至第二计算机200的操作系统,从而完成第二计算机200的操作系统对虚拟硬盘240的操作,即实现对连接至第一计算机100的硬盘140的共享。
当第二计算机200停止对硬盘140的共享时,管理模块222通过第二传输模块221发送一个断开连接信息至第一计算机100,以结束对硬盘140的共享。同时,客户端硬盘驱动程序230发送一个通知信息至第二计算机200的操作系统以通知操作系统虚拟硬盘240被删除。
依上所述,在第二计算机200安装各种实体设备(如,刻录机)的客户端设备驱动程序即可实现对各种实体设备的共享,且各种实体设备可位于远程的同一台计算机亦可位于远程的多台计算机。上述系统于驱动层实现对实体设备的共享,因而第二计算机200可以像对本机设备一样对共享设备进行各种操作。同时,对设备的共享亦增加了设备的使用效率,减少了维护和购买设备的成本。
图3为本发明一种实现计算机设备共享的方法流程图。如图所示,于连接有硬盘140的第一计算机100和通过网络与第一计算机100相连的第二计算机200之间共享硬盘140。
其中,第一计算机100与第二计算机200之间传递的数据均依照用户自定义格式300进行封装。用户自定义格式300(如图2所示)包含因特网协议报文头310、传输控制协议报文头320、指令330、设备指令340以及设备数据350。指令330为由建立连接指令、关闭连接指令、开始传输数据指令、开始接收数据指令、要求进行身份验证指令、要求给出支持设备列表信息指令以及对设备进行操作指令组成的指令组中选择的一个指令,设备指令为对设备进行具体操作的指令,设备数据为进行设备操作时所需要的数据。例如,将硬盘格式化为第三代扩展档案系统(Ext3)分区,则可在设备指令340部份用0x30表示格式化操作指令,在设备数据350部份用0xAE表示格式化为Ext3分区。然而,用户自定义格式300并不限于上述格式,可以为任何一种可在网络中传输并携带足够数据的格式。
如图所示,本发明的实现计算机设备共享的方法包含以下步骤步骤S400,当第二计算机200需要共享第一计算机100的硬盘140时,第二计算机200发送启始化请求至第一计算机100。
步骤S410,第一计算机100接收并解启始化请求,并依照解析后的启始化请求读取第一计算机100的一个配置档案所记录的允许共享设备列表,在本实施例中该列表仅包含一个允许共享硬盘140的标志。第一计算机100回复一个允许共享硬盘140的标志至第二计算机200。
步骤S420,第二计算机200接收到第一计算机100发送的允许共享硬盘140的标志后,发送本机的身份信息至第一计算机100。
步骤S430,第一计算机100验证接收的身份信息,并判断身份信息验证是否成功?步骤S440当身份信息验证失败时,第一计算机100自动关闭与第二计算机200的连接。当身份信息验证成功时,第一计算机100回复一个确认标志。身份验证方式可采用验证用户名和密码等类似方式,而用户名和密码可由用户预先设置于第一计算机100。
步骤S450,接着,第一计算机100发送硬盘140的信息(如,设备类型,大小等)至第二计算机200。
步骤S460,第二计算机200接收硬盘140的信息,并通过客户端硬盘驱动程序230于第二计算机200虚拟出虚拟硬盘240。虚拟成功后,客户端硬盘驱动程序230发送一个信息至第二计算机200的操作系统以通知第二计算机200有新硬盘接入本机。同时,第二计算机200回复一个成功标志至第一计算机100,以通知第一计算机100虚拟硬盘140成功。
依上所述,虚拟硬盘240通过客户端硬盘驱动程序230虚拟,即于设备驱动层虚拟出虚拟硬盘240。因此,第二计算机200的操作系统会认为有一个真实的实体硬盘接入本机。
步骤S470,当第二计算机200的操作系统对虚拟硬盘240进行各种操作(包含格式化等低阶操作)时,通过客户端硬盘驱动程序230将第二计算机200的操作系统对虚拟硬盘240进行操作的操作指令和数据发送至第一计算机100。
步骤S480,第一计算机100将接收的操作指令和数据传递至硬盘驱动程序130,硬盘驱动程序130依照操作指令和数据对硬盘140执行相应操作,并回复操作结果。第一计算机100将硬盘驱动程序130回复的操作结果发送至第二计算机200,第二计算机200的客户端硬盘驱动程序230依照操作结果返回相应信息至第二计算机200的操作系统,从而完成第二计算机200的操作系统对虚拟硬盘240的操作,即实现对连接至第一计算机100的硬盘140的共享。
步骤S490,当第二计算机200停止对硬盘140的共享时,第二计算机200发送一个断开连接信息至第一计算机100,以结束对硬盘140的共享。同时,客户端硬盘驱动程序230发送一个通知信息至第二计算机200的操作系统以通知操作系统虚拟硬盘240被删除。
依照上述方法,在第二计算机200安装各种实体设备(如,刻录机)的客户端设备驱动程序即可实现对各种实体设备的共享,且各种实体设备可位于远程的同一台计算机亦可位于远程的多台计算机。上述方法于驱动层实现对实体设备的共享,因而第二计算机200可以像对本机设备一样对共享设备进行各种操作。同时,对设备的共享亦增加了设备的使用效率,减少了维护和购买设备的成本。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的普通技术人员当可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
权利要求
1.一种实现计算机设备共享的系统,于连接有多个实体设备的一第一计算机和通过网络与该第一计算机相连的一第二计算机之间共享所述各实体设备,该系统包含一服务器端管理模块,位于该第一计算机,与该第一计算机的一第一网络接口卡以及所述各实体设备的驱动程序通讯,其进一步包含一第一传输模块,与该第一网络接口卡通讯,通过该第一网络接口卡接收和发送数据;一解析模块,与该第一传输模块和所述各实体设备的驱动程序通讯,用以于接收到该第二计算机发送的一启始化请求后,发送一允许共享设备列表至该第二计算机,以及解析通过该第一传输模块接收的数据,并将解析后的数据发送至所述各实体设备的驱动程序,且回复操作结果至该第二计算机;以及一身份验证模块,与该解析模块通讯,用以验证该第二计算机的身份信息;一客户端管理模块,位于该第二计算机,与该第二计算机的一第二网络接口卡通讯,其进一步包含一第二传输模块,与该第二网络接口卡通讯,通过该第二网络接口卡接收和发送数据;以及一管理模块,与该第二传输模块通讯,通过该第二传输模块向该第一计算机发送该启始化请求,以获得该允许共享设备列表,并解析通过该第二传输模块接收的数据;以及多个客户端设备驱动程序,位于该第二计算机,与该管理模块通讯,接收该管理模块解析的数据,以在该第二计算机虚拟所述各实体设备,并将该第二计算机对所述各虚拟设备进行操作的数据发送至该管理模块,以传递至该第一计算机的所述各实体设备。
2.根据权利要求1所述的实现计算机设备共享的系统,其特征在于,该第一计算机与该第二计算机之间传递的数据均依照一用户自定义格式进行封装。
3.根据权利要求2所述的实现计算机设备共享的系统,其特征在于,该用户自定义格式包含因特网协议报文头、传输控制协议报文头、指令、设备指令以及设备数据,其中该指令为由建立连接指令、关闭连接指令、开始传输数据指令、开始接收数据指令、要求进行身份验证指令、要求给出支持设备列表信息指令以及对设备进行操作指令组成的指令组中选择的一个指令,该设备指令为对该设备进行具体操作的指令。
4.根据权利要求1所述的实现计算机设备共享的系统,其特征在于,该允许共享的设备列表储存于该第一计算机的一配置档案中。
5.一种实现计算机设备共享的方法,于连接有多个实体设备的一第一计算机和通过网络与该第一计算机相连的一第二计算机之间共享所述各实体设备,该方法包含以下步骤该第二计算机发送一启始化请求至该第一计算机;该第一计算机回复一允许共享设备列表;该第一计算机验证该第二计算机的身份信息;该第一计算机发送所述各实体设备的信息至该第二计算机;该第二计算机依照接收的所述各实体设备的信息通过所述各实体设备的客户端设备驱动程序于该第二计算机虚拟所述各实体设备;通过所述各实体设备的客户端设备驱动程序将该第二计算机对所述各虚拟设备进行操作的数据传输至该第一计算机;以及该第一计算机依照接收的操作数据对所述各实体设备进行相应操作,并回复操作结果至该第二计算机。
6.根据权利要求5所述的实现计算机设备共享的方法,其特征在于,于该第一计算机依照接收的操作数据对所述各实体设备进行相应操作,并回复操作结果至该第二计算机步骤后进一步包含如下步骤该第二计算机发送一断开连接信息至该第一计算机,以结束对所述各实体设备的共享。
7.根据权利要求5所述的实现计算机设备共享的方法,其特征在于,该第一计算机验证该第二计算机的身份信息步骤进一步包含该第二计算机发送身份信息至该第一计算机;以及该第一计算机接收并验证该第二计算机的身份信息,当验证成功,回复一确认标志,否则,主动断开连接。
8.根据权利要求5所述的实现计算机设备共享的方法,其特征在于,该第一计算机与该第二计算机之间传递的数据均依照一用户自定义格式进行封装。
9.根据权利要求8所述的实现计算机设备共享的方法,其特征在于,该用户自定义格式包含因特网协议报文头、传输控制协议报文头、指令、设备指令以及设备数据,其中该指令为由建立连接指令、关闭连接指令、开始传输数据指令、开始接收数据指令、要求进行身份验证指令、要求给出支持设备列表信息指令以及对设备进行操作指令组成的指令组中选择的一个指令,该设备指令为对该设备进行具体操作的指令。
10.根据权利要求5所述的实现计算机设备共享的方法,其特征在于,该允许共享的设备列表储存于该第一计算机的一配置档案中。
全文摘要
一种实现计算机设备共享的系统及其方法,于连接有多个实体设备的第一计算机和通过网络与该第一计算机相连的第二计算机之间共享各实体设备,以实现设备在驱动层的共享,提高设备的使用效率。本发明通过作为提供共享实体设备驱动程序的伺服端的第一计算机和客户端设备驱动程序于第二计算机虚拟出各实体设备,并将第二计算机对各虚拟设备进行操作的数据发送至第一计算机的实体设备,并将操作结果回复至第二计算机,以实现设备在驱动层的共享。
文档编号H04L12/24GK101052050SQ20061007313
公开日2007年10月10日 申请日期2006年4月6日 优先权日2006年4月6日
发明者崔佳, 陈玄同, 刘文涵 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1