CN107728946A - 磁盘阵列的挂载方法、Android设备和存储介质 - Google Patents

磁盘阵列的挂载方法、Android设备和存储介质 Download PDF

Info

Publication number
CN107728946A
CN107728946A CN201710934380.XA CN201710934380A CN107728946A CN 107728946 A CN107728946 A CN 107728946A CN 201710934380 A CN201710934380 A CN 201710934380A CN 107728946 A CN107728946 A CN 107728946A
Authority
CN
China
Prior art keywords
disk array
disk
raid10
hanging method
array
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.)
Pending
Application number
CN201710934380.XA
Other languages
English (en)
Inventor
杜伟
周伟明
张少龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHENZHEN HUADEAN TECHNOLOGY Co Ltd
Original Assignee
SHENZHEN HUADEAN TECHNOLOGY Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SHENZHEN HUADEAN TECHNOLOGY Co Ltd filed Critical SHENZHEN HUADEAN TECHNOLOGY Co Ltd
Priority to CN201710934380.XA priority Critical patent/CN107728946A/zh
Publication of CN107728946A publication Critical patent/CN107728946A/zh
Priority to PCT/CN2018/084312 priority patent/WO2019062098A1/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Abstract

本发明公开了一种磁盘阵列的挂载方法,该磁盘阵列的挂载方法应用于Android系统,包括:接收用户输入的磁盘阵列RAID10配置信息,生成对应的磁盘阵列信息,并获得所述Android系统中磁盘的信息;在所述磁盘信息对应的磁盘数量为2N、且N大于或等于2时,根据所述磁盘阵列信息创建对应的磁盘阵列接口;采用系统调用的方式通过所述磁盘阵列接口控制驱动程序根据所述磁盘阵列信息将磁盘集映射为对应的磁盘阵列设备文件,并根据所述磁盘阵列设备文件将所述Android系统中磁盘挂载至所述Android系统。本发明还公开了一种Android设备和存储介质。本发明能够在Android系统实现RAID10的支持和挂载。

Description

磁盘阵列的挂载方法、Android设备和存储介质
技术领域
本发明涉及Android系统技术领域,尤其涉及一种磁盘阵列的挂载方法、 Android设备和存储介质。
背景技术
随着互联网技术的不断发展,互联网应用的用户不断增加,全球范围内 每天产生的信息数据越来越多,数据增加速度越来越快。在这种环境下,各 种存储技术以及存储方案应运而生。其中RAID(Redundant Array of Independent Disks)冗余阵列技术凭借其高可靠性、大数据容量、适应强以及 高带宽等优点,在大型服务器得到了广泛的应用。其中RIAD技术拥有多种 等级方式,方便系统根据需求定制适合需求的存储方案。然而,虽然RAID 技术在基于windows和linux系统的大型服务器和一些较高的数据安全场合得 到广泛应用,但在基于Android系统对RAID的支持和挂载软件的设计基本上 是空白。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是 现有技术。
发明内容
本发明的主要目的在于提供一种磁盘阵列的挂载方法、Android设备和存 储介质,旨在在Android系统实现RAID10的支持和挂载。
为实现上述目的,本发明提供一种磁盘阵列的挂载方法,所述磁盘阵列 的挂载方法应用于Android系统,所述磁盘阵列的挂载方法包括以下步骤:
接收用户输入的磁盘阵列RAID10配置信息,生成对应的磁盘阵列信息, 并获得所述Android系统中磁盘的信息;
在所述磁盘信息对应的磁盘数量大于或等于2时,根据所述磁盘阵列信 息创建对应的磁盘阵列接口;
采用系统调用的方式通过所述磁盘阵列接口控制驱动程序根据所述磁盘 阵列信息将磁盘集映射为对应的磁盘阵列设备文件,并根据所述磁盘阵列设 备文件将所述Android系统中磁盘挂载至所述Android系统。
其中,所述挂载方法还包括:
接收应用程序发送的读写指令;
根据所述读写指令通过所述驱动程序对所述磁盘阵列设备文件进行读写 操作。
其中,所述挂载方法还包括:
检测磁盘阵列的状态,获得磁盘阵列RAID10的状态信息;
在检测到预设的状态信息时,上报至所述Android系统。
其中,所述挂载方法还包括:
发送Android系统的广播信息,其中所述广播信息包括磁盘阵列RAID10 出错信息、增加磁盘阵列RAID10和磁盘阵列RAID10挂载的广播信息,以使 得所述应用程序在接收到磁盘阵列RAID10出错、增加磁盘阵列RAID10或磁 盘阵列RAID10挂载信息的广播信息时,进行对应的处理。
其中,所述挂载方法还包括:
在检测到磁盘阵列RAID10中磁盘发生异常时,自动进行重建对应的磁 盘阵列接口;
在不满足磁盘阵列RAID10重建条件时,发送附加错误数据的广播信息, 以使得所述应用程序根据所述广播信息进行对应的处理。
其中,所述挂载方法还包括:
接收用户输入的查询指令;
根据所述查询指令查询磁盘阵列当前的状态信息,并显示。
其中,所述挂载方法还包括:
在接收用户通过应用程序输入的扩容指令时,基于所述扩容指令确定的 待添加RAID10格式磁盘,通过所述扩容指令在对应的RAID10接口进行扩容 操作;或者,
在接收用户通过应用程序输入的磁盘删除指令时,通过所述磁盘删除指 令确定的RAID10接口,根据所述磁盘删除指令在对应的RAID10中删除所述 磁盘删除指令对应的RAID10格式磁盘,并对删除磁盘后的RAID10进行重建; 或者,
在接收用户通过应用程序输入的热备盘的添加/删除指令时,通过所述添 加/删除指令确定的RAID10接口,根据所述添加/删除指令在对应的RAID10 中添加/删除所述添加/删除指令对应的RAID10格式热备盘。
其中,所述根据所述磁盘阵列设备文件将磁盘阵列挂载至所述Android 系统的步骤包括:
根据所述磁盘阵列设备文件通过Android系统中vold机制将所述Android 系统中磁盘挂载至所述Android系统。
此外,为实现上述目的,本发明还提供一种Android设备,所述Android 设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行 的磁盘阵列的挂载程序,所述磁盘阵列的挂载程序被所述处理器执行时实现 如上所述的方法的步骤。
此外,为实现上述目的,本发明还提供一种存储介质,所述计算机可读 存储介质上存储有磁盘阵列的挂载程序,所述磁盘阵列的挂载程序被处理器 执行时实现如上所述的磁盘阵列的挂载方法的步骤。
本发明通过接收用户输入的磁盘阵列RAID10配置信息,生成对应的磁 盘阵列信息,并获得所述Android系统中磁盘的信息;在所述磁盘信息对应的 磁盘数量大于或等于2时,根据所述磁盘阵列信息创建对应的磁盘阵列接口; 采用系统调用的方式通过所述磁盘阵列接口控制驱动程序根据所述磁盘阵列 信息将磁盘集映射为对应的磁盘阵列设备文件,并根据所述磁盘阵列设备文 件将所述Android系统中磁盘挂载至所述Android系统。通过上述方式,本发 明根据用户输入需要挂载的磁盘阵列RAID10的信息,生成对应的磁盘阵列 信息,并并获得所述Android系统中磁盘的信息,在所述磁盘信息对应的磁盘 数量大于或等于2时,根据所述磁盘阵列信息创建对应的阵列接口,然后采 用系统调用的方式使用创建的阵列接口控制驱动程序将磁盘阵列信息将磁盘 映射为磁盘阵列设备文件,存在Android系统中,从而Android系统可以根据 磁盘阵列设备文件挂载磁盘阵列RAID10,挂载磁盘阵列RAID10后,则可以 在Android系统中实现Android系统中应用软件像操作U盘设备那样操作磁盘 阵列RAID10。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的装置结构示意图;
图2为本发明磁盘阵列的挂载方法第一实施的流程示意图;
图3为本发明实施例中Android系统中的模块示意图;
图4为本发明实施例中RAID10的存储结构示意图;
图5为本发明磁盘阵列的挂载方法第二实施的流程示意图;
图6为本发明磁盘阵列的挂载方法第三实施的流程示意图;
图7为本发明磁盘阵列的挂载方法第四实施的流程示意图;
图8为本发明磁盘阵列的挂载方法第五实施的流程示意图。
本发明目的实现、功能特点及优点将结合实施例,参照附图做进一步说 明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限 定本发明。
本发明实施例的主要解决方案是:
由于现有技术基于Android系统对RAID的支持和挂载软件的设计基本上 是空白。
为了解决上述技术问题,本发明提供一种磁盘阵列的挂载方法、Android 设备和存储介质,通过接收用户输入的磁盘阵列RAID10配置信息,生成对 应的磁盘阵列信息,并获得所述Android系统中磁盘的信息;在所述磁盘信息 对应的磁盘数量大于或等于2时,根据所述磁盘阵列信息创建对应的磁盘阵 列接口;采用系统调用的方式通过所述磁盘阵列接口控制驱动程序根据所述 磁盘阵列信息将磁盘集映射为对应的磁盘阵列设备文件,并根据所述磁盘阵 列设备文件将所述Android系统中磁盘挂载至所述Android系统。通过上述方 式,本发明根据用户输入需要挂载的磁盘阵列RAID10的信息,生成对应的 磁盘阵列信息,并并获得所述Android系统中磁盘的信息,在所述磁盘信息对 应的磁盘数量大于或等于2时,根据所述磁盘阵列信息创建对应的阵列接口, 然后采用系统调用的方式使用创建的阵列接口控制驱动程序将磁盘阵列信息 将磁盘映射为磁盘阵列设备文件,存在Android系统中,从而Android系统可 以根据磁盘阵列设备文件挂载磁盘阵列RAID10,挂载磁盘阵列RAID10后, 则可以在Android系统中实现Android系统中应用软件像操作U盘设备那样操 作磁盘阵列RAID10。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的装置结构 示意图。
本发明实施例终端可以是PC,也可以是智能手机、平板电脑、电子书阅 读器、MP3(Moving Picture Experts Group Audio Layer III,动态影像专家压缩 标准音频层面3)播放器、MP4(Moving Picture Experts Group Audio Layer IV, 动态影像专家压缩标准音频层面4)播放器、便携计算机等具有显示功能的可 移动式终端设备。
如图1所示,该终端可以包括:处理器1001,例如CPU,通信总线1002, 用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现 这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单 元比如键盘(Keyboard),可选的用户接口1003还可以包括标准的有线接口、 无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI 接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器 (non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立 于前述处理器1001的存储装置。
可选地,终端还可以包括摄像头、RF(Radio Frequency,射频)电路, 传感器、音频电路、WiFi模块等等。其中,传感器比如光传感器、运动传感 器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器, 其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度,接近传感 器可在移动终端移动到耳边时,关闭显示屏和/或背光。作为运动传感器的一 种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别移动终端姿态的应用(比如横 竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、 敲击)等;当然,移动终端还可配置陀螺仪、气压计、湿度计、温度计、红 外线传感器等其他传感器,在此不再赘述。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限 定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部 件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系 统、网络通信模块、用户接口模块以及网络操作控制应用程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台 服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客 户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的磁盘 阵列的挂载程序,并执行以下操作:
接收用户输入的磁盘阵列RAID10配置信息,生成对应的磁盘阵列信息, 并获得所述Android系统中磁盘的信息;
在所述磁盘信息对应的磁盘数量大于或等于2时,根据所述磁盘阵列信 息创建对应的磁盘阵列接口;
采用系统调用的方式通过所述磁盘阵列接口控制驱动程序根据所述磁盘 阵列信息将磁盘集映射为对应的磁盘阵列设备文件,并根据所述磁盘阵列设 备文件将所述Android系统中磁盘挂载至所述Android系统。
进一步地,处理器1001可以调用存储器1005中存储的磁盘阵列的挂载 程序,还执行以下操作:
接收应用程序发送的读写指令;
根据所述读写指令通过所述驱动程序对所述磁盘阵列设备文件进行读写 操作。
进一步地,处理器1001可以调用存储器1005中存储的磁盘阵列的挂载 程序,还执行以下操作:
检测磁盘阵列RAID10的状态,获得磁盘阵列RAID10的状态信息;
在检测到预设的状态信息时,上报至所述Android系统。
进一步地,处理器1001可以调用存储器1005中存储的磁盘阵列的挂载 程序,还执行以下操作:
发送Android系统的广播信息,其中所述广播信息包括磁盘阵列RAID10 出错信息、增加磁盘阵列RAID10和磁盘阵列RAID10挂载的广播信息,以使 得所述应用程序在接收到磁盘阵列RAID10出错、增加磁盘阵列RAID10或磁 盘阵列RAID10挂载信息的广播信息时,进行对应的处理。
进一步地,处理器1001可以调用存储器1005中存储的磁盘阵列的挂载 程序,还执行以下操作:
在检测到磁盘阵列RAID10中磁盘发生异常时,自动进行重建对应的磁 盘阵列接口;
在不满足磁盘阵列RAID10重建条件时,发送附加错误数据的广播信息, 以使得所述应用程序根据所述广播信息进行对应的处理。
进一步地,处理器1001可以调用存储器1005中存储的磁盘阵列的挂载 程序,还执行以下操作:
接收用户输入的查询指令;
根据所述查询指令查询磁盘阵列RAID10当前的状态信息,并显示。
进一步地,处理器1001可以调用存储器1005中存储的磁盘阵列的挂载 程序,还执行以下操作:
在接收用户通过应用程序输入的扩容指令时,基于所述扩容指令确定的 待添加RAID10格式磁盘,通过所述扩容指令在对应的RAID10接口进行扩容 操作;或者,
在接收用户通过应用程序输入的磁盘删除指令时,通过所述磁盘删除指 令确定的RAID10接口,根据所述磁盘删除指令在对应的RAID10中删除所述 磁盘删除指令对应的RAID10格式磁盘,并对删除磁盘后的RAID10进行重建; 或者,
在接收用户通过应用程序输入的热备盘的添加/删除指令时,通过所述添 加/删除指令确定的RAID10接口,根据所述添加/删除指令在对应的RAID10 中添加/删除所述添加/删除指令对应的RAID10格式热备盘。
进一步地,处理器1001可以调用存储器1005中存储的磁盘阵列的挂载 程序,还执行以下操作:
根据所述磁盘阵列设备文件通过Android系统中vold机制将所述Android 系统中磁盘挂载至所述Android系统。
本发明应用软件安全漏洞检测设备的具体实施例与下述应用软件安全漏 洞检测方法各实施例基本相同,在此不作赘述。
参照图2,本发明磁盘阵列的挂载方法第一实施的流程示意图,所述磁盘 阵列的挂载方法方法包括:
步骤S10,接收用户输入的磁盘阵列RAID10配置信息,生成对应的磁盘 阵列信息,并获得所述Android系统中磁盘的信息;
步骤S20,在所述磁盘信息对应的磁盘数量大于或等于2时,根据所述磁 盘阵列信息创建对应的磁盘阵列接口;
步骤S30,采用系统调用的方式通过所述磁盘阵列接口控制驱动程序根据 所述磁盘阵列信息将磁盘集映射为对应的磁盘阵列设备文件,并根据所述磁 盘阵列设备文件将所述Android系统中磁盘挂载至所述Android系统。
具体地,本发明应用于Android系统中,本实施例中Android系统可以如 图3所示,Android系统可以包括配置模块、阵列创建模块和RAID控制器等, 上述各步骤可以由各模块实现。RAID技术是存储磁盘阵列的核心处理技术, 其目的是提高数据处理的效率和容错能力。存储系统在实现上一般都会采用 必要手段来保证系统的性能,通常的办法是设置缓存系统。缓存系统是一个 虚拟化的系统,其原理是通过高效的处理I/O请求来提高性能。参照图4,图4为本发明实施例中RAID10的存储结构示意图。RAID10技术融合了RAID1 和RAID0,常被称之为RAID0+1。RAID10同时拥有高效的RAID0和高可用 性的RAID1,其特点是CPU的占用率较高,并且磁盘的利用率较低。唯一值 得肯定的是数据的高读写性和良好的数据保护恢复能力。这使得RAID10的 性价比抬高,但存储容量却只有总容量的一半不到。RAID10的结构式这样的: 多个独立的RAID1形成RAID0,因不存在代码设计,故称之为逻辑RAID,当 系统进行数据写请求处理时,数据按顺序存储在各RAID1上。图4中sda和 sdb组成一个RAID1,sdc和sdd、sde和sdf分别组成另外2个RAID1。RAID1 又形成了RAID0。如写在sda上的数据D0、D3、D6、D9,写在sdb中则为 数据D0、D3、D6、D9,sdc和sdd中的数据为D1、D4、D7、D10,同样sde 和sdf中数据为D2、D5、D8、D11。因此数据在各成员盘上进行存储,而数 据片分别存在于RAID1或者RAID0,并具有各RAID的特性。RAID10在存 储容量上虽然不足总容量的一半,但是它的高速的数据处理能力和双重备份 的数据可靠性使得其备受瞩目。上图中如果成员盘中出现两块故障盘,但整 个阵列的盘阵仍然能够工作。但是是有一种情况是两块盘出现故障时,系统 会直接crash掉。这是因为如果故障盘出现在同一个RAID0的两个成员盘中, 如sda和sdb出现,就会导致数据丢失而无法挽回。如果出现在非同一个RAID1 中,如sda和sdc,那么就不会发生数据泄露,或者说是数据丢失。不同RAID1 间出现两块故障盘,RAID状态会显示为严重,一旦同一RAID1中的两块盘 出现故障,那么数据恢复是很困难的。原因有两个,其一,该结构的RAID 并不存在数据的校验,故没有校验数据位,不能在数据缺失时进行数据校验 或者数据反校验;其二,该结构设计是基于RAID1和RAID0的原理,并没有 进行详细的源码设计,从根本上说需要符合RAID1和RAID0的特点,才能操 作,否则不能数据恢复操作。
具体地,配置模块用于接收用户输入的磁盘阵列RAID10的配置信息, 其中磁盘阵列RAID10的配置信息包括阵列等级配置、磁盘配置等,其中用 户在输入磁盘阵列RAID10的配置信息时,可以先进入Android系统中Device Driver,进入子菜单,在子菜单中选择Mutiple devices driver support(RAID and LVM)进入RAID等级选择菜单,在RAID等级选择菜单把RAID-10选上, 从而完成输入的磁盘阵列RAID10的配置信息。
然后根据磁盘阵列的配置信息生成对应的磁盘阵列信息,并导入磁盘配 置文件至Android系统中的阵列创建模块;阵列创建模块则根据配置模块生成 的磁盘阵列信息在Android系统中创建对应RAID10的接口,然后控制器则调 用Android系统上所创建的接口采用系统调用的方式控制底层驱动程序执行 挂载操作,具体地,驱动程序根据RAID10的等级信息,将连接在Android系 统中的磁盘映射为磁盘阵列设备文件,然后根据磁盘阵列设备文件将Android 系统中磁盘挂在载Android系统中。进一步地,根据所述磁盘阵列设备文件将 磁盘阵列挂载至所述Android系统的步骤包括:
根据所述磁盘阵列设备文件通过Android系统中vold机制将所述Android 系统中磁盘挂载至所述Android系统。
vold的全称是volume daemon。实际上是负责完成系统的CDROM、USB 大容量存储、MMC卡等扩展存储的挂载任务自动完成的守护进程。它提供的 主要特点是支持这些存储外设的热插拔。大致分为3步:1、创建链接:在vold 作为一个守护进程,一方面接受驱动的信息,并把信息传给应用层;另一方 面接受上层的命令并完成相应。所以这里的链接一共有两条:(1)vold socket: 负责vold与应用层的信息传递;(2)访问udev的socket:负责vold与底层的 信息传递;这两个链接都是在进程的一开始完成创建的。2.引导:这里主要是 在vold启动时,对现有外设存储设备的处理。首先,要加载并解析vold.conf, 并检查挂载点是否已经被挂载;其次,执行MMC卡挂载;最后,处理USB 大容量存储。3.事件处理:这里通过对两个链接的监听,完成对动态事件的处 理,以及对上层应用操作的响应,经过上述方式将Android系统中磁盘挂载至 所述Android系统。
本发明通过接收用户输入的磁盘阵列RAID10配置信息,生成对应的磁 盘阵列信息,并获得所述Android系统中磁盘的信息;在所述磁盘信息对应的 磁盘数量大于或等于2时,根据所述磁盘阵列信息创建对应的磁盘阵列接口; 采用系统调用的方式通过所述磁盘阵列接口控制驱动程序根据所述磁盘阵列 信息将磁盘集映射为对应的磁盘阵列设备文件,并根据所述磁盘阵列设备文 件将所述Android系统中磁盘挂载至所述Android系统。通过上述方式,本发 明根据用户输入需要挂载的磁盘阵列RAID10的信息,生成对应的磁盘阵列 信息,并并获得所述Android系统中磁盘的信息,在所述磁盘信息对应的磁盘 数量大于或等于2时,根据所述磁盘阵列信息创建对应的阵列接口,然后采 用系统调用的方式使用创建的阵列接口控制驱动程序将磁盘阵列信息将磁盘 映射为磁盘阵列设备文件,存在Android系统中,从而Android系统可以根据 磁盘阵列设备文件挂载磁盘阵列RAID10,挂载磁盘阵列RAID10后,则可以 在Android系统中实现Android系统中应用软件像操作U盘设备那样操作磁盘 阵列RAID10。
进一步的,参照图5,图5为本发明磁盘阵列的挂载方法第二实施的流程 示意图,基于上述图2所示的实施例,在本实施例中该磁盘阵列的挂载方包 括:
步骤S40,接收应用程序发送的读写指令;
步骤S50,根据所述读写指令通过所述驱动程序对所述磁盘阵列设备文件 进行读写操作。
在步骤S30实现挂载之后,Android系统中各磁盘,则会与磁盘阵列形成 对应的映射关系,从而使得应用程序在进行读写操作时,像读写U盘一样对 磁盘阵列文件进行读写,具体地,用户可以通过应用程序进行操作或者应用 程序本身生成读写指令,然后通过驱动程序对磁盘阵列设备文件进行读写操 作,进而实现对磁盘进行读写操作。
进一步地,参照图6,图6为本发明磁盘阵列的挂载方法第三实施的流程 示意图,基于上述图2所示的实施例,所述挂载方法还包括:
步骤S60,检测磁盘阵列RAID10的状态,获得对应的磁盘阵列RAID10 的状态信息;
步骤S70,在检测到预设的状态信息时,上报至所述Android系统。
具体地,为方便使用,本实施例在实际使用过程中,在Android系统中设 置有监控模块用于执行本实施例中步骤,该监控模块可以实时或者定时检测 磁盘阵列RAID10的状态,在检测到磁盘阵列RAID10的状态时,向Android 系统上报磁盘阵列的状态。其中向Android系统上报磁盘阵列的状态的方式可 以采用Android系统中上报信息的方式进行,本实施例中不做多于赘述。
进一步地,参阅图7,图7为本发明磁盘阵列的挂载方法第四实施的流程 示意图,所述挂载方法还包括:
步骤S80,发送Android系统的广播信息,其中所述广播信息包括磁盘阵 列RAID10出错信息、增加磁盘阵列RAID10和磁盘阵列RAID10挂载的广播 信息,以使得所述应用程序在接收到磁盘阵列RAID10出错、增加磁盘阵列 RAID10或磁盘阵列RAID10挂载信息的广播信息时,进行对应的处理;
步骤S90,在检测到磁盘阵列RAID10中磁盘发生异常时,自动进行重建 对应的磁盘阵列接口;
步骤S100,在不满足磁盘阵列RAID10重建条件时,发送附加错误数据 的广播信息,以使得所述应用程序根据所述广播信息进行对应的处理。
在Android系统接收到磁盘阵列的状态信息时,可以对磁盘阵列RAID10 中各磁盘的状态进行判断,确定各磁盘是否出现出错、异常等情况,Android 系统会实时或者定时广播各磁盘阵列RAID10的状态信息,如果应用程序接 收到磁盘阵列RAID10出错或者增加等广播信息时,进行对应的处理,具体 的,如果接收到磁盘阵列RAID10出错的广播信息,则根据当前使用的磁盘 阵列RAID10的等级,进行对应的处理,具体地:如果当前磁盘阵列RAID的 等级为RAID10,且接收到磁盘阵列中一磁盘出错的广播信息,此时因为有其 他磁盘可以继续用,因此可以显示对应的提示信息,从而提醒用户更换磁盘; 如果收到增加磁盘阵列的广播,则重新进行同步,即将新增磁盘同步正常使 用磁盘的内容;如果收到磁盘阵列RAID10挂载的广播,则显示对应的挂载 信息。进一步地,如果接收到磁盘阵列RAID10中全部磁盘出现异常的广播, 则进行磁盘阵列RAID10接口的重建,在进行重建时,如果当前不满足磁盘 阵列RAID10的重建,则发送附加错误的广播信息,以使得应用程序在接收 到该广播信息时进行对应的处理,比如显示对应的提示信息以提示用户。
进一步地,参阅图8,图8为本发明磁盘阵列的挂载方法第四实施的流程 示意图,基于上述图2所示的实施例,所述挂载方法还包括:
步骤S110,接收用户输入的查询指令;
步骤S120,根据所述查询指令查询磁盘阵列RAID10当前的状态信息, 并显示。
为方便用户查看磁盘阵列的数据,及时掌控磁盘的情况,本实施例中还 提供磁盘阵列的查看功能,具体地,用户可以在操作界面进行查询操作, Android设备根据用户操作产生对应的查询指令,然后根据用户触发的查询指 令,查询磁盘阵列RAID10的当前状态信息,并在Android设备中显示,从而 实现查询功能。
进一步地,基于上述图2所示的实施例,所述挂载方法还包括:
步骤S130,在接收用户通过应用程序输入的扩容指令时,基于所述扩容 指令确定的待添加RAID10格式磁盘,通过所述扩容指令在对应的RAID10 接口进行扩容操作;或者,
步骤S140,在接收用户通过应用程序输入的磁盘删除指令时,通过所述 磁盘删除指令确定的RAID10接口,根据所述磁盘删除指令在对应的RAID10 中删除所述磁盘删除指令对应的RAID10格式磁盘,并对删除磁盘后的 RAID10进行重建;或者,
步骤S50,在接收用户通过应用程序输入的热备盘的添加/删除指令时, 通过所述添加/删除指令确定的RAID10接口,根据所述添加/删除指令在对应 的RAID10中添加/删除所述添加/删除指令对应的RAID10格式热备盘。
为了避免有些磁盘使用时间比较长,磁盘老化,或者磁盘存储空间不足 的情况,在实际使用中本实施例中还提供有管理功能,具体地,在接收到基 于所述操作界面触发的扩容指令时,获取该扩容指令对应的RAID10及待添 加RAID10格式磁盘,通过该扩容指令对应的RAID10接口将该待添加 RAID10格式磁盘添加至该RAID10中,以实现RAID10的扩容,优选地,在 得到待添加RAID10格式磁盘,根据该待添加RAID10格式磁盘的数量确定扩 容后的RAID10是否满足该RAID10的等级对应的要求,在满足要求时进行扩 容操作,否则输出错误提示信息。
在接收到基于所述操作界面触发的磁盘删除指令时,确定磁盘删除指令 对应的待删除RAID10格式磁盘,通过所述磁盘删除指令对应的RAID10接口, 在所述磁盘删除指令对应的RAID10中删除该待删除RAID10格式磁盘,在删 除该待删除RAID10格式磁盘后,对删除磁盘后的RAID10进行重建。优选地, 在删除磁盘后的RAID10满足该RAID10的等级对应的要求时,可直接进行重 建,也可选择与待删除RAID10格式磁盘的数量相同的其他RAID10格式磁盘 对该删除磁盘后的RAID10进行重建,以保证该删除磁盘后的RAID10的容量 不变;在删除磁盘后的RAID10不满足该RAID10的等级对应的要求时,选择 与待删除RAID10格式磁盘的数量相同的其他RAID10格式磁盘对该删除磁盘 后的RAID10进行重建。
在接收到基于所述操作界面触发的热备盘的添加/删除指令时,确定添加/ 删除指令对应的热备盘,通过所述添加/删除指令对应的RAID10接口,在所 述添加/删除指令对应的RAID10中删除该热备盘。
根据上述描述,本发明通过在系统中增加对应的功能,包括状态信息上 报、重建磁盘阵列、查询和管理等功能,从而实现了磁盘阵列的挂载和管理。
此外,本发明实施例还提出一种Android设备,所述Android设备包括: 存储器、处理器及存储在所述存储器上并可在所述处理器上运行的磁盘阵列 的挂载程序,所述磁盘阵列的挂载程序被所述处理器执行时实现如上实施例 所述的方法的步骤。
本发明Android设备的具体实施例与上述磁盘阵列的挂载方法各实施例 基本相同,在此不作赘述。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读 存储介质上存储有磁盘阵列的挂载程序,所述磁盘阵列的挂载程序被处理器 执行时实现如上实施例所述的磁盘阵列的挂载方法的步骤。
本发明计算机可读存储介质的具体实施例与上述磁盘阵列的挂载方法各 实施例基本相同,在此不作赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在 涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系 统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括 为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下, 由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物 品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述 实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通 过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的 技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体 现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、 磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机, 服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是 利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间 接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种磁盘阵列的挂载方法,其特征在于,所述磁盘阵列的挂载方法应用于Android系统,所述磁盘阵列的挂载方法包括以下步骤:
接收用户输入的磁盘阵列RAID10配置信息,生成对应的磁盘阵列信息,并获得所述Android系统中磁盘的信息;
在所述磁盘信息对应的磁盘数量为2N、且N大于或等于2时,根据所述磁盘阵列信息创建对应的磁盘阵列接口;
采用系统调用的方式通过所述磁盘阵列接口控制驱动程序根据所述磁盘阵列信息将磁盘集映射为对应的磁盘阵列设备文件,并根据所述磁盘阵列设备文件将所述Android系统中磁盘挂载至所述Android系统。
2.如权利要求1所述的磁盘阵列的挂载方法,其特征在于,所述挂载方法还包括:
接收应用程序发送的读写指令;
根据所述读写指令通过所述驱动程序对所述磁盘阵列设备文件进行读写操作。
3.如权利要求1所述的磁盘阵列的挂载方法,其特征在于,所述挂载方法还包括:
检测磁盘阵列RAID10的状态,获得磁盘阵列RAID10的状态信息;
在检测到预设的状态信息时,上报至所述Android系统。
4.如权利要求3所述的磁盘阵列的挂载方法,其特征在于,所述挂载方法还包括:
发送Android系统的广播信息,其中所述广播信息包括磁盘阵列RAID10出错信息、增加磁盘阵列RAID10和磁盘阵列RAID10挂载的广播信息,以使得所述应用程序在接收到磁盘阵列RAID10出错、增加磁盘阵列RAID10或磁盘阵列RAID10挂载信息的广播信息时,进行对应的处理。
5.如权利要求3所述的磁盘阵列的挂载方法,其特征在于,所述挂载方法还包括:
在检测到磁盘阵列RAID10中磁盘发生异常时,自动进行重建对应的磁盘阵列接口;
在不满足磁盘阵列RAID10重建条件时,发送附加错误数据的广播信息,以使得所述应用程序根据所述广播信息进行对应的处理。
6.如权利要求1所述的磁盘阵列的挂载方法,其特征在于,所述挂载方法还包括:
接收用户输入的查询指令;
根据所述查询指令查询磁盘阵列RAID10当前的状态信息,并显示。
7.如权利要求1所述的磁盘阵列的挂载方法,其特征在于,所述挂载方法还包括:
在接收用户通过应用程序输入的扩容指令时,基于所述扩容指令确定的待添加RAID10格式磁盘,通过所述扩容指令在对应的RAID10接口进行扩容操作;或者,
在接收用户通过应用程序输入的磁盘删除指令时,通过所述磁盘删除指令确定的RAID10接口,根据所述磁盘删除指令在对应的RAID10中删除所述磁盘删除指令对应的RAID10格式磁盘,并对删除磁盘后的RAID10进行重建;或者,
在接收用户通过应用程序输入的热备盘的添加/删除指令时,通过所述添加/删除指令确定的RAID10接口,根据所述添加/删除指令在对应的RAID10中添加/删除所述添加/删除指令对应的RAID10格式热备盘。
8.如权利要求1-7中任一项所述的磁盘阵列的挂载方法,其特征在于,所述根据所述磁盘阵列设备文件将磁盘阵列挂载至所述Android系统的步骤包括:
根据所述磁盘阵列设备文件通过Android系统中vold机制将所述Android系统中磁盘挂载至所述Android系统。
9.一种Android设备,其特征在于,所述Android设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的磁盘阵列的挂载程序,所述磁盘阵列的挂载程序被所述处理器执行时实现如权利要求1至8中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有磁盘阵列的挂载程序,所述磁盘阵列的挂载程序被处理器执行时实现如权利要求1至8中任一项所述的磁盘阵列的挂载方法的步骤。
CN201710934380.XA 2017-09-30 2017-09-30 磁盘阵列的挂载方法、Android设备和存储介质 Pending CN107728946A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201710934380.XA CN107728946A (zh) 2017-09-30 2017-09-30 磁盘阵列的挂载方法、Android设备和存储介质
PCT/CN2018/084312 WO2019062098A1 (zh) 2017-09-30 2018-04-25 磁盘阵列的挂载方法、Android设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710934380.XA CN107728946A (zh) 2017-09-30 2017-09-30 磁盘阵列的挂载方法、Android设备和存储介质

Publications (1)

Publication Number Publication Date
CN107728946A true CN107728946A (zh) 2018-02-23

Family

ID=61210049

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710934380.XA Pending CN107728946A (zh) 2017-09-30 2017-09-30 磁盘阵列的挂载方法、Android设备和存储介质

Country Status (2)

Country Link
CN (1) CN107728946A (zh)
WO (1) WO2019062098A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019062098A1 (zh) * 2017-09-30 2019-04-04 深圳市华德安科技有限公司 磁盘阵列的挂载方法、Android设备和存储介质
WO2019062103A1 (zh) * 2017-09-30 2019-04-04 深圳市华德安科技有限公司 磁盘阵列的挂载方法、Android设备和存储介质
WO2019062109A1 (zh) * 2017-09-30 2019-04-04 深圳市华德安科技有限公司 磁盘阵列的挂载方法、Android设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101984399A (zh) * 2010-10-29 2011-03-09 中兴通讯股份有限公司 一种软独立冗余磁盘阵列的管理方法和系统
CN103530186A (zh) * 2013-05-30 2014-01-22 Tcl集团股份有限公司 实现相机应用支持多位置存储的方法及系统
CN107111535A (zh) * 2014-12-12 2017-08-29 英特尔公司 存储系统中的加速数据恢复

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120317356A1 (en) * 2011-06-09 2012-12-13 Advanced Micro Devices, Inc. Systems and methods for sharing memory between a plurality of processors
CN202512557U (zh) * 2012-03-28 2012-10-31 山东超越数控电子有限公司 一种基于Linux系统的挂载远程磁盘阵列
CN104699564A (zh) * 2013-12-09 2015-06-10 中国移动通信集团公司 一种采用Raid0磁盘组服务器的自动恢复方法及装置
CN107728946A (zh) * 2017-09-30 2018-02-23 深圳市华德安科技有限公司 磁盘阵列的挂载方法、Android设备和存储介质
CN107817949A (zh) * 2017-09-30 2018-03-20 深圳市华德安科技有限公司 磁盘阵列的挂载方法、Android设备和存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101984399A (zh) * 2010-10-29 2011-03-09 中兴通讯股份有限公司 一种软独立冗余磁盘阵列的管理方法和系统
CN103530186A (zh) * 2013-05-30 2014-01-22 Tcl集团股份有限公司 实现相机应用支持多位置存储的方法及系统
CN107111535A (zh) * 2014-12-12 2017-08-29 英特尔公司 存储系统中的加速数据恢复

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019062098A1 (zh) * 2017-09-30 2019-04-04 深圳市华德安科技有限公司 磁盘阵列的挂载方法、Android设备和存储介质
WO2019062103A1 (zh) * 2017-09-30 2019-04-04 深圳市华德安科技有限公司 磁盘阵列的挂载方法、Android设备和存储介质
WO2019062109A1 (zh) * 2017-09-30 2019-04-04 深圳市华德安科技有限公司 磁盘阵列的挂载方法、Android设备和存储介质

Also Published As

Publication number Publication date
WO2019062098A1 (zh) 2019-04-04

Similar Documents

Publication Publication Date Title
CN107678693A (zh) 磁盘阵列的挂载方法、Android设备和存储介质
CN107817949A (zh) 磁盘阵列的挂载方法、Android设备和存储介质
US20160188181A1 (en) User interface system, method, and computer program product
CN107728946A (zh) 磁盘阵列的挂载方法、Android设备和存储介质
US5461716A (en) Method and apparatus for assisting in the presentation and removal of windows
EP3329355B1 (en) Screen operating method and electronic device supporting the same
US9652111B2 (en) Method and system for quickly arranging multiple windows and mobile apparatus thereof
CN103119586A (zh) 用于多形态序列化的方法和装置
CN105874428B (zh) 用于多个操作系统环境中的操作系统转变的技术
CN107479922A (zh) 一种闪存数据管理方法、装置及计算机可读存储介质
CN110008062A (zh) 一种数据管理方法及移动终端
US10761730B2 (en) Method for configuring disk array of electronic device and related electronic device
CN107741830A (zh) 磁盘阵列的挂载方法、Android设备和存储介质
CN107728945A (zh) 磁盘阵列的挂载方法、Android设备和存储介质
CN107608637A (zh) Raid管理方法、装置及计算机可读存储介质
CN107728942A (zh) 磁盘阵列的挂载方法、Android设备和存储介质
US8468007B1 (en) Emulating a peripheral mass storage device with a portable device
KR20180086078A (ko) 전자 장치 및 전자 장치의 화면 표시 방법
US20160313857A1 (en) Display Method and Display Device
US9367195B1 (en) Displaying current location of components in a data storage system
KR20180019907A (ko) 전자 장치 및 그의 운용 제공 방법
CN115658301A (zh) 存储资源调度方法、装置、存储介质以及电子设备
CN107748651A (zh) 磁盘阵列的挂载方法、Android设备和存储介质
US7007158B1 (en) Method for providing a configuration extensible markup language (XML) page to a user for configuring an XML based storage handling controller
CN103761021A (zh) 一种改变状态栏样式的系统及其方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20180223

RJ01 Rejection of invention patent application after publication