用来增进存取效能的方法以及相关的个人电脑及储存媒体的制作方法

文档序号:6598962阅读:152来源:国知局
专利名称:用来增进存取效能的方法以及相关的个人电脑及储存媒体的制作方法
技术领域
本发明涉及通用串行总线大容量储存设备(Universal Serial Bus MassStorage, USB Mass Storage)的控制相关技术领域,更具体地说,涉及一种用来增进 一部个人电脑(Personal Computer)与一通用串行总线大容量储存设备之间的数据存取 (Access)效能的方法、相关的个人电脑、以及储存一相关的通用串行总线大容量储存设备 驱动程序的一储存媒体。
背景技术
当一通用串行总线大容量储存设备诸如通用串行总线快闪驱动器(USBFlash Drive)或通用串行总线快闪碟(USB Flash Disk)被电连接至一主装置(Host Device)诸 如个人电脑时,在典型状况下,该主装置会利用其本身的一操作系统(Operating System, OS)原本所附上或提供的一些驱动程序来控制该通用串行总线大容量储存设备。依据相 关技术,该主装置与该通用串行总线大容量储存设备之间的数据存取应当符合某些通用串 行总线储存设备传输规范。尤其是,在该主装置利用一指令来存取该通用串行总线大容量 储存设备且该指令指示大于64千字节(Kilobyte)的数据量的状况下,例如该数据量等于 一兆字节(Megabyte),则一较高层的驱动程序首先产生16个输入/输出请求封包Qnput/ Output Request Package, IRP),然后一中间层的驱动程序对应地产生48个输入/输出请 求封包。接下来所要存取的数据被分割为16部分以供通过该48个输入/输出请求封包中 的16个输入/输出请求封包予以载送,其中每一部分具有64千字节。因此,以上运作造成 使用者时间的不必要浪费。在该数据量远大于上述例子的状况下,使用者时间的不必要浪费确实成为一大问 题,这是因为使用者可能会感到不悦。如此,需要一种新颖的方法来增进该主装置与该通用 串行总线大容量储存设备之间的数据存取的效能。

发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种用来增进 一部个人电脑与一通用串行总线大容量储存设备之间的数据存取效能的方法、相关的个 人电脑、以及储存一相关的通用串行总线大容量储存设备(Universal Serial Bus Mass Storage, USB Mass Storage)驱动程序的一储存媒体,以解决上述问题。本发明解决其技术问题所采用的技术方案之一是构造一种用来增进存取效能的 方法,该方法用来增进一部个人电脑与一通用串行总线大容量储存设备之间的数据存取的 效能,该个人电脑配备有针对通用串行总线数据存取的多层(Layer)驱动程序,该些层驱 动程序中的一较低层包含一总线驱动程序(Bus Driver),该方法包含有监控由该个人电 脑的一操作系统的档案系统(Operating System File System,OS File System)传送至该 些层驱动程序中的一较高层的多个指令;以及当由该操作系统的档案系统传送至该较高层 的一指令用来存取数据量达到一预定阈值的数据时,则忽略该些层驱动程序中的至少两层之间所传送的多个输入/输出请求封包anput/Output RequestPackage,IRP)中的一部 分、自动地产生用来回应该些被忽略的输入/输出请求封包的多个回应、以及修改该指令 的剩余的输入/输出请求封包中的至少一输入/输出请求封包以通过较少的输入/输出请 求封包数量来正确地存取该数据,其中该多个输入/输出请求封包关联于该指令。本发明所述的方法,其中该些层驱动程序中的该较高层包含一碟片驱动程序 (Disk Driver),以及该些层驱动程序中的一中间层包含一通用串行总线储存设备驱动程 序(USB Storage Driver)。本发明所述的方法,其中该至少两层之间所传送的该些输入/输出请求封包包含 该较高层与该中间层之间所传送的输入/输出请求封包。本发明所述的方法,其中该至少两层之间所传送的该些输入/输出请求封包另包 含该中间层与该较低层之间所传送的输入/输出请求封包。本发明所述的方法,其中该至少两层之间所传送的该些输入/输出请求封包包含 该中间层与该较低层之间所传送的输入/输出请求封包。本发明所述的方法,其中修改该指令的该些剩余的输入/输出请求封包中的该至 少一输入/输出请求封包的步骤另包含修改该输入/输出请求封包的一标头(Header)中的一字段,其中修改后的该字段 用来指出该些剩余的输入/输出请求封包中的至少一部分的数据量。本发明所述的方法,其中该预定阈值代表小于或等于64千字节(Kilobyte)的数据量。本发明解决其技术问题所采用的技术方案之二是构造一种个人电脑,该个人电 脑包含储存一通用串行总线大容量储存设备驱动程序的一储存媒体,该通用串行总线大容 量储存设备驱动程序用来增进该个人电脑与一通用串行总线大容量储存设备之间的数据 存取的效能,该个人电脑配备有针对通用串行总线数据存取的多层驱动程序,该些层驱动 程序中的一较低层包含一总线驱动程序,该通用串行总线大容量储存设备电连接至该个人 电脑的一通用串行总线端口(USB Port),其中当执行该通用串行总线大容量储存设备驱动 程序时,该个人电脑依据一种方法来运作,该方法包含有监控由该个人电脑的一操作系统 的档案系统传送至该些层驱动程序中的一较高层的多个指令;以及当由该操作系统的档案 系统传送至该较高层的一指令用来存取数据量达到一预定阈值的数据时,则忽略该些层驱 动程序中的至少两层之间所传送的多个输入/输出请求封包中的一部分、自动地产生用来 回应该些被忽略的输入/输出请求封包的多个回应、以及修改该指令的剩余的输入/输出 请求封包中的至少一输入/输出请求封包以通过较少的输入/输出请求封包数量来正确地 存取该数据,其中该多个输入/输出请求封包关联于该指令。本发明所述的个人电脑,其中该些层驱动程序中的该较高层包含一碟片驱动程序 (Disk Driver),以及该些层驱动程序中的一中间层包含一通用串行总线储存设备驱动程 序(USB Storage Driver)。本发明所述的个人电脑,其中该至少两层之间所传送的该些输入/输出请求封包 包含该较高层与该中间层之间所传送的输入/输出请求封包。本发明所述的个人电脑,其中该至少两层之间所传送的该些输入/输出请求封包 另包含该中间层与该较低层之间所传送的输入/输出请求封包。
本发明所述的个人电脑,其中该至少两层之间所传送的该些输入/输出请求封包 包含该中间层与该较低层之间所传送的输入/输出请求封包。本发明所述的个人电脑,其中修改该指令的该些剩余的输入/输出请求封包中的 该至少一输入/输出请求封包的步骤另包含修改该输入/输出请求封包的一标头(Header)中的一字段,其中修改后的该字段 用来指出该些剩余的输入/输出请求封包中的至少一部分的数据量。本发明所述的个人电脑,其中该预定阈值代表小于或等于64千字节(Kilobyte) 的数据量。本发明解决其技术问题所采用的技术方案之三是构造一种储存媒体,该储存媒 体储存一通用串行总线大容量储存设备驱动程序,该通用串行总线大容量储存设备驱动程 序用来增进一部个人电脑与一通用串行总线大容量储存设备之间的数据存取的效能,该个 人电脑配备有针对通用串行总线数据存取的多层驱动程序,该些层驱动程序中的一较低层 包含一总线驱动程序,该通用串行总线大容量储存设备电连接至该个人电脑的一通用串行 总线端口,其中当执行该通用串行总线大容量储存设备驱动程序时,该个人电脑依据一种 方法来运作,该方法包含有监控由该个人电脑的一操作系统的档案系统传送至该些层驱 动程序中的一较高层的多个指令;以及当由该操作系统的档案系统传送至该较高层的一指 令用来存取数据量达到一预定阈值的数据时,则忽略该些层驱动程序中的至少两层之间所 传送的多个输入/输出请求封包中的一部分、自动地产生用来回应该些被忽略的输入/输 出请求封包的多个回应、以及修改该指令的剩余的输入/输出请求封包中的至少一输入/ 输出请求封包以通过较少的输入/输出请求封包数量来正确地存取该数据,其中该多个输 入/输出请求封包关联于该指令。本发明所述的储存媒体,其中该些层驱动程序中的该较高层包含一碟片驱动程序 (Disk Driver),以及该些层驱动程序中的一中间层包含一通用串行总线储存设备驱动程 序(USB Storage Driver)。本发明所述的储存媒体,其中该至少两层之间所传送的该些输入/输出请求封包 包含该较高层与该中间层之间所传送的输入/输出请求封包。本发明所述的储存媒体,其中该至少两层之间所传送的该些输入/输出请求封包 另包含该中间层与该较低层之间所传送的输入/输出请求封包。本发明所述的储存媒体,其中该至少两层之间所传送的该些输入/输出请求封包 包含该中间层与该较低层之间所传送的输入/输出请求封包。本发明所述的储存媒体,其中修改该指令的该些剩余的输入/输出请求封包中的 该至少一输入/输出请求封包的步骤另包含修改该输入/输出请求封包的一标头(Header)中的一字段,其中修改后的该字段 用来指出该些剩余的输入/输出请求封包中的至少一部分的数据量。本发明所述的储存媒体,其中该预定阈值代表小于或等于64千字节(Kilobyte) 的数据量。实施本发明的技术方案,具有以下有益效果本发明中,通过监控由个人电脑的操 作系统的档案系统传送至多层驱动程序中的较高层的指令,且在由该档案系统传送至该较 高层的一指令用来存取数据量大于一预定阈值的数据时,则忽略该些层驱动程序中的至少两层之间所传送的多个输入/输出请求封包中的一部分、自动地产生用来回应该些被忽略 的输入/输出请求封包的多个回应、以及修改剩余的输入/输出请求封包中的至少一输入 /输出请求封包以通过较少的输入/输出请求封包数量来正确地存取该数据,于是,可增进 通用串行主装置与通用串行总线大容量储存设备之间的数据存取的效能。


下面将结合附图及实施例对本发明作进一步说明,附图中图1是本发明一第一实施例的一种个人电脑的示意图;图2是本发明一实施例的一种用来增进一部个人电脑与一通用串行总线大容量 储存设备之间的数据存取效能的方法的流程图;图3是本发明一实施例中针对通用串行总线数据存取的多层(Layer)驱动程序 的示意图,其中依据图2所示方法所实施的一通用串行总线大容量储存设备驱动程序的一 较高滤波器驱动程序(Upper Filter Driver)与一较低滤波器驱动程序(Lower Filter Driver)于逻辑上插入该些层驱动程序中的某些层之间或之上;图4绘示图3所示实施例中关于忽略多个输入/输出请求封包anput/Output Request Package, IRP)中的一部分的实施细节;图5是本发明一第二实施例的一种个人电脑的示意图,其中该第二实施例为该第 一实施例的变化例。主要组件符号说明
权利要求
1.一种用来增进存取效能的方法,该方法用来增进一部个人电脑与一通用串行总线大 容量储存设备之间的数据存取的效能,该个人电脑配备有针对通用串行总线数据存取的多 层驱动程序,该些层驱动程序中的一较低层包含一总线驱动程序,其特征在于,该方法包含 有监控由该个人电脑的一操作系统的档案系统传送至该些层驱动程序中的一较高层的 多个指令;以及当由该操作系统的档案系统传送至该较高层的一指令用来存取数据量达到一预定阈 值的数据时,则忽略该些层驱动程序中的至少两层之间所传送的多个输入/输出请求封包 中的一部分、自动地产生用来回应该些被忽略的输入/输出请求封包的多个回应、以及修 改该指令的剩余的输入/输出请求封包中的至少一输入/输出请求封包以通过较少的输入 /输出请求封包数量来正确地存取该数据,其中该多个输入/输出请求封包关联于该指令。
2.如申请专利范围第1项所述的方法,其特征在于,其中该些层驱动程序中的该较高 层包含一碟片驱动程序,以及该些层驱动程序中的一中间层包含一通用串行总线储存设备 驱动程序。
3.如申请专利范围第2项所述的方法,其特征在于,其中该至少两层之间所传送的该 些输入/输出请求封包包含该较高层与该中间层之间所传送的输入/输出请求封包。
4.如申请专利范围第3项所述的方法,其特征在于,其中该至少两层之间所传送的该 些输入/输出请求封包另包含该中间层与该较低层之间所传送的输入/输出请求封包。
5.如申请专利范围第2项所述的方法,其特征在于,其中该至少两层之间所传送的该 些输入/输出请求封包包含该中间层与该较低层之间所传送的输入/输出请求封包。
6.如申请专利范围第1项所述的方法,其特征在于,其中修改该指令的该些剩余的输 入/输出请求封包中的该至少一输入/输出请求封包的步骤另包含修改该输入/输出请求封包的一标头中的一字段,其中修改后的该字段用来指出该些 剩余的输入/输出请求封包中的至少一部分的数据量。
7.如申请专利范围第1项所述的方法,其特征在于,其中该预定阈值代表小于或等于 64千字节的数据量。
8.一种个人电脑,其包含储存一通用串行总线大容量储存设备驱动程序的一储存媒 体,该通用串行总线大容量储存设备驱动程序用来增进该个人电脑与一通用串行总线大容 量储存设备之间的数据存取的效能,该个人电脑配备有针对通用串行总线数据存取的多层 驱动程序,该些层驱动程序中的一较低层包含一总线驱动程序,该通用串行总线大容量储 存设备电连接至该个人电脑的一通用串行总线端口,其中当执行该通用串行总线大容量储 存设备驱动程序时,该个人电脑依据一种方法来运作,其特征在于,该方法包含有监控由该个人电脑的一操作系统的档案系统传送至该些层驱动程序中的一较高层的 多个指令;以及当由该操作系统的档案系统传送至该较高层的一指令用来存取数据量达到一预定阈 值的数据时,则忽略该些层驱动程序中的至少两层之间所传送的多个输入/输出请求封包 中的一部分、自动地产生用来回应该些被忽略的输入/输出请求封包的多个回应、以及修 改该指令的剩余的输入/输出请求封包中的至少一输入/输出请求封包以通过较少的输入 /输出请求封包数量来正确地存取该数据,其中该多个输入/输出请求封包关联于该指令。
9. 一种储存媒体,其储存一通用串行总线大容量储存设备驱动程序,该通用串行总线 大容量储存设备驱动程序用来增进一部个人电脑与一通用串行总线大容量储存设备之间 的数据存取的效能,该个人电脑配备有针对通用串行总线数据存取的多层驱动程序,该些 层驱动程序中的一较低层包含一总线驱动程序,该通用串行总线大容量储存设备电连接至 该个人电脑的一通用串行总线端口,其中当执行该通用串行总线大容量储存设备驱动程序 时,该个人电脑依据一种方法来运作,其特征在于,该方法包含有监控由该个人电脑的一操作系统的档案系统传送至该些层驱动程序中的一较高层的 多个指令;以及当由该操作系统的档案系统传送至该较高层的一指令用来存取数据量达到一预定阈 值的数据时,则忽略该些层驱动程序中的至少两层之间所传送的多个输入/输出请求封包 中的一部分、自动地产生用来回应该些被忽略的输入/输出请求封包的多个回应、以及修 改该指令的剩余的输入/输出请求封包中的至少一输入/输出请求封包以通过较少的输入 /输出请求封包数量来正确地存取该数据,其中该多个输入/输出请求封包关联于该指令。
全文摘要
本发明涉及一种用来增进数据存取效能的方法,其包含有监控由该个人电脑的操作系统的档案系统传送至多层驱动程序中的较高层的指令;以及当由该档案系统传送至该较高层的一指令用来存取数据量大于一预定阈值的数据时,则忽略该些层驱动程序中的至少两层之间所传送的多个输入/输出请求封包中的一部分、自动地产生用来回应该些被忽略的输入/输出请求封包的多个回应、以及修改剩余的输入/输出请求封包中的至少一输入/输出请求封包以通过较少的输入/输出请求封包数量来正确地存取该数据。本发明还涉及个人电脑、以及一储存媒体。本发明可增进通用串行主装置与通用串行总线大容量储存设备之间的数据存取的效能。
文档编号G06F3/06GK102141897SQ20101012108
公开日2011年8月3日 申请日期2010年2月2日 优先权日2010年2月2日
发明者江长豪 申请人:慧荣科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1