CN1815447A - 输入/输出子系统中确定命令的装载的方法和设备 - Google Patents
输入/输出子系统中确定命令的装载的方法和设备 Download PDFInfo
- Publication number
- CN1815447A CN1815447A CNA2006100021840A CN200610002184A CN1815447A CN 1815447 A CN1815447 A CN 1815447A CN A2006100021840 A CNA2006100021840 A CN A2006100021840A CN 200610002184 A CN200610002184 A CN 200610002184A CN 1815447 A CN1815447 A CN 1815447A
- Authority
- CN
- China
- Prior art keywords
- input
- output commands
- output
- commands
- time
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- E—FIXED CONSTRUCTIONS
- E02—HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
- E02D—FOUNDATIONS; EXCAVATIONS; EMBANKMENTS; UNDERGROUND OR UNDERWATER STRUCTURES
- E02D5/00—Bulkheads, piles, or other structural elements specially adapted to foundation engineering
- E02D5/02—Sheet piles or sheet pile bulkheads
- E02D5/03—Prefabricated parts, e.g. composite sheet piles
- E02D5/04—Prefabricated parts, e.g. composite sheet piles made of steel
- E02D5/08—Locking forms; Edge joints; Pile crossings; Branch pieces
-
- E—FIXED CONSTRUCTIONS
- E02—HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
- E02D—FOUNDATIONS; EXCAVATIONS; EMBANKMENTS; UNDERGROUND OR UNDERWATER STRUCTURES
- E02D17/00—Excavations; Bordering of excavations; Making embankments
- E02D17/02—Foundation pits
- E02D17/04—Bordering surfacing or stiffening the sides of foundation pits
-
- E—FIXED CONSTRUCTIONS
- E02—HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
- E02D—FOUNDATIONS; EXCAVATIONS; EMBANKMENTS; UNDERGROUND OR UNDERWATER STRUCTURES
- E02D5/00—Bulkheads, piles, or other structural elements specially adapted to foundation engineering
- E02D5/22—Piles
- E02D5/24—Prefabricated piles
- E02D5/28—Prefabricated piles made of steel or other metals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- E—FIXED CONSTRUCTIONS
- E02—HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
- E02D—FOUNDATIONS; EXCAVATIONS; EMBANKMENTS; UNDERGROUND OR UNDERWATER STRUCTURES
- E02D2300/00—Materials
- E02D2300/0026—Metals
-
- E—FIXED CONSTRUCTIONS
- E02—HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
- E02D—FOUNDATIONS; EXCAVATIONS; EMBANKMENTS; UNDERGROUND OR UNDERWATER STRUCTURES
- E02D2600/00—Miscellaneous
- E02D2600/20—Miscellaneous comprising details of connection between elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2206/00—Indexing scheme related to dedicated interfaces for computers
- G06F2206/10—Indexing scheme related to storage interfaces for computers, indexing schema related to group G06F3/06
- G06F2206/1012—Load balancing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Structural Engineering (AREA)
- Mining & Mineral Resources (AREA)
- General Life Sciences & Earth Sciences (AREA)
- Paleontology (AREA)
- Civil Engineering (AREA)
- Life Sciences & Earth Sciences (AREA)
- Chemical & Material Sciences (AREA)
- Composite Materials (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种在输入/输出子系统中确定输入/输出命令的装载的方法和设备。在根据从盘驱动器提供的输入/输出命令而将数据输入到盘扇区或从盘扇区输出数据的输入/输出系统中确定输入/输出命令的装载的方法包括:(a)从盘驱动器提取将数据输入到盘扇区或从盘扇区输出数据的输入/输出命令,并从所述输入/输出命令产生一组输入/输出命令;(b)基于所述一组输入/输出命令分析所述输入/输出命令的装载特性;和(c)基于所述输入/输出命令的装载特性确定所述输入/输出命令的装载是否对应于多媒体应用程序。
Description
技术领域
本发明涉及一种输入/输出子系统中读取盘的数据的方法和设备,更具体的说,涉及一种分析应用程序的输入/输出命令的装载特性和确定输入/输出命令的装载是否对应于多媒体应用程序的方法和设备。
背景技术
在过去的30年中对于从大型机到膝上计算机的每个盘已经执行了存储数据的重要功能。在过去,主要关注盘的数据存储容量。然而,由于容量在最近几年已经显著地增加,因此,允许盘执行输入/输出子系统的角色的盘的智能已经成为焦点。
图1是一般的输入/输出子系统的功能方框图。该输入/输出子系统包括应用层110、文件系统层120、盘驱动程序层130和盘140。
操作系统从作为操作系统的上层的应用层110接收由用户输入的文件名,并从由其自己管理的整个目录检索文件名。在该操作系统中,使用称作文件描述符的文件标识信息来识别输入文件。
盘的存储空间包括诸如轨道和扇区的空间成分,文件系统层120执行将所述空间成分组织成逻辑块的线性阵列的角色。在一般的文件系统层中,每个文件与数据结构相关联,该数据结构被称作索引节点并具有诸如位置、最后更新时间和数据存储于其中的逻辑块的访问模式的文件相关信息。文件系统层120从从操作系统接收的文件描述符中检索与作为输入操作的目标的文件相关联的索引节点,从该索引节点获得文件相关信息,并执行输入/输出操作。
盘驱动程序层130将盘140连到操作系统。作为输入操作的结果输出的逻辑块号码被传递到盘驱动程序层130。由于盘140不识别逻辑块号码,因此盘驱动层130将该逻辑块号码转换为诸如柱面、轨道和扇区的物理空间信息,并将该信息传递到盘140。盘140使用该物理空间信息执行输入/输出操作。
一般的输入/输出子系统根据从盘驱动程序层120接收的输入/输出命令将数据输入到盘140或从盘140输出数据,并确定作为该输入/输出命令的目标的文件是文本文件还是多媒体文件。
具有诸如信息处理、传输和存储的计算机功能的信息电子装置与通用的计算机不同,它具有诸如诸如视频文件和音乐文件的多媒体数据的记录和重放的输入/输出命令的特定的装载。
在输入/输出子系统中需要一种确定输入/输出命令的装载是否对应于多媒体应用程序,从而对应于该多媒体应用程序的最优的盘调度被设定,并且操作系统根据该多媒体应用程序而被最优地控制的方法和设备。
发明内容
本发明提供一种方法,所述方法用于分析从盘驱动器中提取的输入/输出命令的装载特性并根据分析结果确定所述输入/输出命令的所述装载是否对应于多媒体应用程序。
本发明也提供一种设备,所述设备用于分析从盘驱动器中提取的输入/输出命令的装载特性并根据分析结果确定所述输入/输出命令的所述装载是否对应于多媒体应用程序。
根据本发明的一个方面,提供一种方法,所述方法根据从盘驱动器提供的输入/输出命令确定在用于将数据输入到盘扇区或从盘扇区输出数据的系统中的输入/输出命令,所述方法包括:(a)从盘驱动器提取用于将数据输入到盘扇区或从盘扇区输出数据的输入/输出命令,并从所述输入/输出命令产生一组输入/输出命令;(b)基于所述一组输入/输出命令分析所述输入/输出命令的装载特性;和(c)基于所述输入/输出命令的所述装载特性确定所述输入/输出命令的装载是否对应于多媒体应用程序。
操作(a)可包括:(a1)在第一时间期间从盘驱动器提取用于将数据输入到盘扇区或从盘扇区输出数据的输入/输出命令以存储它们;和(a2)在第二时间期间从在所述第一时间期间存储的输入/输出命令中产生由最近的输入/输出命令组成的一组输入/输出命令。
操作(b)可包括:从所述一组输入/输出命令中提取所述输入/输出命令的装载特性;和从所述输入/输出命令的所述装载特性计算所述输入/输出命令的装载特性的统计量,并分析所述输入/输出命令的装载特性。
操作(c)可包括:由通过学习多媒体应用程序的输入/输出命令而产生的分类单元从所述输入/输出命令的装载特性的统计量中将所述输入/输出命令的所述装载特性分类;和基于分类单元的分类确定所述输入/输出命令的所述装载是否对应于多媒体应用程序。
根据本发明的另一方面,提供一种设备,所述设备根据从盘驱动器提供的输入/输出命令确定在用于将数据输入到盘扇区或从盘扇区输出数据的系统中的输入/输出命令,所述设备包括:提取单元,从盘驱动器提取用于将数据输入到盘扇区或从盘扇区输出数据的输入/输出命令,并从提取的输入/输出命令产生一组输入/输出命令;分析单元,基于所述一组输入/输出命令分析所述输入/输出命令的装载特性;和确定单元,基于所述输入/输出命令的所述装载特性确定所述输入/输出命令的装载是否对应于多媒体应用程序。
提取单元可包括:存储单元,在第一时间期间存储用于将数据输入到盘扇区或从盘扇区输出数据的输入/输出命令;和产生单元,在第二时间期间从在所述第一时间期间存储的输入/输出命令中产生由最近的输入/输出命令组成的一组输入/输出命令。
产生单元可包括:第一提取单元,提取输入/输出命令并将它们存储在存储单元中;更新单元,如果从盘驱动器请求新的输入/输出命令,则将最旧的输入/输出命令从在所述第一时间期间存储的输入/输出命令中移除并在所述第一时间期间将新的输入/输出命令增加到所述输入/输出命令以在所述第一时间期间更新所述输入/输出命令;和输入/输出命令组产生单元,在所述第二时间期间从更新的输入/输出命令中产生由最近的输入/输出命令组成的一组输入/输出命令。
分析单元可包括:第二提取单元,从所述一组输入/输出命令中提取所述输入/输出命令的装载特性;和计算单元,从所述输入/输出命令的所述装载特性计算所述输入/输出命令的装载特性的统计量。
确定单元可包括:分类单元,基于学习结果和所述输入/输出命令的所述装载特性将所述输入/输出命令的所述装载特性分类;和装载确定单元,基于分类单元的分类确定所述输入/输出命令的所述装载是否对应于多媒体应用程序。
附图说明
通过下面结合附图对其具体的示例性实施例进行的描述,本发明的上述和其他特点和优点将会变得清楚,其中:
图1是一般的输入/输出子系统的功能方框图;
图2是根据本发明实施例的确定数据输入/输出命令的装载的设备;
图3是图2中显示的确定数据输入/输出命令的装载的设备的提取单元和分析单元的功能方框图;
图4是图2中显示的确定数据输入/输出命令的装载的设备的确定单元的功能方框图;
图5是显示根据本发明实施例的确定数据输入/输出命令的装载的方法的流程图;
图6是图5中产生一组输入/输出命令的操作和分析输入/输出命令的特性的操作的流程图;
图7是图5中确定输入/输出命令的装载是否对应于多媒体应用程序的操作的流程图;
图8A至图8M显示多个多媒体应用程序的一组输入/输出命令,即,输入/输出命令的踪迹;和
图9是显示图8中显示的多媒体播放机的输入/输出命令的踪迹的特性的图表。
具体实施方式
图2是根据本发明实施例的确定数据输入/输出命令的装载的设备的功能方框图。确定数据输入/输出命令的装载的设备包括提取单元230、分析单元240和确定单元250。
盘驱动器210包括用于存储传递到盘220的输入/输出命令的第一存储器(未显示)。提取单元从盘驱动器210提取传递到盘220的输入/输出命令。由提取单元230提取的输入/输出命令存储在包括在提取单元230中的第二存储器(未显示)中。每当新的输入/输出命令从盘驱动器210传递到盘220时,提取单元230从第二存储器中移除最旧的输入/输出命令并将新的输入/输出命令存储在第二存储器中以更新输入/输出命令。一组输入/输出命令(称作输入/输出命令的踪迹)从更新的输入/输出命令中产生并被提供给分析单元240。
分析单元240分析从盘驱动器210传递到盘220的输入/输出命令的装载特性。分析单元240从所述一组输入/输出命令中提取输入/输出命令的装载特性,并从所述输入/输出命令的装载特性计算所述输入/输出命令的装载特性的统计量。
确定单元250基于由分析单元240分析的所述输入/输出命令的装载特性确定所述输入/输出命令的装载是否对应于多媒体应用程序。
图3是根据本发明实施例的提取单元230和分析单元240的功能方框图。提取单元230包括产生单元310和存储单元320,分析单元240包括第二提取单元330和计算单元340。
首先,将描述提取单元230。提取单元230中的产生单元310在第二时间期间从存储的输入/输出命令中产生一组最近的输入/输出命令。产生单元310包括输入/输出命令组产生单元312、第一提取单元314和更新单元316。第一提取单元314提取从盘驱动器210传递到盘220的输入/输出命令。提取单元230包括存储单元320,用于存储由第一提取单元314在第一时间期间提取的输入/输出命令。
当新的输入/输出命令被从盘驱动器210请求到盘220时,更新单元316在所述第一时间期间从所述输入/输出命令中移除最旧的输入/输出命令并在所述第一时间期间将新的输入/输出命令增加到所述输入/输出命令以在所述第一时间期间更新所述输入/输出命令。输入/输出命令组产生单元312在第二时间期间从被更新单元316在所述第一时间期间更新的所述输入/输出命令中产生一组由输入/输出命令组成的输入/输出命令。
根据本发明的应用领域,存储单元320可以由作为一组可用的存储空间的第一存储单元(下文中,称作自由列表)和作为一组已用的存储空间的第二存储单元(下文中,称作已用列表)组成。由第一提取单元314在所述第一时间期间提取的输入/输出命令被存储在已用列表中。当新的输入/输出命令被提取时,更新单元316从自由列表中获得存储空间以在其中存储新的输入/输出命令,并将该存储空间连接到已用列表。另外,更新单元316从已用列表中移除最旧的输入/输出命令并将其中存储移除的输入/输出命令的存储空间返还给自由列表。输入/输出命令组产生单元312在所述第二时间期间从存储在已用列表中的输入/输出命令产生一组由最近的输入/输出命令组成的输入/输出命令。根据本发明的应用领域,所述第一时间可以等于所述第二时间。这包括在本发明的范围内。
根据本发明的应用领域,存储单元320可以是由通用接口连接的大量存储介质。在这种情况中,由第一提取单元314提取的输入/输出命令被连续地存储在存储单元320中,输入/输出命令组产生单元320在第二时间期间从存储在存储单元320中的输入/输出命令中产生一组由最近的输入/输出命令组成的输入/输出命令。
分析单元240包括第二提取单元330和计算单元340,并基于一组输入/输出命令分析输入/输出命令的装载特性。第二提取单元330提取包括所述一组输入/输出命令的输入/输出命令的装载特性。从盘驱动器210传递到盘的输入/输出命令包括用于将在预定应用程序中执行文件所需的数据输入到盘220的扇区或者从盘220的扇区输出这样的数据的信息。第二提取单元330从所述信息中提取输入/输出命令的装载特性,例如,输入/输出请求时间、输入/输出扇区的数量和输入/输出扇区的位置。
计算单元340计算输入/输出命令的装载特性的统计量。输入/输出命令的装载特性的统计量表示从盘驱动器210传递到盘220的输入/输出命令的装载,并且可以是:输入/输出请求时间间隔的平均值、标准差的平均值、中值的平均值、输入/输出请求时间间隔的全距的平均值、在时间单元期间读取的扇区的数量的平均值和在时间单元期间输入/输出命令的数量的平均值。
图4是根据本发明实施例的确定单元250的功能方框图。确定单元250包括分类单元410和装载确定单元420。
分类单元410基于输入/输出命令的统计量将所述输入/输出命令的装载分类。分类单元410基于通过学习至少一个多媒体应用程序的输入/输出命令的装载特性而产生的学习结果而被生成。
当诸如mpeg2dec、xine和mplayer的至少一个多媒体应用程序执行至少一个诸如低质量新闻、高质量新闻、低质量音乐影像和高质量音乐影像的多媒体文件时,与在时间单元期间的输入/输出请求时间和输入/输出扇区的数量相关的材料被提取。使用提取的材料产生输入变量。所述输入变量是从提取的材料中计算出的:输入/输出请求时间间隔的平均值、标准差的平均值、中值的平均值、输入/输出请求时间间隔的全距的平均值、在时间单元期间读取的扇区的数量的平均值和在时间单元期间输入/输出命令的数量的平均值。计算的输入变量被输入到boosting算法,在其中,输入变量被用于产生决策树。
分类单元410基于由学习装置产生的决策树将所述一组输入/输出命令的装载特性分类。也就是说,分类单元410接收所述一组输入/输出命令的统计量并基于决策树将所述输入/输出命令的装载特性分类。
根据本发明的应用领域,可以通过诸如Baysian学习、神经网络或支持向量机方法的另一种学习方法学习多媒体应用程序的输入/输出命令的装载特性。
装载确定单元420基于分类单元410的分类确定输入/输出命令的装载是否对应于多媒体应用程序。
图5是显示根据本发明实施例的确定数据输入/输出命令的装载的方法的流程图。
在确定数据输入/输出命令的装载的方法中,从盘驱动器中提取用于输入/输出盘扇区的数据的输入/输出命令,并从提取的输入/输出命令中产生一组输入/输出命令(操作510)。从所述一组输入/输出命令提取输入/输出命令的装载特性,并计算所述装载特性的统计量以分析输入/输出命令的装载特性(操作520)。基于输入/输出命令的装载特性确定输入/输出命令的装载是否对应于多媒体应用程序。
图6是产生一组输入/输出命令的操作510和分析输入/输出命令的装载特性的操作520的流程图。从盘驱动器中提取用于将数据输入到盘扇区或从盘扇区输出数据的输入/输出命令(操作610)。提取的输入/输出命令在第一时间期间被存储在存储单元中。如果新的输入/输出命令从盘驱动器传递到盘,则最旧的输入/输出命令在所述第一时间期间被从输入/输出命令中移除,并且新的输入/输出命令在所述第一时间期间被增加到输入/输出命令。也就是说,每当新的输入/输出命令被传递时,输入/输出命令在所述第一时间期间被更新(操作620)。在所述第二时间期间从在所述第一时间期间更新的输入/输出命令中产生由输入/输出命令组成的一组输入/输出命令(操作630)。操作610到操作630一起组成了操作510。
从一组输入/输出命令中提取诸如输入/输出命令的输入/输出请求时间、输入/输出扇区数量和输入/输出扇区位置的输入/输出命令的装载特性(操作640)。从输入/输出命令的装载特性中计算一组输入/输出命令的装载的统计量(操作650)。所述统计量可以是:输入/输出请求时间间隔的平均值、标准差的平均值、中值的平均值、输入/输出请求时间间隔的全距的平均值、在时间单元期间读取的扇区的数量的平均值和在时间单元期间输入/输出命令的数量的平均值。操作640到操作650一起组成了操作520。根据本发明的应用领域,可以使用不同种类的输入/输出命令的装载特性和输入/输出命令的装载的统计量。这些都包括在本发明的范围内。
图7是确定输入/输出命令的装载是否对应于多媒体应用程序的操作530的流程图。由学习多媒体应用程序的输入/输出命令而产生的分类单元通过输入/输出命令的装载特性的统计量将输入/输出命令的装载特性分类(操作710)。基于分类单元的分类确定输入/输出命令的装载是否对应于多媒体应用程序(操作720)。
下文中,参考图8和9,将描述被学习从而生成分类单元的多媒体应用程序的输入/输出命令的公共特性。
图8A到8M显示了一组输入/输出命令,也就是说,多个多媒体应用程序的输入/输出命令的踪迹。图8A到图8M显示多个广泛使用的多媒体应用程序例如,xine、mpeg2dec或mplayer访问盘的形式。X轴表示输入/输出命令访问时间,Y轴表示传递到盘的输入/输出命令的扇区数量。
图8A显示在xine中以8.76Mb/s再现的高质量新闻的输入/输出命令的踪迹,图8B显示在mpeg2dec中以8.76Mb/s再现的高质量新闻的输入/输出命令的踪迹,图8C显示在mplayer中以8.76Mb/s再现的高质量新闻的输入/输出命令的踪迹,图8D显示在xine中以0.38Mb/s再现的低质量新闻的输入/输出命令的踪迹,图8E显示在mplayer中以0.38Mb/s再现的低质量新闻的输入/输出命令的踪迹,图8F显示在xine中以1.18Mb/s再现的高质量音乐影像的输入/输出命令的踪迹,图8G显示在mplayer中以1.18Mb/s再现的高质量音乐影像的输入/输出命令的踪迹,图8H显示在xine中以0.67Mb/s再现的低质量音乐影像的输入/输出命令的踪迹,图8I显示在mplayer中以0.67Mb/s再现的低质量音乐影像的输入/输出命令的踪迹,图8J显示在xine中以2.60Mb/s再现的高质量音乐影像的输入/输出命令的踪迹,图8K显示在mplayer中以2.60Mb/s再现的高质量音乐影像的输入/输出命令的踪迹,图8L显示在xine中以1.16Mb/s再现的低质量音乐影像的输入/输出命令的踪迹,图8M显示在mplayer中以1.16Mb/s再现的低质量音乐影像的输入/输出命令的踪迹。(以表格的形式中可更好地访问本段落中的信息)
图9是显示图8A到8M中显示的多媒体播放机的输入/输出命令的踪迹的特性的图表。这里,1到6分别指示8.76Mb/s高质量新闻、0.38Mb/s低质量新闻、1.18Mb/s高质量音乐影像、0.67Mb/s低质量音乐影像、2.60Mb/s高质量音乐影像和1.16Mb/s低质量音乐影像。另外,A到H指示读取请求访问的定时之间的平均间隔(ms)、读取请求访问的定时之间的间隔的标准差(ms)、读取请求访问的定时之间的间隔的中值(ms)、读取请求访问的定时之间的间隔的范围(ms)、读取请求大小的平均值(扇区数量)、写请求大小的平均值(扇区数量)、读请求比率(%)和写请求比率(%)。
参考图8和9,诸如xine、mplayer和mpeg2dec的多媒体播放器的输入/输出命令根据多媒体播放器的种类和运动图像的质量而具有不同的特性,但具有如下的公共特性。
首先,特定数量的数据被周期性地请求到盘。第二,全部多媒体播放器具有重复地产生具有连续的248或8扇区的输入/输出请求的输入/输出命令的踪迹。这是由于多媒体文件被连续地存储在盘中而产生的。第三,虽然多媒体播放器读取多媒体文件,但是还产生周期性地更新文件的索引节点的写操作。
如图8和9中所示,多媒体应用程序的输入/输出命令具有公共特性。由于分类单元能够检查这些公共特性,因此它能够确定输入/输出命令的装载是否对应于多媒体应用程序。
本发明的实施例能够被写为计算机程序,并在使用计算机可读记录介质执行程序的通用数字计算机中被实现。所述计算机可读记录介质的例子包括磁存储介质(如,CD-ROM或DVD)和诸如载波(如,通过互联网的传输)的存储介质。
根据本发明的确定输入/输出命令的装载的方法和设备,最优的盘调度根据多媒体应用程序而被设定,并确定输入/输出命令的装载是否对应于多媒体应用程序,从而输入/输出命令被最优地控制以对应于多媒体应用程序。
虽然参照其示例性实施例具体地显示和描述了本发明,但是本领域的技术人员应该理解,在不脱离由权利要求限定的本发明的精神和范围的情况下,可以对这些实施例做出形式和细节上的各种改变。
Claims (20)
1、一种在根据从盘驱动器提供的输入/输出命令而将数据输入到盘扇区或从盘扇区输出数据的输入/输出系统中确定输入/输出命令的装载的方法,包括:
(a)从盘驱动器提取用于将数据输入到盘扇区或从盘扇区输出数据的输入/输出命令,并从所述输入/输出命令产生一组输入/输出命令;
(b)基于产生的一组输入/输出命令分析提取的输入/输出命令的装载特性;和
(c)基于分析的所述输入/输出命令的装载特性确定所述输入/输出命令的装载是否对应于多媒体应用程序。
2、如权利要求1所述的方法,其中,操作(a)包括:
(a1)在第一时间期间从盘驱动器提取用于将数据输入到盘扇区或从盘扇区输出数据的输入/输出命令并存储它们;和
(a2)在第二时间期间从在所述第一时间期间存储的输入/输出命令中产生由最近的输入/输出命令组成的所述一组输入/输出命令。
3、如权利要求2所述的方法,其中,操作(a1)包括:
从盘驱动器提取用于将数据输入到盘扇区或从盘扇区输出数据的输入/输出命令;
在所述第一时间期间存储提取的输入/输出命令;和
如果从盘驱动器请求新的输入/输出命令,则在所述第一时间期间将最旧的输入/输出命令从在所述第一时间期间存储的输入/输出命令中移除并提取新的输入/输出命令以将它增加到所述输入/输出命令。
4、如权利要求3所述的方法,其中,所述第一时间和所述第二时间彼此相同。
5、如权利要求2所述的方法,其中,操作(b)包括:
从所述一组输入/输出命令中提取所述输入/输出命令的装载特性;和
从所述输入/输出命令的所述装载特性计算所述输入/输出命令的装载特性的统计量,并分析所述输入/输出命令的装载特性。
6、如权利要求5所述的方法,其中,所述输入/输出命令的装载特性是输入/输出请求时间、输入/输出扇区的数量和输入/输出扇区的位置。
7、如权利要求5所述的方法,其中,所述输入/输出命令的装载特性的统计量是:输入/输出请求时间间隔的平均值、标准差的平均值、中值的平均值、输入/输出请求时间间隔的全距的平均值、在时间单元期间读取的扇区的数量的平均值和在时间单元期间输入/输出命令的数量的平均值。
8、如权利要求5所述的方法,其中,操作(c)包括:
由通过学习多媒体应用程序的输入/输出命令而产生的分类单元通过所述输入/输出命令的装载特性的统计量将所述输入/输出命令的所述装载特性分类;和
基于分类单元的分类确定所述输入/输出命令的所述装载是否对应于多媒体应用程序。
9、如权利要求8所述的方法,其中,通过Baysian学习、神经网络、boosting算法或支持向量机方法学习所述多媒体应用程序的输入/输出命令。
10、一种在其上实现权利要求9的方法的计算机程序的计算机可读介质。
11、一种在根据从盘驱动器提供的输入/输出命令而将数据输入到盘扇区或从盘扇区输出数据的输入/输出系统中确定输入/输出命令的装载的设备,包括:
提取单元,从盘驱动器提取用于将数据输入到盘扇区或从盘扇区输出数据的输入/输出命令,并从提取的输入/输出命令产生一组输入/输出命令;
分析单元,基于产生的所述一组输入/输出命令分析所述提取的输入/输出命令的装载特性;和
确定单元,基于分析的所述输入/输出命令的装载特性确定所述输入/输出命令的装载是否对应于多媒体应用程序。
12、如权利要求11所述的设备,其中,所述提取单元包括:
存储单元,在第一时间期间存储用于将数据输入到盘扇区或从盘扇区输出数据的输入/输出命令;和
产生单元,在第二时间期间从在所述第一时间期间存储的输入/输出命令中产生由最近的输入/输出命令组成的一组输入/输出命令。
13、如权利要求12所述的设备,其中,所述产生单元包括:
第一提取单元,提取输入/输出命令并将它们存储在存储单元中;
更新单元,如果从盘驱动器请求新的输入/输出命令,则将最旧的输入/输出命令从在所述第一时间期间存储的输入/输出命令中移除并在所述第一时间期间将新的输入/输出命令增加到所述输入/输出命令以在所述第一时间期间更新所述输入/输出命令;和
输入/输出命令组产生单元,在所述第二时间期间从更新的输入/输出命令中产生由最近的输入/输出命令组成的所述一组输入/输出命令。
14、如权利要求13所述的设备,其中,所述第一时间和所述第二时间彼此相同。
15、如权利要求13所述的设备,其中,所述存储单元包括:
第一存储单元,其是一组可用的存储空间;和
第二存储单元,其是一组已用的存储空间。
16、如权利要求13所述的设备,其中,所述分析单元包括:
第二提取单元,从所述一组输入/输出命令中提取所述输入/输出命令的装载特性;和
计算单元,从所述输入/输出命令的所述装载特性计算所述输入/输出命令的装载特性的统计量。
17、如权利要求16所述的设备,其中,所述输入/输出命令的装载特性是输入/输出请求时间、输入/输出扇区的数量和输入/输出扇区的位置。
18、如权利要求16所述的设备,其中,所述输入/输出命令的装载特性的统计量是:输入/输出请求时间间隔的平均值、标准差的平均值、中值的平均值、输入/输出请求时间间隔的全距的平均值、在时间单元期间读取的扇区的数量的平均值和在时间单元期间输入/输出命令的数量的平均值。
19、如权利要求16所述的设备,其中,所述确定单元包括:
分类单元,学习至少一个多媒体应用程序的输入/输出命令的装载特性,并基于学习结果和所述输入/输出命令的所述装载特性的统计量将所述输入/输出命令的所述装载特性分类;和
装载确定单元,基于分类单元的分类确定所述输入/输出命令的所述装载是否对应于多媒体应用程序。
20、如权利要求19所述的设备,其中,通过Baysian学习、神经网络、boosting算法或支持向量机方法学习所述多媒体应用程序的输入/输出命令。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050010863A KR100585176B1 (ko) | 2005-02-04 | 2005-02-04 | 입출력 서브시스템에서 입출력 명령의 부하 판단 방법 및장치 |
KR1020050010863 | 2005-02-04 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1815447A true CN1815447A (zh) | 2006-08-09 |
CN100489779C CN100489779C (zh) | 2009-05-20 |
Family
ID=36907665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006100021840A Expired - Fee Related CN100489779C (zh) | 2005-02-04 | 2006-01-18 | 输入/输出子系统中确定命令的装载的方法和设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20060200588A1 (zh) |
JP (1) | JP4369435B2 (zh) |
KR (1) | KR100585176B1 (zh) |
CN (1) | CN100489779C (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7272728B2 (en) | 2004-06-14 | 2007-09-18 | Iovation, Inc. | Network security and fraud detection system and method |
US9262346B2 (en) * | 2010-06-21 | 2016-02-16 | Hewlett Packard Enterprises Development LP | Prioritizing input/outputs at a host bus adapter |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7006881B1 (en) * | 1991-12-23 | 2006-02-28 | Steven Hoffberg | Media recording device with remote graphic user interface |
TW436777B (en) * | 1995-09-29 | 2001-05-28 | Matsushita Electric Ind Co Ltd | A method and an apparatus for reproducing bitstream having non-sequential system clock data seamlessly therebetween |
KR20020031197A (ko) * | 2000-07-21 | 2002-04-26 | 이데이 노부유끼 | 기록장치, 재생장치 및 기록재생시스템 |
KR100375661B1 (ko) * | 2000-11-08 | 2003-03-15 | 주식회사 하이닉스반도체 | 메인 프로세서에서의 어플리케이션 부하 측정방법 |
US7149248B2 (en) * | 2001-09-12 | 2006-12-12 | Broadcom Corporation | Command packet system and method supporting improved trick mode performance in video decoding systems |
US6947758B2 (en) * | 2001-12-05 | 2005-09-20 | Samsung Electronics Co., Ltd. | System and method for providing a distributed processing element unit in a mobile telecommunications network |
US6922025B2 (en) * | 2002-02-21 | 2005-07-26 | Anorad Corporation | Zero ripple linear motor system |
US20040025173A1 (en) * | 2002-04-24 | 2004-02-05 | Gil Levonai | Interaction abstraction system and method |
JP3799607B2 (ja) * | 2002-05-08 | 2006-07-19 | ソニー株式会社 | 情報配信システム、情報処理装置および方法、記録媒体、並びにプログラム |
US6895455B1 (en) * | 2002-06-26 | 2005-05-17 | Western Digital Technologies, Inc. | Disk drive and method for implementing nonstandard disk-drive commands on a serial ATA interface that only supports standard ATA disk-drive commands |
US6845405B1 (en) * | 2002-12-24 | 2005-01-18 | Western Digital Technologies, Inc. | Disk drive executing part of a linked disk command |
JP2004227097A (ja) * | 2003-01-20 | 2004-08-12 | Hitachi Ltd | 記憶デバイス制御装置の制御方法、及び記憶デバイス制御装置 |
US7206866B2 (en) * | 2003-08-20 | 2007-04-17 | Microsoft Corporation | Continuous media priority aware storage scheduler |
US7296007B1 (en) * | 2004-07-06 | 2007-11-13 | Ailive, Inc. | Real time context learning by software agents |
-
2005
- 2005-02-04 KR KR1020050010863A patent/KR100585176B1/ko not_active IP Right Cessation
-
2006
- 2006-01-18 CN CNB2006100021840A patent/CN100489779C/zh not_active Expired - Fee Related
- 2006-02-03 JP JP2006027486A patent/JP4369435B2/ja not_active Expired - Fee Related
- 2006-02-03 US US11/346,377 patent/US20060200588A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
CN100489779C (zh) | 2009-05-20 |
KR100585176B1 (ko) | 2006-05-30 |
US20060200588A1 (en) | 2006-09-07 |
JP2006216055A (ja) | 2006-08-17 |
JP4369435B2 (ja) | 2009-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8423513B2 (en) | File generation and search methods for data search, and database management system for data file search | |
CN102663090B (zh) | 元数据查询方法和装置 | |
JP5460486B2 (ja) | データをソートする装置及び方法 | |
JP2017518584A (ja) | フラッシュ最適化データ・レイアウトのための方法、フラッシュ最適化記憶のための装置、およびコンピュータ・プログラム | |
WO2011087757A1 (en) | Rolling audio recognition | |
WO2011087756A1 (en) | Multi-stage lookup for rolling audio recognition | |
CN112286461A (zh) | 一种数据迁移方法、装置及电子设备和存储介质 | |
CN112181902A (zh) | 数据库的存储方法、装置及电子设备 | |
Lim et al. | An analysis of image storage systems for scalable training of deep neural networks | |
CN106844541B (zh) | 一种联机分析处理方法及装置 | |
CN1815447A (zh) | 输入/输出子系统中确定命令的装载的方法和设备 | |
Park et al. | FAST: Flash-aware external sorting for mobile database systems | |
CN117251641A (zh) | 向量数据库检索方法、系统、电子设备及存储介质 | |
CN107430633B (zh) | 用于数据存储的系统及方法和计算机可读介质 | |
US20120281886A1 (en) | Staged element classification | |
CN103870476A (zh) | 检索方法及设备 | |
CN1815432A (zh) | 多媒体文件的输入/输出控制方法和设备 | |
US20110072117A1 (en) | Generating a Synthetic Table of Contents for a Volume by Using Statistical Analysis | |
CN114356912A (zh) | 一种向数据库写入数据的方法及计算机设备 | |
Lohar et al. | Content Based Image Retrieval System over Hadoop Using MapReduce | |
CN111797063A (zh) | 一种流式数据处理方法与系统 | |
CN111177419A (zh) | 数字学习内容的标注检索方法 | |
Gilheany | Processing time of TFIDF and Naive Bayes on Spark 2.0, Hadoop 2.6 and Hadoop 2.7: Which Tool Is More Efficient? | |
CN112433673B (zh) | 一种固态硬盘存储数据的方法和设备 | |
Metaxas | Arrow Prefetching: Prefetching Techniques for High Performance Big Data Processors using the Apache Arrow Data Format |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090520 Termination date: 20140118 |