共享设备热拔出方法、装置和多用户管理系统与流程

文档序号:11250831阅读:933来源:国知局
共享设备热拔出方法、装置和多用户管理系统与流程

本发明涉及多用户管理技术领域,尤其涉及一种共享设备热拔出方法、装置和多用户管理系统。



背景技术:

目前,大多数通信系统都支持多用户管理,在系统使用中,经常遇到多用户共享的设备需要进行热拔出的情况,因此,支持的系统中的共享设备接口热拔出也是系统的重要功能之一。但是当多个用户同时登陆系统,并同时对共享设备进行操作时,某个用户突然对共享设备进行热拔出,往往会导致其他用户的数据丢失,导致设备访问异常。

举例来说,以io卡热拔出的过程为例,当某个用户进行io卡的热拔出时,会导致整个系统的信息流中断,进而导致其它用户的io请求数据丢失,从而出现访问异常的问题。



技术实现要素:

针对现有方法的不足,本发明提出了一种共享设备热拔出方法、装置和多用户管理系统,解决了现有技术中的问题,在某个用户进行共享设备热拔出后,并不会导致其他用户的应用请求数据丢失。

为达到以上目的,本发明的技术方案如下:

一种共享设备热拔出方法,应用于多用户管理系统,该多用户管理系统中包括多个用户和多个相同的共享设备,每个共享设备可由多个用户同时共享,该方法包括:

接收到第一共享设备即将被热拔出的指示信息;

读取并记录用户与用户正在使用的共享设备之间的映射关系,得到指示所述用户与用户正在使用的共享设备之间的映射关系的映射列表,所述映射列表中包括第一用户与所述第一共享设备的映射关系,所述用户包括所述第一用户和第二用户,所述第一用户为将所述第一共享设备进行热拔出的用户,所述第二用户为所述多个用户中除所述第一用户之外的其它用户;

根据所述第一共享设备的标识信息,在预先存储的指示所述多个共享设备及其对应的状态信息的状态列表中,查找到所述第一共享设备,并将所述状态列表中的所述第一共享设备的状态信息修改为正在拔出或已拔出,所述状态信息包括正常使用状态、正在拔出、以及已拔出;

当接收到第一共享设备即将被热拔出的指示信息后,接收到所述第二用户发送的共享设备应用请求时,根据所述映射列表和所述状态列表,停止向所述第一共享设备发送所述第二用户的应用请求,并向第二共享设备发送所述第二用户的应用请求,所述第二共享设备为所述多个共享设备中除所述第一共享设备之外的其它未被热拔出的共享设备。

优选的,所述将所述状态列表中的所述第一共享设备的状态信息修改为正在拔出或已拔出,具体为:

查找到所述第一共享设备之后,将所述状态列表中的所述第一共享设备的状态信息由正常使用状态修改为正在拔出;

当接收到所述第一共享设备完成热拔出的指示信息后,根据所述第一共享设备的标识信息,在所述状态列表中,查找到所述第一共享设备;

将所述状态列表中的所述第一共享设备的状态信息由正在拔出修改为已拔出。

优选的,所述查找到所述第一共享设备,具体为:

在所述状态列表中,将所述第一共享设备的标识信息,与所述状态列表中的多个共享设备的标识信息进行一一比对,以查找到所述第一共享设备。

优选的,还包括:

当接收到所述第一共享设备完成热拔出的指示信息后,清除所述映射列表中的所述第一用户与所述第一共享设备的映射关系。

优选的,根据所述映射列表和所述状态列表,停止向所述第一共享设备发送所述第二用户的共享设备应用请求,并向第二共享设备发送所述第二用户的应用请求,具体为:

读取所述映射列表,根据所述第二用户的标识信息,在所述映射列表中查找到与所述第二用户对应的共享设备;

根据查找到的与所述第二用户对应的共享设备的标识信息,在所述状态列表中查找到与所述第二用户对应的共享设备的状态信息;

根据所述状态列表,判断与所述第二用户对应的共享设备的状态信息是否为正在拔出或已拔出,若是,则判定该与所述第二用户对应的共享设备为所述第一共享设备,停止向所述第一共享设备发送所述第二用户的共享设备应用请求,并向第二共享设备发送所述第二用户的应用请求;若否,则判定该与所述第二用户对应的共享设备为所述第二共享设备,则向所述第二共享设备发送所述第二用户的应用请求。

优选的,所述向所述第二共享设备发送所述第二用户的应用请求,具体为:

根据负载均衡机制,为所述第二用户的应用请求分配相应的第二共享设备;

将所述第二用户的应用请求,发送给所述相应的第二共享设备。

优选的,所述共享设备为io卡。

优选的,所述io卡为fc卡、sas卡或iscsi卡。

优选的,在所述映射列表中,所述用户与用户正在使用的共享设备之间的映射关系为,所述用户的id号码与所述io卡的id号码对应关联;

在所述状态列表中,所述io卡的id号码与该io卡的状态信息一一对应;

所述共享设备的标识信息为所述io卡的id号码。

优选的,所述状态信息为状态标识,所述状态标识包括指示io卡处于正常使用状态的标识、指示io卡正在拔出的标识、以及指示io卡已拔出的标识。

优选的,所述第一共享设备即将被热拔出的指示信息为,所述第一io卡与对应的插卡口接触位置出现松动时,发出的指示信息;所述第一共享设备完成热拔出的指示信息为,与所述第一io卡与对应的插卡口处于闲置状态时,发出的指示信息。

本发明实施例还提供了一种共享设备热拔出装置,应用于多用户管理系统,该多用户管理系统中包括多个用户和多个共享设备,每个共享设备可由多个用户同时共享,该装置包括:

第一接收单元,用于接收第一共享设备即将被热拔出的指示信息,以及接收所述第一共享设备完成热拔出的指示信息;

第二接收单元,用于接收用户发送的应用请求;

记录单元,用于读取并记录用户与用户正在使用的共享设备之间的映射关系,得到指示所述用户与用户正在使用的共享设备之间的映射关系的映射列表,所述映射列表中包括第一用户与所述第一共享设备的映射关系,所述用户包括所述第一用户和第二用户,所述第一用户为将所述第一共享设备进行热拔出的用户,所述第二用户为所述多个用户中除所述第一用户之外的其它用户;

存储单元,用于存储所述映射列表和指示所述多个共享设备及其对应的状态信息的状态列表;

第一查找单元,用于根据所述第一共享设备或所述第二共享设备的标识信息,在所述状态列表中,查找到所述第一共享设备或所述第二共享设备,所述第二共享设备为所述多个共享设备中除所述第一共享设备之外的其它未被热拔出的共享设备;

状态设置单元,用于设置所述状态列表中的共享设备的状态信息,所述状态信息包括正常使用状态、正在拔出、以及已拔出;

控制单元,用于根据所述第一接收单元和所述第二接收单元接收到的信息,以及所述映射列表和所述状态列表,控制向所述第一共享设备和所述第二共享设备发送所述第二用户的应用请求的方式;当接收到第一共享设备即将被热拔出的指示信息后,接收到所述第二用户发送的共享设备应用请求时,停止向所述第一共享设备发送所述第二用户的应用请求,并向所述第二共享设备发送所述第二用户的应用请求。

优选的,还包括:更新单元,用于当接收到所述第一共享设备完成热拔出的指示信息后,清除所述映射列表中的所述第一用户与所述第一共享设备的映射关系。

优选的,所述控制单元包括:

第二查找单元,用于读取所述映射列表,根据所述第二用户的标识信息,在所述映射列表中查找到与所述第二用户对应的共享设备;

判断单元,用于根据所述状态列表,判断与所述第二用户对应的共享设备的状态信息是否为正在拔出或已拔出;

拦截单元,用于判定与所述第二用户对应的共享设备为所述第一共享设备时,停止向所述第一共享设备发送所述第二用户的应用请求;

分配单元,用于判定与所述第二用户对应的共享设备为所述第一共享设备或所述第二共享设备后,为所述第二用户的应用请求分配相应的第二共享设备;

发送单元,用于将所述第二用户的应用请求,发送给所述相应的第二共享设备。

本发明实施例还提供了一种多用户管理系统,该系统中包括多个用户、多个相同的共享设备及处理器,每个共享设备可由多个用户同时共享;

所述处理器接收到第一共享设备即将被热拔出的指示信息后,读取并记录用户与用户正在使用的共享设备之间的映射关系,得到指示所述用户与用户正在使用的共享设备之间的映射关系的映射列表,并根据所述第一共享设备的标识信息,在预先存储的指示所述多个共享设备及其对应的状态信息的状态列表中,查找到所述第一共享设备,并将所述状态列表中的所述第一共享设备的状态信息修改为正在拔出或已拔出;并在接收到第一共享设备即将被热拔出的指示信息后,接收到所述第二用户发送的共享设备应用请求时,根据所述映射列表和所述状态列表,停止向所述第一共享设备发送所述第二用户的应用请求,并通过第二共享设备发送所述第二用户的应用请求,所述第二共享设备为所述多个共享设备中除所述第一共享设备之外的其它未被热拔出的共享设备;

其中,所述映射列表中包括第一用户与所述第一共享设备的映射关系,所述用户包括所述第一用户和第二用户,所述第一用户为将所述第一共享设备进行热拔出的用户,所述第二用户为所述多个用户中除所述第一用户之外的其它用户,所述状态信息包括正常使用状态、正在拔出、以及已拔出。

本发明的有益效果在于:

本发明公开的共享设备热拔出方法、装置和多用户管理系统,在第一用户突然对第一共享设备进行热拔出时,记录当前所有用户与共享设备之间的映射关系,并修改预先存储的共享设备及其对应的状态信息的状态列表中的第一共享设备的状态信息,使得在第一共享设备处于正在拔出或已拔出的状态下,再次接收到第二用户发送的应用请求时,根据第二用户与共享设备之间的映射关系,可以获知第二用户正在向哪个共享设备发送应用请求,之后通过查询所有共享设备的状态信息,可获知第二用户是否在向第一共享设备发送应用请求,当确定第二用户在向第一共享设备发送应用请求后,停止将第二用户发送的应用请求发给第一共享设备,即将第一共享设备转换成只允许第一用户独占,暂停第二用户向第一共享设备发送的数据流,从而避免了第二用户的应用请求数据丢失,之后,将第二用户的应用请求发送给第二共享设备,从而也满足了第二用户在第一共享设备热拔出期间的应用需求。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例公开的共享设备热拔出方法的流程图;

图2为本发明实施例公开的共享设备热拔出方法的流程图;

图3为本发明实施例公开的共享设备热拔出装置的结构图。

具体实施方式

下面结合说明书附图对本发明实施例的方案进行进一步的描述。需要说明的是,本说明书中各个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

如背景技术所述,现有技术中的方式,在某一用户将共享设备热拔出期间,容易导致其它用户的访问数据丢失。基于此,本发明实施例提供了一种共享设备热拔出方法,应用于多用户管理系统(即支持多用户管理的通信系统),该多用户管理系统中包括多个用户和多个相同的共享设备,每个共享设备均可以由多个用户同时共享。

需要说明的是,本实施例中的共享设备可以为多用管理系统中的任意设备,如io卡等,本实施例中的io卡可以为fc卡、sas卡或iscsi卡,此外还可以为其它类型的io卡,本发明实施例对此并不限定。

具体的,该共享设备热拔出方法的流程图如图1所示,包括以下步骤:

步骤s101、接收到第一共享设备即将被热拔出的指示信息;

需要说明的是,本实施例中对第一共享设备即将被热拔出的指示信息的发出方式不做限定,只要能够接收到相应的指示信息即可。

举例来说,以第一共享设备为第一io卡为例,当第一io卡与对应的插卡口接触位置出现松动时,即可通过设置于插卡口处的检测模块,向系统发出第一io卡即将被热拔出的指示信息。或者,对于第一io卡的端口顶部与对应的插卡口的底部的接触的方式来说,当第一io卡的端口顶部一旦脱离对应的插卡口的底部,即可通过设置在插卡口底部的检测模块,向系统发出第一io卡即将被热拔出的指示信息。本领域技术人员根据不同的共享设备进行相应的设计即可,本发明对此不做限定。

步骤s102、读取用户与用户正在使用的共享设备之间的映射关系;

该步骤为步骤103的准备动作,可通过遍历的方式读取用户与用户正在使用的共享设备之间的映射关系。该映射关系可以不是一对一的形式,即并非一个用户只向一个共享设备发送应用请求,而是多对多的关系,即一个用户可以向多个共享设备发送应用请求,一个共享设备也可以接收多个用户发送的应用请求,当然该映射关系中也可能存在一对一的情况,本实施例中对此不做具体限定。

步骤s103、记录用户与用户正在使用的共享设备之间的映射关系,得到指示所述用户与用户正在使用的共享设备之间的映射关系的映射列表;

需要说明的是,该步骤中得到的映射列表中包括当前所有用户与所有共享设备的映射关系,其中必然也包括第一用户与所述第一共享设备的映射关系。其中,所述用户包括所述第一用户和第二用户,第一用户为将所述第一共享设备进行热拔出的用户,第二用户为所述多个用户中除所述第一用户之外的其它用户,即未对共享设备进行热拔出的用户。

步骤s104、根据所述第一共享设备的标识信息,在预先存储的指示所述多个共享设备及其对应的状态信息的状态列表中,查找到所述第一共享设备;

需要说明的是,每个用户以及每个共享设备都有自己特有的标识信息,对于用户来说,该标识信息可以为用户的身份识别信息,即用户的id号码,对于共享设备来说,该标识信息可以为该共享设备的身份识别信息,即该共享设备的id号码。也就是说,在上述映射列表中,具体形式为用户的id号码与共享设备的id号码的对应关系。

并且,共享设备的状态信息包括正常使用状态、正在拔出、以及已拔出,对于这几种状态信息来说,也可以对应相应的状态标识,即,共享设备的状态信息为状态标识,所述状态标识包括指示io卡处于正常使用状态的标识、指示io卡正在拔出的标识、以及指示io卡已拔出的标识。举例来说,可以用数字来标识共享设备的状态信息,不同数字表示共享设备不同的状态,如数字0表示正常使用状态,1表示共享设备正在拔出,2表示已拔出。仅以数字为例进行说明,其它形式也可以采用,本实施例对此不做限定。

相应的,在该状态列表中,具体形式可以为共享设备的id号码与状态标识相对应。

本实施例中,查找到第一共享设备的方式具体为,在所述状态列表中,将所述第一共享设备的标识信息,与所述状态列表中的多个共享设备的标识信息进行一一比对,以查找到所述第一共享设备。即,遍历所述状态列表中的共享设备的id号码,将第一共享设备的id号码与状态列表中的共享设备的id号码依次进行比对,直至在状态列表中查找出与第一共享设备的id号码相同的id号码,即在状态列表中查找到了第一共享设备,停止id号码的比对过程。

步骤s105、将所述状态列表中的所述第一共享设备的状态信息修改为正在拔出或已拔出;

需要说明的是,状态列表并非是共享设备使用之初就固定的,而是随着共享设备的插入和拔出状态的变化而变化的。换句话说,每次共享设备的热拔出动作发生时,都需要读取并记录用户与共享设备的关联关系,以及修改之前存储的状态列表中第一共享设备的状态信息。即对于本次热拔出动作来说,上一次某个共享设备热拔出动作完成后,修改得到的共享设备的状态列表,即为本次热拔出动作发生时,所使用的所述预先存储的状态列表,即本次热拔出动作发生时,需要修改的是上一次某个共享设备热拔出动作完成后,所得到的状态列表。

本实施例中状态信息若以状态标识的方式表示,该步骤中通过修改第一共享设备的状态信息标识即可修改状态信息。具体的,当第一共享设备处于正在热拔出的状态时,即将状态列表中的状态信息由之前的正常使用状态,修改为正在拔出。相应的,当第一共享设备处于完全被拔出的状态时,即将状态列表中的状态信息有正在拔出,修改为已拔出。

步骤s106、当接收到第一共享设备即将被热拔出的指示信息后,接收到所述第二用户发送的共享设备应用请求;

需要说明的是,接收第二用户发送的应用请求的动作是一直在独立进行的,与其他动作并无任何必然的关系。即,该步骤与以上步骤s102-步骤s105是同步并行进行的,即该步骤的执行,与以上步骤s102-步骤s105之间,没有任何时间上的先后顺序和关联关系。

步骤s107、根据所述映射列表和所述状态列表,停止向所述第一共享设备发送所述第二用户的应用请求;

该过程相当于将第一共享设备设置为由第一用户独占,即禁止第二用户再次向第一共享设备发送应用请求。

当接收到第一共享设备即将被热拔出的指示信息后,系统再次接收到第二用户(即其他用户)的共享设备应用请求后,根据第二用户与共享设备之间的映射关系,即根据所述映射列表,可以获知第二用户正在向哪个共享设备发送应用请求,并根据状态列表,从第二用户发送的所有应用请求中,筛选出正在向第一共享设备发送的应用请求及对应的用户,之后在这些应用请求发送到第一共享设备之前,拦截这些应用请求,避免将这些应用请求发送到第一共享设备,从而避免第一共享设备热拔出后,导致第二用户向第一共享设备发送的这些应用请求数据丢失。

步骤s108、向第二共享设备发送所述第二用户的应用请求。

其中,所述第二共享设备为所述多个共享设备中除所述第一共享设备之外的其它未被热拔出的共享设备。

本实施例中将第二用户发送给第一共享设备的应用请求拦截之后,再根据负载均衡机制,将拦截下来的第二用户发送给第一共享设备的应用请求分配给第二共享设备进行处理,从而在确保第一共享设备热拔出期间,第二用户的数据不丢失的情况下,还及时完成了对第二用户数据的处理,完成了系统的正常功能,确保了共享设备的正常访问。

需要说明的是,本实施例中在筛选出正在向第一共享设备发送的应用请求及对应的用户之后,可以直接拦截这些应用请求,并直接向第二共享设备发送这些拦截的应用请求,也可以先将这些应用请求暂时存储在一共享文件中,待确认好处理方案后,再向相应的第二共享设备发送。

本实施例的共享设备热拔出方法,在第一用户突然对第一共享设备进行热拔出时,记录当前所有用户与共享设备之间的映射关系,并修改预先存储的共享设备及其对应的状态信息的状态列表中的第一共享设备的状态信息,使得在第一共享设备处于正在拔出或已拔出的状态下,再次接收到第二用户发送的应用请求时,根据第二用户与共享设备之间的映射关系,可以获知第二用户正在向哪个共享设备发送应用请求,之后通过查询所有共享设备的状态信息,可获知第二用户是否在向第一共享设备发送应用请求,当确定第二用户在向第一共享设备发送应用请求后,停止将第二用户发送的应用请求发给第一共享设备,即将第一共享设备转换成只允许第一用户独占,暂停第二用户向第一共享设备发送的数据流,从而避免了第二用户的应用请求数据丢失,之后,将第二用户的应用请求发送给第二共享设备,从而也满足了第二用户在第一共享设备热拔出期间的应用需求。

本发明另一实施例公开的共享设备的热拔出方法的流程图如图2所示,与上一实施例不同的是,本实施例中将各步骤的具体实现方式进行了细化说明,并且,本实施例中以共享设备为io卡为例,对io卡的热拔出方法进行说明。具体的,本实施例中的共享设备的热拔出方法包括以下步骤:

步骤s201、接收到第一io卡即将被热拔出的指示信息;

步骤s202、读取用户与用户正在使用的io卡之间的映射关系;

步骤s203、记录用户与用户正在使用的io卡之间的映射关系,得到指示所述用户与用户正在使用的io卡之间的映射关系的映射列表;

所述用户与用户正在使用的io卡之间的映射关系为,所述用户的id号码与所述io卡的id号码对应关联,即所述映射列表中为用户的id号码与io卡的id号码对应。

步骤s204、根据所述第一io卡的标识信息,在预先存储的指示所述多个io卡及其对应的状态信息的状态列表中,查找到所述第一io卡;

相应的,在所述状态列表中,所述io卡的id号码与该io卡的状态信息一一对应。第一io卡的标识信息即为第一io卡的id号码。

与上一实施例类似,本实施例中的状态信息为状态标识,所述状态标识包括指示io卡处于正常使用状态的标识、指示io卡正在拔出的标识、以及指示io卡已拔出的标识。

步骤s205、查找到所述第一io卡之后,将所述状态列表中的所述第一io卡的状态信息由正常使用状态修改为正在拔出;

即,修改状态列表中第一io卡的id号码对应的状态标识。

步骤s206、接收到所述第一io卡完成热拔出的指示信息;

需要说明的是,本实施例中对第一io卡完成热拔出的指示信息的发出方式不做限定,只要能够接收到相应的指示信息即可。

相应的,当与第一io卡与对应的插卡口处于闲置状态时,即可通过设置于插卡口末端的检测模块,向系统发出第一io卡已拔出的指示信息。同样的,本领域技术人员根据不同的共享设备进行相应的设计即可,本发明对此不做限定。

本实施例中接收到第一io卡完成热拔出的指示信息,必然在接收到第一io卡即将热拔出的指示信息之后,即第一io卡已拔出的指示信息的发出时间晚于第一io卡即将热拔出的指示信息发出的时间。参考上一实施例中的描述,对于和第一io卡与对应的插卡口来说,需要在第一io卡与对应的插卡口接触位置出现松动等情况之后,再出现闲置的情况,才能发出第一io卡完成热拔出的指示信息。

步骤s207、根据所述第一io卡的标识信息,在所述状态列表中,查找到所述第一io卡;

该步骤中查找第一io卡的方式与上一实施例中相同,即通过遍历状态列表中的io卡id号码,将状态列表中的多个io卡的id号码,依次与第一io卡的id号码进行比对,直至在状态列表中查找出与第一io卡的id号码相同的id号码,即在状态列表中查找到了第一io卡,停止id号码的比对过程。

步骤s208、将所述状态列表中的所述第一io卡的状态信息由正在拔出修改为已拔出。

即,修改状态列表中第一io卡的id号码对应的状态标识。

其中,步骤s205-步骤s208完成了上一实施例中的步骤s105的功能,即将所述状态列表中的所述第一io卡的状态信息修改为正在拔出或已拔出。

步骤s209、当接收到所述第一io卡完成热拔出的指示信息后,清除所述映射列表中的所述第一用户与所述第一io卡的映射关系;

相比于上一实施例,本实施例中增加了删除映射列表第一用户与所述第一io卡的映射关系的过程,以减少后续步骤中查找映射列表的工作量。

步骤s210、当接收到第一io卡即将被热拔出的指示信息后,接收到所述第二用户发送的io卡应用请求;

参考以上实施例的描述,系统一直在持续接收第二用户发送的应用请求的动作,与其他动作无任何必然的关系。

步骤s211、读取所述映射列表,根据所述第二用户的标识信息(即第二用户的id号码),在映射列表中查找到与第二用户的id号码对应的io卡;

该步骤也采用遍历的方式进行,即将第二用户的id号码与映射列表中多个用户的id号码依次进行比对,直至查找出与第二用户的id号码相同的id号码,该id号码对应的io卡,即为第二用户的id号码对应的io卡。

步骤s212、根据查找到的与所述第二用户对应的io卡的标识信息(即第二用户的id号码),在所述状态列表中查找到与所述第二用户对应的io卡的状态信息;

该过程与上一实施例中的查找状态信息的过程相同,这里不再赘述。

步骤s213、根据所述状态列表,判断与所述第二用户对应的io卡的状态信息是否为正在拔出或已拔出,若是,进入步骤s214,若否,进入步骤s217;

步骤s214、判定该与所述第二用户对应的io卡为所述第一io卡;

步骤s215、停止向所述第一io卡发送所述第二用户的io卡应用请求;

即拦截第二用户向第一io卡发送的应用请求。

步骤s211-步骤s215完成了对向第一io卡发送应用请求的第二用户的筛选过程,并实现了对第二用户向第一io卡发送的应用请求的拦截。

步骤s216、根据负载均衡机制,为所述第二用户的应用请求分配相应的第二io卡;

该步骤为第二用户的应用请求分配相应的第二io卡的方式与现有技术中类似,这里不再赘述。

步骤s217、将所述第二用户的应用请求,发送给所述相应的第二io卡。

其中,步骤s216和步骤s217完成了向第二io卡发送所述第二用户的应用请求的功能。

步骤s218、当所述第二用户对应的io卡的状态信息为正常使用状态时,判定该与所述第二用户对应的io卡为所述第二io卡,进入步骤s216和步骤s217,即向第二io卡发送第二用户的应用请求。

即,对于未向第一io卡发送应用请求的第二用户及其对应的应用请求,仍旧采用正常的处理流程进行请求的处理。

本实施例中仅以io卡为例,对本发明实施例公开的共享设备热拔出方法的具体流程进行说明,以上描述中的io卡可更换为任意的共享设备。

与方法实施例相对应,本实施例公开了一种共享设备热拔出装置,应用于多用户管理系统,该多用户管理系统中包括多个用户和多个共享设备,每个共享设备可由多个用户同时共享。该共享设备热拔出装置的结构图如图3所示,包括以下功能模块:

第一接收单元11,用于接收第一共享设备即将被热拔出的指示信息,以及接收所述第一共享设备完成热拔出的指示信息。

第二接收单元12,用于接收用户发送的应用请求。

记录单元13,用于读取并记录用户与用户正在使用的共享设备之间的映射关系,得到指示所述用户与用户正在使用的共享设备之间的映射关系的映射列表。

其中,所述映射列表中包括第一用户与所述第一共享设备的映射关系,所述用户包括所述第一用户和第二用户,所述第一用户为将所述第一共享设备进行热拔出的用户,所述第二用户为所述多个用户中除所述第一用户之外的其它用户。

存储单元14,用于存储所述映射列表和指示所述多个共享设备及其对应的状态信息的状态列表。

第一查找单元15,用于根据所述第一共享设备或所述第二共享设备的标识信息,在所述状态列表中,查找到所述第一共享设备或所述第二共享设备。

其中,第二共享设备为所述多个共享设备中除所述第一共享设备之外的其它未被热拔出的共享设备。

状态设置单元16,用于设置所述状态列表中的共享设备的状态信息。

所述状态信息包括正常使用状态、正在拔出、以及已拔出。在修改状态列表中的共享设备的状态信息时,均需由状态设置单元16来完成操作。

控制单元17,用于根据所述第一接收单元11和所述第二接收单元12接收到的信息,以及所述映射列表和所述状态列表,控制向所述第一共享设备和所述第二共享设备发送所述第二用户的应用请求的方式。

具体的,当接收到第一共享设备即将被热拔出的指示信息后,接收到所述第二用户发送的共享设备应用请求时,停止向所述第一共享设备发送所述第二用户的应用请求,并向所述第二共享设备发送所述第二用户的应用请求。

此外,还包括:更新单元18,用于当接收到所述第一共享设备完成热拔出的指示信息后,清除所述映射列表中的所述第一用户与所述第一共享设备的映射关系。

其中,所述控制单元17包括:

第二查找单元171,用于读取所述映射列表,根据所述第二用户的标识信息,在所述映射列表中查找到与所述第二用户对应的共享设备;

判断单元172,用于根据所述状态列表,判断与所述第二用户对应的共享设备的状态信息是否为正在拔出或已拔出;

拦截单元173,用于判定与所述第二用户对应的共享设备为所述第一共享设备时,停止向所述第一共享设备发送所述第二用户的应用请求;

分配单元174,用于判定与所述第二用户对应的共享设备为所述第一共享设备或所述第二共享设备后,为所述第二用户的应用请求分配相应的第二共享设备;

发送单元175,用于将所述第二用户的应用请求,发送给所述相应的第二共享设备。

与方法实施例相对应,本实施例公开了一种多用户管理系统,该系统可以为任意支持多用户管理的通信系统。该系统中包括多个用户、多个相同的共享设备及处理器,每个共享设备可由多个用户同时共享。

所述处理器接收到第一共享设备即将被热拔出的指示信息后,读取并记录用户与用户正在使用的共享设备之间的映射关系,得到指示所述用户与用户正在使用的共享设备之间的映射关系的映射列表,并根据所述第一共享设备的标识信息,在预先存储的指示所述多个共享设备及其对应的状态信息的状态列表中,查找到所述第一共享设备,并将所述状态列表中的所述第一共享设备的状态信息修改为正在拔出或已拔出;并在接收到第一共享设备即将被热拔出的指示信息后,接收到所述第二用户发送的共享设备应用请求时,根据所述映射列表和所述状态列表,停止向所述第一共享设备发送所述第二用户的应用请求,并通过第二共享设备发送所述第二用户的应用请求,所述第二共享设备为所述多个共享设备中除所述第一共享设备之外的其它未被热拔出的共享设备。

其中,所述映射列表中包括第一用户与所述第一共享设备的映射关系,所述用户包括所述第一用户和第二用户,所述第一用户为将所述第一共享设备进行热拔出的用户,所述第二用户为所述多个用户中除所述第一用户之外的其它用户,所述状态信息包括正常使用状态、正在拔出、以及已拔出。

本领域技术人员可以理解,可以使用许多不同的工艺和技术中的任意一种来表示信息、消息和信号。例如,上述说明中提到过的消息、信息都可以表示为电压、电流、电磁波、磁场或磁性粒子、光场或以上任意组合。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1