一种虚拟存储卡配置方法及系统的制作方法

文档序号:9381067阅读:223来源:国知局
一种虚拟存储卡配置方法及系统的制作方法
【技术领域】
[0001]本发明涉及存储设备技术领域,尤其涉及一种虚拟存储卡配置方法及系统。
【背景技术】
[0002]由于Android操作系统发布之初是专门为手机量身定制的,因此其很多功能及应用场景都是根据手机使用特性来开发的,而手机上的Android系统一般都默认配置有用于安装存储卡的存储卡槽,因此基于Android系统的很多第三方应用在开发时都会按照系统标准接口去获取外置存储路径(存储卡挂载路径),进而实现相应的存储功能。
[0003]如今Android系统也被广泛应用于智能电视中,由于智能电视本身拥有较大存储空间,出于成本、工艺上的考虑一般只会配置USB插槽,而不会配置存储卡槽,这样,当依赖存储卡存储的第三方应用在智能电视上运行时,便很可能出现例如图1所示的异常停止的严重问题,因此,智能电视安装第三方应用便会受到限制,进而也影响了智能电视用户的产品体验。
[0004]因此,现有技术还有待于改进和发展。

【发明内容】

[0005]鉴于上述现有技术的不足,本发明的目的在于提供一种虚拟存储卡配置方法及系统,旨在解决目前基于Android系统的智能电视由于存储路径问题造成第三方应用异常停止的问题。
[0006]本发明的技术方案如下:
一种虚拟存储卡配置方法,其中,所述方法包括以下步骤:
A、系统内核检测到U盘插入事件后,读取预先建立的存储卡挂载状态模块所记录的存储卡当前挂载状态,当存储卡当前挂载状态为未挂载时,执行步骤B ;
B、配置U盘挂载路径为存储卡路径,并按照此路径执行U盘挂载操作;
C、当依赖存储卡存储的应用程序写入数据时,应用程序利用所配置的存储卡路径构建目录将数据写入U盘中。
[0007]所述的虚拟存储卡配置方法,其中,当存储卡当前挂载状态为已挂载时,则获取系统中除存储卡路径以外的其它路径,并将其配置为U盘挂载路径。
[0008]所述的虚拟存储卡配置方法,其中,所述步骤A之前包括:
建立存储卡挂载状态模块,记录系统对存储卡的挂载状态。
[0009]所述的虚拟存储卡配置方法,其中,所述存储卡挂载状态模块对存储卡的挂载状态的记录包括设备节点、挂载位置、挂载状态。
[0010]所述的虚拟存储卡配置方法,其中,所述步骤B还包括:
执行U盘挂载操作后修改存储卡的挂载状态为已挂载。
[0011]所述的虚拟存储卡配置方法,其中,所述步骤A具体为:
Al、系统内核检测到U盘插入事件后,向系统存储管控中心发送事件消息; A2、系统存储管控中心接收事件消息后读取存储卡当前挂载状态,判断所读取的存储卡当前挂载状态是否已挂载,若否,则执行步骤B。
[0012]所述的虚拟存储卡配置方法,其中,所述步骤B具体为:
系统存储管控中心配置U盘挂载路径为存储卡路径,并调用类管理器按照所配置路径执行U盘挂载操作,将U盘与存储卡路径相关联。
[0013]一种虚拟存储卡配置系统,其中,所述系统包括:
状态读取模块,系统内核检测到U盘插入事件后,读取预先建立的存储卡挂载状态模块所记录的存储卡当前挂载状态;
配置模块,用于当所述状态读取模块所读取的存储卡当前挂载状态为未挂载时,配置U盘挂载路径为存储卡路径,并按照此路径执行U盘挂载操作;
数据写入模块,用于当依赖存储卡存储的应用程序写入数据时,应用程序利用所配置的存储卡路径构建目录将数据写入U盘中。
[0014]有益效果:本发明提供一种虚拟存储卡配置方法及系统,通过关联U盘和存储卡路径,实现了依赖存储卡的第三方应用能够利用外部U盘进行数据写入,使得第三方应用能够在缺少存储卡卡槽的智能电视之类的设备上正常运行,避免了应用运行出现异常停止的问题,使得依赖存储卡的第三方应用无需修改即能在智能电视中正常运行,同时,U盘的读写速度远高于存储卡,因而通过本发明方法实现在U盘中进行数据读写的第三方应用的运行效率也会明显提高。另外,由于无需在电视开发板中配置存储卡卡槽,也相应降低了智能电视的开发成本。
【附图说明】
[0015]图1为智能电视中依赖存储卡存储的应用异常停止的状态示意图。
[0016]图2为本发明具体实施例中虚拟存储卡配置方法流程图。
[0017]图3为图1中步骤SlOO的具体方法流程图。
[0018]图4为图1中步骤SlOO和步骤S200的具体实施流程图。
[0019]图5为本发明具体实施例中虚拟存储卡配置系统的原理框图。
【具体实施方式】
[0020]本发明提供一种虚拟存储卡配置方法及系统,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0021]如图2所示的一种虚拟存储卡配置方法,其中,所述方法包括以下步骤:
S100、系统内核检测到U盘插入事件后,读取预先建立的存储卡挂载状态模块所记录的存储卡当前挂载状态,当存储卡当前挂载状态为未挂载时,执行步骤S200。
[0022]存储卡挂载状态的变化是通过存储卡挂载状态模块进行记录,因此,在执行步骤SlOO之前需要首先建立存储卡挂载状态模块,通过该模块记录系统对存储卡的挂载状态。其中,所述存储卡挂载状态模块对存储卡的挂载状态的记录包括设备节点、挂载位置、挂载状态。存储卡挂载状态的记录格式即可按照上述参数设定为(设备节点、挂载位置、挂载状态),记录中的参数初始值可设置为(“unkonw”,”unkonw”,” unmount”),并且存储卡挂载状态模块仅记录一条上述格式的内容,如果检测到存储卡的挂载状态的参数有变化,则用所检测到的值更新原记录的参数值。
[0023]具体的,所述步骤SlOO具体如图3所示,其步骤为:
S110、系统内核检测到U盘插入事件后,向系统存储管控中心发送事件消息。
[0024]U盘插入后,系统的Linux内核(Kernel)会检测到该插入事件,产生一个Uevent消息,该Uevent消息具体是被系统存储管控中心(Void模块)接收到。
[0025]S120、系统存储管控中心接收事件消息后读取存储卡当前挂载状态,判断所读取的存储卡当前挂载状态是否已挂载,若否,则执行步骤S200。
[0026]系统存储管控中心在收到Uevent消息后首先读取存储卡挂载状态模块所记录的存储卡当前挂载状态。根据所读取的状态判断存储卡的挂载情况,如果读取到的状态是“unmount”,即存储卡未挂载,则执行步骤S200。
[0027]S200、配置U盘挂载路径为存储卡路径,并按照此路径执行U盘挂载操作;
系统存储管控中心配置U盘挂载路径为存储卡路径,并调用类管理器(VolumeManager)按照所配置路径执行U盘挂载操作,将U盘与存储卡路径相关联。
[0028]具体地,存储卡为Sdcard时,系统存储管控中心配置U盘挂载路径为“/mnt/sdcard”,并将该U盘挂载路径信息发送到挂载服务进程(Mo
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1