一种通过声音监视计算机存储设备数据流量的装置和方法

文档序号:6382754阅读:479来源:国知局
专利名称:一种通过声音监视计算机存储设备数据流量的装置和方法
技术领域
本发明涉及计算机管理领域的信息监视技术,特别是指一种通过声音监视计算机存储设备数据流量的方法。
背景技术
对计算机存储系统数据流量的监控管理是计算机系统管理的重要内容之一。存储系统数据流量是指计算机的存储系统,如磁盘驱动器、磁盘阵列、磁带驱动器等,平均每秒钟读取或者写入的数据量是评价计算机系统整体负载轻重的一个重要指标。
目前,主要采用性能监视器软件对计算机存储设备流量进行监视。当需要对计算机存储设备数据流量进行监视时,通过操作系统调用存储设备数据流量监视程序在可视的图形界面上实时显示数据流量信息。当然,在不同操作系统下存储设备数据流量监视程序的具体实现不同,例如在Windows下,这个程序就是“性能监视器”,可以通过添加专门针对数据流量的计数器,对数据流量进行监视。
一般情况下,利用这种方法对计算机存储设备进行监视的优点在于数据准确、全面、直观。但是,系统管理员在监视存储系统的数据流量时,必须眼睛注视着图形界面显示的监控数据,不能进行其它工作,并且稍有疏忽,就会错过当前屏幕上显示的重要信息。当需要监视的存储设备多于两个时,一个管理员很难同时兼顾所有数据项的流量数据,因此工作效率不高。
而当计算机系统处于机架式服务器的环境时,多数服务器不配备显示器,此时要获取计算机存储设备流量信息,可能只能将其打印出来,提供给管理员,这种方式不方便、不实时,管理员不能迅速了解当前存储设备数据流量,因此也影响了管理员的工作效率。
其实,在实际应用过程中,大部分系统管理员并不需要了解非常精确的存储系统数据吞吐量,只需了解大致范围的数据即可。

发明内容
有鉴于此,本发明的目的在于提供一种通过声音监视计算机存储设备数据流量的装置,使用户方便地监视计算机存储系统的数据流量,进而大大提高计算机系统管理效率。
本发明的另一目的是提供一种通过声音监视计算机存储设备数据流量的方法,使用户方便地监视计算机存储系统的数据流量,进而大大提高计算机系统管理效率。
本发明提供的一种通过声音监视计算机存储设备数据流量的装置包括控制单元,接收来自用户的控制指令,并根据控制指令向监视单元发出启动/停止监视的控制信号;存储设备监视单元,用于保存存储流量数据信息和声音信息的对应关系,以及接收控制单元发出的启动监视的控制信号、获取存储流量监视数据以及根据获取的数据信息数据向发声装置输出声音控制信号,或,接收控制单元发出的停止监视的控制信号、并根据停止监视的控制信号输出声音控制信号;发声装置,根据接收到的声音控制信号控制声音。
所述控制单元包括信号接收单元和总控制模块,所述信号接收单元,用于接收来自用户发出的控制指令,并将控制指令输出至总控制模块;所述总控制模块,用于接收信号接收单元的控制指令,并根据控制指令确定并输出启动/停止监视的控制信号。
所述信号接收单元为计算机前面板上的按钮,或与计算机连接的开关。
所述发声装置为计算机的嗡鸣器、喇叭或外接的可控发声装置。
本发明提供的一种实现通过声音监视计算机存储设备数据流量方法包括
A.控制单元接收到用户的控制指令后,确定指令类型,如果是启动指令,则启动存储设备监视单元,执行步骤B,如果是停止指令,控制存储流量监视程序停止监视;B.存储设备监视单元实时获取当前存储设备流量数据,并根据自身保存的存储设备流量与特定声音的对应关系,确定该存储设备的当前流量数据所对应的声音信息;C.存储设备监视单元利用步骤B中获得的声音信息,控制发声装置发声。
所述声音信息为频率和/或节奏。
步骤C所述发声为语言提示,或歌曲。
步骤B中所述存储设备为磁盘,或磁盘阵列,或磁带,或光盘柜,或USB移动硬盘,或几种的任意组合。
步骤A中所述控制单元是通过操作系统获取到用户的控制指令。
所述操作系统为windows系统,步骤B中存储设备当前流量信息是根据WMI编程接口确定。
当操作系统为linux系统时,步骤B中存储设备当前流量信息是根据操作系统内核的PROC文件系统获取。
步骤A中控制单元接收到用户的控制指令包括A1、当启动/停止开关接收到用户的触发时,通过修改中断处理程序触发中断,在中断过程中,向总控制程序发送信号以唤醒总控制程序;A2、总控制程序接收到启动/停止开关发送的信号,检查自己是否是被信号所唤醒的,如果是,执行步骤A3,否则,跳出本流程;A3、总控制程序判断接收到的信号是否是与中断处理程序约定好的信号,如果是,则接收到一次用户触发开关的事件,否则,认为没有接收到用户触发开关事件。
所述中断为并口中断,或串口中断。
所述中断为本地计算机或非本地计算机系统的中断。
所述控制发声包括控制频率和节奏。
所述控制频率是存储设备监视单元通过调用操作系统所提供的发声功能程序实现。
所述控制节奏是通过控制发声的间隔时间。
本发明通过声音监视计算机存储系统数据流量。在实际应用过程中,可以根据即时数据流量状况的变化,相应改变某种频率声音的节奏,以实时反映某种存储设备数据流量的当前状况。当需要同时监视多个存储设备时,可以指定多种频率的声音与之对应,这样只需要听各种频率的声音就可以同时监视多个存储设备的数据流量。系统管理员可以在听声音监视计算机存储系统数据流量的同时做其他工作,这样就提高了系统管理员的工作效率,为计算机的管理工作带来了方便,增加了计算机的可用性。


图1为实现本发明的装置示意图;图2为实现本发明装置的具体实施例示意图;图3为图2所示的装置实现本发明方法的流程示意图;图4为总控制程序接收用户触发开关事件的方法流程示意图。
具体实施例方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。
参见图1所示,实现本发明的装置包括控制单元101、存储设备监视单元102和发声装置103。其中,控制单元101,用于接收来自用户的控制指令,并根据控制指令向102存储设备监视单元发出启动/停止监视的控制信号;存储设备监视单元102,用于保存存储流量数据信息和声音信息的对应关系,以及接收控制单元101发出的启动监视的控制信号、获取存储设备的流量监视数据以及根据获取的数据信息数据向发声装置103输出声音控制信号,或者接收控制单元101发出的停止监视的控制信号、并根据停止监视的控制信号向发声装置103输出声音控制信号;发声装置103根据接收到的声音控制信号控制声音。
控制单元101还进一步包括信号接收单元104和总控制模块105。信号接收单元104,用于接收来自用户发出的控制指令,并将控制指令输出至总控制模块105;总控制模块105,用于接收信号接收单元104的控制指令,并根据控制指令确定并输出启动/停止监视的控制信号。
实际上,信号接收单元104也就相当于启动/停止开关,其可以是计算机的机箱前面板上的按钮或自定义的一个按键等。而且一个存储设备可以对应一个开关,也可以是多个设备对应一个开关。发声装置可以采用机箱内的喇叭、嗡鸣器或外接特制的发声装置。发声装置发出的声音可以是语言提示、音乐或某种特定的声音等。
当控制单元101接收到用户的启动监视指令后,向存储设备监视单元102发出启动监视控制信号,存储设备监视单元102对存储设备的流量进行监视,获取到数据流量信息,并从自身保存的数据流量信息与声音信息的对应关系中获取该数据流量信息所对应的声音信息,并控制发声装置发出该流量信息所对应的声音。
当控制单元101接收到用户的停止监视指令后,向存储设备监视单元102发出停止监视的控制信号,存储设备监视单元102停止对存储设备的流量进行监视,并控制发声装置停止发声。
下面结合附图和具体实施例详细说明本发明的技术方案。
参见图2所示,实现本实施例的装置包括启动/停止开关、存储流量监视程序、发声装置和总控制程序。其中,启动/停止开关用于触发启动或者停止存储流量监视程序;总控制程序,运行在操作系统下,与上述提到的控制模块相对应,用于接收到用户通过启动/停止开关的触发的信号时,启动或停止存储流量监视程序;存储流量监视程序,运行在操作系统下,对应于上述存储设备监视单元,用于获取需要监视的存储设备的数据流量,并根据获取到的发声信息控制发生装置发声;发声装置,用户在存储流量监视程序的控制下,发出对应频率和节奏的声音。
下面参见流程图3,详细介绍上述实施例的装置实现监视的方法。其具体包括以下步骤步骤300预先设置存储设备数据流量与声音信息的对应关系,即设置好用什么声音来表示多少数据流量的数值,其中声音可以包括语言、频率和节奏等。
步骤301~302启动/停止开关通过操作系统接收到用户的触发开关事件后,启动总控制程序,总控制程序查看存储流量监视程序是否正在运行,如果没有运行,说明用户要启动监视计算机存储系统数据流量的功能,则启动存储流量监视程序,执行步骤303;如果存储流量监视程序已在运行,说明用户想停止通过声音监视存储设备数据流量的功能,则停止存储流量监视程序。
步骤303存储流量监视程序调用操作系统提供的接口,实时获取相应存储设备流量信息,包括读出或写入的数据流量,或读出和写入的总流量等。
步骤304存储流量监视程序根据预先设置的存储设备数据流量信息与声音信息的对应关系,确定应该发出的声音频率和节奏。
步骤305存储流量监视程序调用操作系统提供的发声接口,或自定义的发声接口,控制发声装置按照步骤304确定的频率和节奏发出声音。当然,在停止存储流量监视程序时,也可以根据用户需要发出特定的某种声音。
虽然磁盘、磁盘阵列、磁带是不同的存储设备,但是从操作系统来看,都是存储数据的块设备,因此处理方法基本相同。而且,操作系统可以是windows操作系统,也可以是linux操作系统。在windows操作系统下,可以通过调用WMI(WMI,Windows Management Instrument)编程接口,即Windows下的用于系统管理的专用编程接口,可以实现对系统性能、统计信息等等的管理、控制,从而获取出存储设备流量。下面是以linux操作系统为例,通过声音监视计算机第一块SCSI硬盘的读出、写入数据流量总和的实例。
在实际应用过程中,上述启动/停止开关可以通过一个触发开关实现,这个触发开关的两根引线,一根接地,另一根接在计算机并口的中断引脚上,如在PC上并口的引脚10,并且用户每按一下开关,就会触发一次并口中断。存储流量监视程序是一个运行在Linux下的用户空间应用程序。总控制程序是一个运行在Linux下的用户空间应用程序。并且,本实施例利用计算机的机箱喇叭作为发声装置。
以下分别从总控制程序接收用户触发开关事件、存储流量监视程序获取特定存储设备数据流量数据以及存储流量监视程序控制计算机机箱喇叭发声频率和节奏的过程来说明。
一、总控制程序接收用户触发开关事件的方法参见图4所示,在Linux下实现总控制程序接收用户触发开关事件的过程如下步骤400~401当启动/停止开关接收到用户的触发时,触发一次并口中断,在中断过程中,向总控制程序发送信号以唤醒总控制程序。这里,可以通过修改并口中断处理程序使中断发生。
步骤402总控制程序接收到启动/停止开关发送的信号,被唤醒。这里,由于总控制程序本身是死循环,每次循环时首先进入睡眠状态,并只有当发生并口中断时,才会被并口中断处理程序唤醒。
步骤403总控制程序检查自己是否是被信号所唤醒的,如果是,执行步骤404,否则,跳出本流程。
步骤404总控制程序判断接收到的信号是否是与并口中断处理程序约定好的信号,如果是,则认为接收到一次用户触发开关的事件,否则,认为没有接收到用户触发开关事件。
需要说明的是,总控制程序接收用户触发开关事件的方法很多,比如,还可以通过ACPI协议(Advanced Configuration and Power Interface)接管电源按钮,通过按下机箱前面板电源按钮触发开关事件,或者使用串口或其它计算机系统端口的中断代替并口中断,将开关的一个引脚,或者通过计算机网络接收从远程发来的控制指令,并传递给总控制程序。
二、存储流量监视程序获取特定存储设备数据流量的方法在Linux操作系统下,可以根据Linux操作系统内核的Proc文件系统,即/proc目录下的文件和子目录,获取特定存储设备的数据流量。这里,本实施例是要获取计算机第一块SCSI硬盘的读出、写入的总数据流量。该方法如下(1)读取/proc/stat文件。对于系统中每一个存储设备的数据流量统计可以从/proc/stat文件中读取,这些数据都保存在该文件以”disk_io”开头的那一行数据中。
(2)该文件中关于存储设备数据流量的典型格式如下disk_io(2,0)(47,38,50,9,179)(8,3)(41121,32219,554170,8902,502456)每一个存储设备的数据流量,都按照如下格式显示(Major,Minor)(devio,rio,rblk,wio,wblk)其中,Major是该存储设备的主设备号,Minor是该存储设备的次设备号,Linux内核通过Major和Minor来确定一个唯一的存储设备。
devio是从系统启动后对该存储设备累计进行读取、写入的操作的次数的总和,即rio+wio。
Rio和wio是从系统启动后对该存储设备进行读取、写入的操作的次数。
Rblk和wblk是从系统启动后对该存储设备进行读取、写入的数据块的数量。每个数据块大小是512字节。
按照Linux操作系统内核的规定,详细文档可参见Linux内核源代码中的文件documentation/devices.txt,系统中第一块SCSI硬盘的主设备号是8,次设备号是3,因此在/proc/stat文件中的disk_io开头那一行找到Major和Minor分别是8、3的数据数列,就可以分析出这块硬盘的数据流量。
所谓输入输出数据流量,指的是存储设备平均每秒钟读出和写入的数据量,这里将数据流量的单位定为字节(byte),根据实际情况,具体的单位会有所调整。由于Linux内核中提供的流量统计数据是累计数据,所以如果读取两次累计的流量数据,并除以两次读取时间的时间差,那么得到的就是这段时间内平均每秒钟的数据流量。当两次读取的时间间隔很短时,如1~2秒时,就可以认为得到的流量就是该存储设备当前实时的数据流量。
也就是说,如果第一次读出的数据为rblk1,wblk1,第二次读出的数据为rblk2,wblk2,两次读取的间隔时间为T,当T很短时(1-2秒),即可以认为该设备实时的读出、写入总数据流量L为L=[(rblk2+wblk2)-(rblk1+wblk1)]*512/T[单位字节/秒]这里之所以要乘以512,是因为Linux内核中统计的是读、写的数据块数量,每一个数据块是512字节,所以要以字节为单位进行统计,就需要乘以512。
对于单独的读出或写入数据流量的获取方法,与总流量获取的方式相类似,只是不需要进行读出、写入数据的求和运算,直接相减。对于其它存储设备,区别在于主设备号Major和次设备号Minor有所不同,详细规定,可参看Linux内核源代码中的文件documentation/devices.txt。
三、存储流量监视程序控制计算机机箱喇叭发声频率和节奏的方法控制发声的频率是这样实现的Linux操作系统提供了现成的发声功能,存储流量监视程序可以直接调用对应的接口。其基本调用方式如下(1)打开控制台文件。存储流量监视程序打开Linux下面的终端设备文件/dev/console,并获取返回的文件标识符。可以通过如下的C语言程序语句实现console_fd=open(″/dev/console″,O_WRONLY);其中console_fd即为打开控制台文件后返回的文件标识符。
(2)按给定频率发声。通过对console_fd表示的终端设备文件发送ioctl命令,可以实现让机箱喇叭发声。可通过如下C语言程序语句实现ioctl(console_fd,KIOCSOUND,1190000/freq);其中,console_fd代表/dev/console终端设备的文件标识符,KIOCSOUND是控制终端发声的命令(Linux操作系统规定的),freq是我们给定的发声频率(频率参数要采用1190000/freq的格式也是Linux操作系统规定的,1190000是常数)。
一旦该程序语句被执行,计算机的机箱喇叭就会持续的发出给定频率的声音。
(3)停止发声通过对console_fd表示的终端设备文件发送ioctl命令,可以使计算机机箱喇叭停止发声。可通过如下C语言程序语句实现ioctl(console_fd,KIOCSOUND,0);这与控制机箱喇叭发声的语句唯一的差别就是频率参数为0。
由于存储流量监视程序运行,就会打开终端设备文件,不再关闭,除非总控制程序停止存储流量监视程序,因此这里不做关闭终端设备文件的操作。
另外,控制发声的节奏,实际上控制发声的停止间隔时间的长短。例如,让喇叭每次发出持续时间为0.5秒的声音,然后增加或缩短两次喇叭发声的时间间隔,就可以达到减缓或加快喇叭发声节奏的目的。具体的时间间隔与计算机存储系统数据流量之间的对应关系,应根据实际情况和用户需求确定。例如,当存储流量监视程序所监视的存储设备的数据流量变大时,可以减少喇叭发声的时间间隔,这就加快了喇叭发声的节奏,声音就变的急促起来。这样用户听到声音变急促了,就知道要监视的那个存储设备的数据流量变大了。当存储流量监视程序所监视的存储设备的数据流量变小时,可以增加喇叭发声的时间间隔,这就降低了喇叭发声的节奏,声音就变的缓慢下来。这样用户听到声音变缓慢了,就知道他要监视的那个存储设备的数据流量降低了。
本发明通过不同频率的声音来监视计算机存储设备的数据流量。存储设备可以为磁盘、磁盘阵列或磁带,或三种的任意组合。并且,本发明可以据即时数据流量状况的变化,相应改变某种频率声音的节奏,以实时反映某种存储设备数据流量的当前状况。当需要同时监视多个存储设备时,可以指定多种频率的声音与之对应,这样只需要听各种频率的声音就可以同时监视多个存储设备的数据流量。可以使用声音对计算机上具有的各种存储系统的数据流量进行监视,包括磁盘、磁带、磁盘阵列等等。系统管理员可以在听声音监视计算机存储系统数据流量的同时做其他工作,这样就提高了工作效率。
总之,以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
权利要求
1.一种通过声音监视计算机存储设备数据流量的装置,其特征在于,该装置包括控制单元,接收来自用户的控制指令,并根据控制指令向监视单元发出启动/停止监视的控制信号;存储设备监视单元,用于保存存储流量数据信息和声音信息的对应关系,以及接收控制单元发出的启动监视的控制信号、获取存储流量监视数据以及根据获取的数据信息数据向发声装置输出声音控制信号,或,接收控制单元发出的停止监视的控制信号、并根据停止监视的控制信号输出声音控制信号;发声装置,根据接收到的声音控制信号控制声音。
2.根据权利要求1所述的装置,其特征在于,所述控制单元包括信号接收单元和总控制模块,所述信号接收单元,用于接收来自用户发出的控制指令,并将控制指令输出至总控制模块;所述总控制模块,用于接收信号接收单元的控制指令,并根据控制指令确定并输出启动/停止监视的控制信号。
3.根据权利要求2所述的装置,其特征在于,所述信号接收单元为计算机前面板上的按钮,或与计算机连接的开关。
4.根据权利要求1所述的装置,其特征在于,所述发声装置为计算机的嗡鸣器、喇叭或外接的可控发声装置。
5.一种利用权利要求1所述的装置实现通过声音监视计算机存储设备数据流量的方法,其特征在于,该方法包括以下步骤A.控制单元接收到用户的控制指令后,确定指令类型,如果是启动指令,则启动存储设备监视单元,执行步骤B,如果是停止指令,控制存储流量监视程序停止监视;B.存储设备监视单元实时获取当前存储设备流量数据,并根据自身保存的存储设备流量与特定声音的对应关系,确定该存储设备的当前流量数据所对应的声音信息;C.存储设备监视单元利用步骤B中获得的声音信息,控制发声装置发声。
6.根据权利要求5所述的方法,其特征在于,所述声音信息为频率和/或节奏。
7.根据权利要求6所述的方法,其特征在于,步骤C所述发声为语言提示,或歌曲。
8.根据权利要求5所述的方法,其特征在于,步骤B中所述存储设备为磁盘,或磁盘阵列,或磁带,或光盘柜,或USB移动硬盘,或几种的任意组合。
9.根据权利要求5所述的方法,其特征在于,步骤A中所述控制单元是通过操作系统获取到用户的控制指令。
10.根据权利要求9所述的方法,其特征在于,所述操作系统为windows系统,步骤B中存储设备当前流量信息是根据WMI编程接口确定。
11.根据权利要求9所述的方法,其特征在于,当操作系统为linux系统时,步骤B中存储设备当前流量信息是根据操作系统内核的PROC文件系统获取。
12.根据权利要求11所述的方法,其特征在于,步骤A中控制单元接收到用户的控制指令包括A1、当启动/停止开关接收到用户的触发时,通过修改中断处理程序触发中断,在中断过程中,向总控制程序发送信号以唤醒总控制程序;A2、总控制程序接收到启动/停止开关发送的信号,检查自己是否是被信号所唤醒的,如果是,执行步骤A3,否则,跳出本流程;A3、总控制程序判断接收到的信号是否是与中断处理程序约定好的信号,如果是,则接收到一次用户触发开关的事件,否则,认为没有接收到用户触发开关事件。
13.根据权利要求12所述的方法,其特征在于,所述中断为并口中断,或串口中断。
14.根据权利要求12所述的方法,其特征在于,所述中断为本地计算机或非本地计算机系统的中断。
15.根据权利要求11所述的方法,其特征在于,所述控制发声包括控制频率和节奏。
16.根据权利要求15所述的方法,其特征在于,所述控制频率是存储设备监视单元通过调用操作系统所提供的发声功能程序实现。
17.根据权利要求15所述的方法,其特征在于,所述控制节奏是通过控制发声的间隔时间。
全文摘要
本发明公开了一种通过声音监视计算机存储设备数据流量的装置,该装置包括控制单元,接收来自用户的控制指令,并根据控制指令向监视单元发出启动/停止监视的控制信号;存储设备监视单元,用于接收控制单元发出的启动监视的控制信号、获取存储流量监视数据以及根据获取的数据信息数据向发声装置输出声音控制信号,或,接收控制单元发出的停止监视的控制信号、并根据停止监视的控制信号输出声音控制信号;发声装置,根据接收到的声音控制信号控制声音。同时本发明还公开了一种通过声音监视计算机存储设备数据流量的方法。本发明可以提高系统管理员的工作效率,为计算机的管理工作带来了方便,增加了计算机的可用性。
文档编号G06F11/32GK1661565SQ200410004580
公开日2005年8月31日 申请日期2004年2月23日 优先权日2004年2月23日
发明者李勇, 周涛 申请人:联想(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1