CN101458672B - 一种热插拔设备、电脑及数据传输指示方法 - Google Patents
一种热插拔设备、电脑及数据传输指示方法 Download PDFInfo
- Publication number
- CN101458672B CN101458672B CN2007101790695A CN200710179069A CN101458672B CN 101458672 B CN101458672 B CN 101458672B CN 2007101790695 A CN2007101790695 A CN 2007101790695A CN 200710179069 A CN200710179069 A CN 200710179069A CN 101458672 B CN101458672 B CN 101458672B
- Authority
- CN
- China
- Prior art keywords
- data
- module
- written
- hot
- plug equipment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Abstract
本发明公开了一种热插拔设备、电脑及数据传输指示方法,其中的热插拔设备,包括缓存模块、写模块和存储介质,其中,所述热插拔设备还包括:第一判断模块,用于判断本次数据传输的待写入数据是否接收完毕;第一控制模块,用于在所述本次数据传输的所述待写入数据接收完毕后,控制所述写模块将所述缓存模块中存储的待写入数据写入到所述存储介质,并产生第一控制信号。由于本发明实施例的装置和方法在数据传输且存储后,会发出指示信号,指示用户可安全拔除热插拔设备,因此用户直接根据指示信号即可拔除,不用进行繁琐的操作,同时不会丢失数据,同时也不会对操作系统造成影响。
Description
技术领域
本发明涉及热插拔(Hot-plug)设备的处理技术,特别是一种热插拔设备、电脑及数据传输指示方法。
背景技术
热插拔设备具有操作简便、即插即用等特性,因此快速成为计算、消费与通信等应用优先选择的有线连接技术。
通常来讲,在移除热插拔设备(如移动硬盘、U盘、数码相机、MP3等)时,用户必须基于鼠标或键盘执行一系列的操作。比如Windows操作系统下,用户首先需要使用鼠标点击显示器下方系统条上的“安全移除设备”的按钮,然后关闭热插拔设备,在执行上述操作后拔除热插拔设备。利用操作系统拔除热插拔设备的方法虽然比较安全,但很明显其操作繁琐,用户使用不方便。
因此,在一些时刻,用户在Windows拷贝窗口完成并且关闭,或者热插拔设备的数据传输灯灭掉后认为数据已经传输完毕,进而直接拔除热插拔设备,但事实上,windows拷贝窗口完成并且关闭或热插拔设备的数据传输灯灭掉并不表示数据被真正写入热插拔设备的存储介质内,根据数据传输灯的指示拔除热插拔设备的操作方法虽然简单,但极为不安全,有可能导致数据的丢失或损坏。
发明内容
本发明实施例的目的是提供一种热插拔设备、电脑及数据传输指示方法,能简单且安全地移除热插拔设备。
为了实现上述目的,本发明的实施例提供了一种热插拔设备,包括缓存模块、写模块和存储介质,其中,所述热插拔设备还包括:
第一判断模块,用于判断本次数据传输的待写入数据是否接收完毕;
第一控制模块,用于在所述本次数据传输的所述待写入数据接收完毕后,控制所述写模块将所述缓存模块中存储的待写入数据写入到所述存储介质,并产生第一控制信号。
优选地,上述热插拔设备还包括:
第一指示模块,被所述第一控制信号启动,在启动后发出指示信号。
优选地,上述热插拔设备还包括:
第二判断模块,用于判断是否有新的数据传输;
第二控制模块,用于在有新的数据传输时,产生关闭所述第一指示模块的第二控制信号。
优选地,上述热插拔设备,所述第一判断模块根据以下四种信息中的至少一种信息来判断待写入数据是否接收完毕:
本次数据传输接收到的数据包的数量信息;
本次数据传输接收到的数据包的序号信息;
本次数据传输接收到的数据包的接收时间信息;和
本次数据传输接收到的数据包的数据量信息。
优选地,上述热插拔设备,所述第一控制模块在所述本次数据传输的所述待写入数据接收完毕后,先控制所述写模块将所述缓存模块中存储的待写入数据写入到所述存储介质,然后启动所述指示模块。
为了更好的实现上述目的,本发明的实施例还提供了一种电脑,包括:
存储模块,用于存储待传输数据;
外部设备接口,提供与热插拔设备传输数据的接口;
传输模块,用于通过所述外部设备接口将存储于所述存储模块中的数据传输给所述热插拔设备;
其中,还包括:
第三判断模块,用于判断本次待传输数据是否传输完毕;
第三控制模块,用于在所述本次待传输数据传输完毕后,向所述热插拔设备发送将缓存中的数据写入到存储介质的指令,并产生第三控制信号。
优选地,上述的电脑还包括:
第二指示模块,被所述第三控制信号启动,在启动后发出指示信号。
优选地,上述的电脑还包括:
第四判断模块,用于判断是否有新的数据传输;
第四控制模块,用于在有新的数据传输时,产生关闭所述第二指示模块的第四控制信号。
为了更好的实现上述目的,本发明的实施例还提供了一种数据传输指示方法,包括热插拔设备接收并暂时存储待写入数据的步骤,其中,在判断出本次数据传输的所述待写入数据接收完毕后,还包括:
将所述热插拔设备缓存中存储的待写入数据写入到存储介质的步骤;和
产生指示信号的步骤。
优选地,上述的方法还包括:
在存在新的数据传输时,停止产生指示信号的步骤。
优选地,上述的方法中,所述产生指示信号和停止产生指示信号由热插拔设备或电脑实现。
本发明的至少一个实施例具有以下有益效果:
方便,由于本发明实施例的装置和方法在数据传输且存储后,会发出指示信号,指示用户可安全拔除热插拔设备,因此用户直接根据指示信号即可拔除,不用进行繁琐的操作;
安全,本发明实施例的装置和方法在发出指示信号时,数据传输已经完成,且缓存中的数据已经被存储,所以用户根据指示信号拔除热插拔设备,不会丢失数据,同时也不会对操作系统造成影响。
附图说明
图1为本发明实施例的热插拔设备的结构示意图;
图2为本发明实施例的热插拔设备的数据传输指示方法的流程示意图;
图3为本发明实施例的电脑的数据传输指示装置结构示意图;
图4为本发明实施例的电脑的数据传输指示方法的流程示意图。
具体实施方式
本发明实施例的热插拔设备、电脑及其数据传输指示方法在判断出主机与热插拔设备之间的数据传输完毕后,将热插拔设备缓存内的数据写入存储介质,并通知用户通讯完毕,此时用户可安全可靠的移除热插拔设备。
图1为本发明实施例的热插拔设备的结构示意图,如图1所示,本发明实施例的热插拔设备包括通信接口模块11、缓存模块12、写模块13、存储介质14、第一判断模块15、第一控制模块16和第一指示模块17,其中:
通信接口模块11,提供与主机进行数据传输的接口;
缓存模块12,用于通过通信接口模块11接收并暂时存储待写入数据,并通过通信接口模块11通知主机数据已写入;
写模块13,用于将缓存模块12中存储的待写入数据写入到存储介质14,即执行FLUSH CACHE动作;
存储介质14,用于保存待写入数据;
第一判断模块15,用于判断本次待写入数据是否接收完毕,在判断出本次待写入数据接收完毕后通知第一控制模块16;
第一控制模块16,在接收到第一判断模块15的通知后控制写模块13,将缓存模块12中存储的待写入数据写入到存储介质14,并启动第一指示模块17;
第一指示模块17,用于在启动后发出指示信号,所述指示信号指示待写入数据写入完毕。
在此,所谓待写入数据接收完毕是指待写入数据被接收到缓存模块12中。
在此,第一判断模块15需要判断待写入数据是否接收完毕,本发明的具体实施例中通过以下方式进行判断。
1、本次数据传输接收到的数据包的数量信息
热插拔设备接收主机传送的数据时,在数据传输时都会知道本次数据传输所需要传输的数据包数量,因此可通过计数器来判断,每接到一个数据包,计数器加1,在计数器数值等于本次数据传输所需要传输的数据包数量时即可判断待写入数据接收完毕。
2、本次数据传输接收到的数据包的序号信息
热插拔设备接收主机传送的数据时,在数据传输时都会知道本次数据传输所需要传输的数据包数量,而接收到的每个数据包都包括其序号,因此,判断模块获取每个接收到的数据包的序号信息,在接收到的数据包的序号等于本次数据传输所需要传输的数据包数量时即可待写入数据接收完毕。
3、本次数据传输接收到的数据包的序号信息结合周期性检查
热插拔设备接收主机传送的数据时,在数据传输时都会知道本次数据传输所需要传输的数据包数量,而接收到的每个数据包都包括其序号,因此,判断模块周期性检查最后接收到的数据包的序号信息,在最后接收到的数据包的序号等于本次数据传输所需要传输的数据包数量时即可待写入数据接收完毕。
当然,该检查的周期可以设置比较短,如1s,甚至更短的时间。
4、本次数据传输接收到的数据包的接收时间信息
热插拔设备接收主机传送的数据时,数据包传输间隔一般都比较固定,如果一定时间内没有接收到数据包则可判断本次数据传输完毕,因此,判断模块在接收到每一个数据包后启动计时器,而没接收到下一个数据包,该计时器重新计时,在该计时器的时间超过预设阈值(如1s)则可判断待写入数据接收完毕。
5、本次数据传输接收到的数据包的数据量信息
热插拔设备接收主机传送的数据会预先知道待接收数据的数据量,因此,本发明实施例中也可通过本次数据传输接收到的数据包的数据量的和来判断待写入数据是否接收完毕,在本次数据传输已接收到的数据包的总数据量等于待接收数据的数据量时则可判断待写入数据接收完毕。
第一指示模块被第一控制模块启动后,发出指示信号,所述指示信号指示待写入数据写入完毕。
在本发明的具体实施例中可通过多种方式来指示用户,如下所述。
1、声音方式
第一指示模块发出声音提示用户目前可安全拔除硬插拔设备,如发出“数据传输完毕”、“目前可安全拔除”等类似的语音,当然也可以是单纯的嘀嘀声或者特定的乐曲等。
2、视觉方式
第一指示模块点亮一LED指示灯通知用户目前可安全拔除硬插拔设备,当然,也可以通过闪动该该LED指示灯通知用户目前可安全拔除硬插拔设备,或者设置LED指示灯的不同颜色来通知用户。
3、触觉方式
第一指示模块以震动方式通知用户目前可安全拔除硬插拔设备。
当然,还可以以其他方式来通知用户,在此不再一一列举。
在此,该第一控制模块控制写模块的动作与启动第一指示模块的动作没有固定的顺序,可以采用以下的方式:
先控制写模块,再启动第一指示模块;
控制写模块与启动第一指示模块同时进行;
先启动第一指示模块,再控制写模块。
当然,采用先启动指示模块,再控制写模块的方式,两个动作之间的时间间隔不能过长,应该小于或等于用户发现指示信号到用户拔除热插拔设备的时间间隔。
当然,最好的方式是先控制写模块,再启动第一指示模块。
由于将缓存模块中的数据写入存储介质是一个相当快的过程,可在毫秒级完成,所以,在用户发现指示信号到拔除热插拔设备之间的时间足以将缓存模块中的数据写入存储介质。
通过操作系统来删除硬件,进而拔除热插拔设备,与直接拔除设备从电气特性上讲没有区别,同时也都能保证数据传输安全。
同时,由于操作系统对热插拔设备都有检测能力,所以直接拔除热插拔设备对操作系统不会有任何安全影响。如windows对热插拔设备都有检测能力,直接拔除,Windows也会正常检测硬件移除,而Linux系统只是靠“设备链表”来判断设备是否存在,直接拔除,该链表会断开,所以对任何操作系统都没有安全影响。
上述的热插拔设备在本次数据接收完成后,通知用户可以安全拔除热插拔设备,但此时用户并不一定就会拔除热插拔设备,而是进行后续的文件传输,此时,如图1所示,本发明实施例的热插拔设备还包括:
第二判断模块18,用于判断是否有新的数据传输,如果是则通知第二控制模块;
第二控制模块19,用于在接收到第二判断模块18的通知后关闭指示模块。
此时,在有新的数据传输时,第一判断模块15和第一控制模块16会在本次数据传输完成时启动第一指示模块17。
因此,本发明实施例的热插拔设备只要在第一指示模块17发出指示信号时,用户即可安全拔除热插拔设备。
本发明实施例的热插拔设备数据传输指示方法如图2所示,包括:
步骤21,热插拔设备接收并暂时存储待写入数据;
步骤22,判断本次待写入数据是否接收完毕,如果是,进入步骤23,否则返回步骤21;
步骤23,将缓存中存储的待写入数据写入到存储介质;
步骤24,热插拔设备发出指示信号,指示用户本次待写入数据写入完毕;
步骤25,判断是否有新的数据传输,如果是,进入步骤26,否则结束;
步骤26,停止发出指示信号,返回步骤21。
在步骤25中,需要判断是否有新的数据传输,在此,直接监测通信接口模块即可。
本发明实施例的电脑包括显示器、CPU,如图3所示,还包括:
外部设备接口31,提供与热插拔设备传输数据的接口;
传输模块32,用于通过外部设备接口31将存储于存储模块33中的数据传输给热插拔设备;
存储模块33,用于存储待传输数据;
第三判断模块34,用于判断本次待传输数据是否传输完毕,在判断出本次待传输数据传输完毕后通知第三控制模块35;
第三控制模块35,用于在接收到第三判断模块34的通知后,通过外部设备接口31向热插拔设备的写模块发送指令,并启动第二指示模块36;
热插拔设备根据所述指令将缓存中数据写入存储介质;
第二指示模块36,用于在启动后发出指示信号,所述指示信号指示待传输数据传输完毕。
在此,所谓待传输数据传输完毕是指待传输数据被传输到外部设备的缓存模块中。
第四判断模块37,用于判断是否有新的数据传输,如果是则通知第二控制模块;
第四控制模块38,用于在接收到第二判断模块37的通知后关闭第二指示模块。
此时,在有新的数据传输时,第三判断模块34和第二控制模块35会在本次数据传输完成时启动第二指示模块36。
因此,只要在第二指示模块36发出指示信号时,用户即可安全拔除外部设备。
本发明实施例的电脑的数据传输指示方法如图4所示,包括:
步骤41,电脑向热插拔设备发送待传输数据;
步骤42,判断本次待传输数据是否传输完毕,如果是,进入步骤43,否则返回步骤41;
步骤43,向热插拔设备发送控制命令,控制热插拔设备将缓存中的待写入数据写入存储介质;
步骤44,电脑发出指示信号,指示用户本次待传输据传输完毕;
步骤45,判断是否有新的数据传输,如果是,进入步骤46,否则结束;
步骤46,停止发出指示信号,返回步骤41。
在步骤45中,需要判断是否有新的数据传输,在此,直接监测外部设备接口即可。
电脑中的判断模块、控制模块与指示模块的工作方式及结构与热插拔设备中的判断模块、控制模块与指示模块相同,在此不再赘述。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必须的通用硬件平台的方式来实现,当然也可以通过硬件,但显然前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品包括若干指令用以使得一台计算机设备(这里所说的计算机设备是一个广义的概念,包括但不限于个人计算机,服务器,网络设备等)执行本发明实施例所述方法。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (11)
1.一种热插拔设备,包括缓存模块、写模块和存储介质,其特征在于,还包括:
第一判断模块,用于判断本次数据传输的待写入数据是否接收完毕;
第一控制模块,用于在所述本次数据传输的所述待写入数据接收完毕后,控制所述写模块将所述缓存模块中存储的待写入数据写入到所述存储介质,并产生第一控制信号;
所述第一控制信号用于启动一第一指示模块,使所述第一指示模块发出指示信号,指示用户待写入数据写入存储介质完毕。
2.根据权利要求1所述的热插拔设备,其特征在于,还包括:
所述第一指示模块,被所述第一控制信号启动,在启动后发出指示信号。
3.根据权利要求2所述的热插拔设备,其特征在于,还包括:
第二判断模块,用于判断是否有新的数据传输;
第二控制模块,用于在有新的数据传输时,产生关闭所述第一指示模块的第二控制信号。
4.根据权利要求1、2或3所述的热插拔设备,其特征在于,所述第一判断模块根据以下四种信息中的至少一种信息来判断待写入数据是否接收完毕:
本次数据传输接收到的数据包的数量信息;
本次数据传输接收到的数据包的序号信息;
本次数据传输接收到的数据包的接收时间信息;和
本次数据传输接收到的数据包的数据量信息。
5.根据权利要求2或3所述的热插拔设备,其特征在于,所述第一控制模块在所述本次数据传输的所述待写入数据接收完毕后,先控制所述写模块将所述缓存模块中存储的待写入数据写入到所述存储介质,然后启动所述指示模块。
6.一种电脑,包括:
存储模块,用于存储待传输数据;
外部设备接口,提供与热插拔设备传输数据的接口;
传输模块,用于通过所述外部设备接口将存储于所述存储模块中的数据传输给所述热插拔设备;
其特征在于,还包括:
第三判断模块,用于判断本次待传输数据是否传输完毕;
第三控制模块,用于在所述本次待传输数据传输完毕后,向所述热插拔设备发送将缓存中的数据写入到存储介质的指令,并产生第三控制信号;
所述第三控制信号用于启动一第二指示模块,使所述第二指示模块发出指示信号,指示用户待写入数据写入存储介质完毕。
7.根据权利要求6所述的电脑,其特征在于,还包括:
所述第二指示模块,被所述第三控制信号启动,在启动后发出指示信号。
8.根据权利要求7所述的电脑,其特征在于,还包括:
第四判断模块,用于判断是否有新的数据传输;
第四控制模块,用于在有新的数据传输时,产生关闭所述第二指示模块的第四控制信号。
9.一种数据传输指示方法,包括热插拔设备接收并暂时存储待写入数据的步骤,其特征在于,在判断出本次数据传输的所述待写入数据接收完毕后,还包括:
将所述热插拔设备缓存中存储的待写入数据写入到存储介质的步骤;和
产生指示信号的步骤;
所述指示信号用于指示用户待写入数据写入存储介质完毕。
10.根据权利要求9所述的方法,其特征在于,还包括:
在存在新的数据传输时,停止产生指示信号的步骤。
11.根据权利要求10所述的方法,其特征在于,所述产生指示信号和停止产生指示信号由热插拔设备或电脑实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101790695A CN101458672B (zh) | 2007-12-10 | 2007-12-10 | 一种热插拔设备、电脑及数据传输指示方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101790695A CN101458672B (zh) | 2007-12-10 | 2007-12-10 | 一种热插拔设备、电脑及数据传输指示方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101458672A CN101458672A (zh) | 2009-06-17 |
CN101458672B true CN101458672B (zh) | 2011-08-24 |
Family
ID=40769541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101790695A Active CN101458672B (zh) | 2007-12-10 | 2007-12-10 | 一种热插拔设备、电脑及数据传输指示方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101458672B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102436425B (zh) * | 2011-10-21 | 2015-04-22 | 珠海全志科技股份有限公司 | 一种移动存储设备的热拔方法及实现装置 |
CN106445844B (zh) * | 2016-11-25 | 2024-03-22 | 远峰科技股份有限公司 | 一种扩展卡的数据保护方法和装置 |
WO2018166072A1 (zh) * | 2017-03-13 | 2018-09-20 | 华为技术有限公司 | 一种数据处理方法及装置 |
CN109995632B (zh) * | 2019-05-16 | 2021-11-02 | 阳光电源股份有限公司 | 多机通信系统的通信方法、装置及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1385791A (zh) * | 2001-05-14 | 2002-12-18 | 精工爱普生株式会社 | 数据传送控制装置、电子设备及数据传送控制方法 |
CN1983221A (zh) * | 2006-05-31 | 2007-06-20 | 华为技术有限公司 | 一种热插拔控制装置及方法 |
-
2007
- 2007-12-10 CN CN2007101790695A patent/CN101458672B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1385791A (zh) * | 2001-05-14 | 2002-12-18 | 精工爱普生株式会社 | 数据传送控制装置、电子设备及数据传送控制方法 |
CN1983221A (zh) * | 2006-05-31 | 2007-06-20 | 华为技术有限公司 | 一种热插拔控制装置及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101458672A (zh) | 2009-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104220958B (zh) | 计算机装置及其通用串行总线连接器的工作模式转换方法 | |
CN101458672B (zh) | 一种热插拔设备、电脑及数据传输指示方法 | |
CN112463689B (zh) | 一种ocp卡热插拔装置、方法及计算机可读存储介质 | |
CN102073602B (zh) | 计算机系统、连接控制装置及连接与断开方法 | |
CN110908841B (zh) | 一种i2c通信异常恢复方法及装置 | |
US20130166934A1 (en) | Memory storage device, memory controller and controlling method | |
CN102411554B (zh) | 一种usb存储设备热插拔方法、装置及终端设备 | |
CN107357408B (zh) | 一种NVMe JBOF节能方法、系统及数据中心 | |
CN105677596B (zh) | 一种控制方法及电子设备 | |
CN101873217B (zh) | 一种以太网供电设备重启控制方法及其装置 | |
CN103309834A (zh) | 一种控制方法、控制装置和电子设备 | |
TW200923784A (en) | Electronic device and method for resuming from suspend-to-ram state thereof | |
CN105786315A (zh) | 时间显示方法及装置 | |
US20150149677A1 (en) | Hot plugging system and method | |
US20090177808A1 (en) | Apparatus and methods supporting device triggered disengagement of a hot-swappable serial device by a host system | |
CN111143898B (zh) | 可插拔存储器装置数据保护方法 | |
CN103309708A (zh) | 一种usb设备在主机自动安装驱动程序的方法 | |
CN107643900B (zh) | 一种显示器、升级方法 | |
CN102204199A (zh) | 用于通信接口的位反转 | |
CN105335248B (zh) | 信息处理方法及电子设备 | |
CN113946530A (zh) | 扩展卡的控制方法及装置、非易失性存储介质 | |
TW201237626A (en) | Memory storage apparatus, memory controller and audio playing method | |
CN104823174B (zh) | Usb3.0兼容设备的重新列举的方法和系统 | |
JP2008027447A (ja) | Usb記憶装置及びその媒体タイプの切り替え方法 | |
CN109739564B (zh) | 一种电子设备及控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |