一种手持设备的存储卡及其动态挂载方法

文档序号:7857424阅读:293来源:国知局
专利名称:一种手持设备的存储卡及其动态挂载方法
技术领域
本发明涉及一种移动终端设备,特别是涉及一种基于Android系统手持设备的存储卡及其动态挂载方法。
背景技术
原生android系统是指Google公司发布的最原始最纯净的安卓系统,没有经过任何(手机厂商)的第三方修改,是手机中最完美的系统。因为开源导致一样的安卓系统有的很流畅有的很卡,现在一些手机玩家已经不考虑手机的硬件配置只要它是原生就行。目前最好的是 Android4. O 的 Galaxy Nexus。linux、unix这类操作系统将系统中的一切都作为文件来管理。在windows中我们常见的硬件设备、磁盘分区等,在linux、unix中都被视作文件,对设备、分区的访问就是·读写对应的文件。挂载点实际上就是Iinux中的磁盘文件系统的入口目录,类似于windows中的用来访问不同分区的C:、D:、E:等盘符。选择挂载点是手机应用程序安装必不可少的步骤。魅族的MX所用的操作系统也是android,如果魅族给用户提供一个小容量的内置用户存储分区,会遇到有些大数据量的应用无法安装运行,但魅族给用户提供了一个较大的内置用户存储分区(16GB),基本可以满足用户的需求,他们也不提供插入T卡的接口,但当用户需要大容量的存储空间时,因为没有T卡接口而无法完成大数据量应用安装。苹果的操作系统是iOS,但应该也是有同样的问题,不过苹果iphone机器和魅族的MX—样,他们直接给用户提供了比较大的内置用户存储分区,所以不会碰到有些大数据量的应用无法安装运行问题。而在Android原生系统中,只有安装在挂载点为/mnt/sdcard的存储卡上的应用程序才能正常运行,而内置存储卡默认的挂载路径正是/mnt/sdcard,那么对于拥有双存储卡的Android系统,只有安装在内置存储卡上的应用程序才能正常运行。基于Android系统的手持设备,很多都拥有内置和外插双存储卡,一般而言,内置的存储卡容量较小,而外插的属于扩展存储,容量较大。在安装应用程序的过程中选择安装到存储卡上的应用程序都是安装在第一个存储空间的,而不是安装在用户插入的T卡上面,也就是说用户插入的大容量T卡无法安装应用程序(因为系统默认可以安装应用程序的路径已经被内置的用户存储分区占用了)。而一些较大的应用程序,如凯立德GPS导航程序,又因为数据量较大无法安装在空间较小的内置用户存储分区,这样手机就无法满足用户的需求了。而因为挂载点的原因,应用程序又无法安装在外插的大容量扩展存储卡上。如何能将挂载点从内置存储卡转换至外插存储卡为目前手机设置中应解决的棘手问题。

发明内容
本发明的目的在于克服现有技术的不足,提供一种手持设备的存储卡及其动态挂载方法,该存储卡能够满足一般用户安装应用程序的需求,在大的应用程序时,才由用户选择是否插入T (T-Flash卡)卡,且通过交换外插T卡与内置存储卡中第二存储区域的挂载路径,提高了手机的用户体验,节省了成本。为了达到上述目的,本发明采用的技术方案是,一种手持设备的存储卡,基于Android系统,所述的存储卡包括内置存储卡,内置存储卡分为第一存储区域及第二存储区域;所述的第一存储区域为ROM (英文Read-Only Memory的缩写)存储器,ROM存储器内存储手持设备的系统程序和/或应用程序;所述的第二存储区域为从内置存储卡里面划分出来的区域,第二存储区域用于存储用户数据及安装应用程序。进一步的,所述的第一存储区域及第二存储区域总存储区间小于等于4G。进一步的,所述的内置存储卡为不可拆卸式存储卡。进一步的,手持设备的存储卡进一步包括有T卡。
进一步的,T卡根据用户需要设置存储空间及是否外插。进一步的,所述的第二存储区域及外插T卡进一步用于存储用户资料。一种利用所述的存储卡的动态挂载方法,其步骤如下
步骤I、通过Android系统的Linux虚拟文件系统sysfs检测是否存在外插T卡;
步骤2、是则交换内置存储卡第二存储区域与外插T卡的挂载路径并将外插T卡挂载至可以运行应用程序的路径;
步骤3、在Android系统的挂载流程中根据步骤2所确定的挂载路径完成存储卡的挂载。进一步的,挂载路径由Linux层的守护进程VoId完成,守护进程VoId启动时读取配置文件void, fstab,且配置文件中保存了内置和外插T卡默认的挂载路径;
Linux守护进程Void将上报Android的系统层检测到的存储卡状态信息,Android的系统层获取到存储卡的信息并做处理后,向Linux层下发送挂载命令,由Void完成存储卡的挂载。进一步的,步骤3所述的完成存储卡的挂载包括根据交换内置存储卡第二存储区域与外插T卡后的挂载路径完成挂载。与现有技术相比,本发明的有益效果是将内置存储卡分为第一存储区域和第二存储区域,且该内置存储卡第二存储区域区别于苹果与魅族手机的内置存储卡的第二存储区域,该区域容量小,但能满足用户一般的需求,当用户需要安装需要较大空间的应用程序,比如凯立德导航程序时,则用户有选择的插入T卡,则系统通过检测将应用程序挂载路径设置为外插T卡,手机制造商将内置存储卡第二存储区域设置为小容量用户存储空间,节省了生成成本,为社会节约了资源。


图I为本发明的方法流程图。
具体实施例方式下面结合实施例参照附图进行详细说明,以便对本发明的技术特征及优点进行更深入的诠释。
—种手持设备的存储卡,基于Android系统,所述的存储卡包括内置存储卡,内置存储卡分为第一存储区域及第二存储区域;所述的第一存储区域为ROM存储器,ROM存储器内存储手持设备的系统程序和/或应用程序;所述的第二存储区域为从内置存储卡里面划分出来的区域,第二存储区域用于存储用户数据及安装应用程序。进一步的,所述的第一存储区域及第二存储区域总存储区间小于等于4G。进一步的,所述的内置存储卡为不可拆卸式存储卡。进一步的,手持设备的存储卡进一步包括有T卡。进一步的,T卡根据用户需要设置存储空间及是否外插。进一步的,所述的第二存储区域及外插T卡进一步用于存储用户资料。本发明的方法流程图如图I所示,一种利用所述的存储卡的动态挂载方法,其步 骤如下
步骤I、通过Android系统的Linux虚拟文件系统sysfs检测是否存在外插T卡;
步骤2、是则交换内置存储卡第二存储区域与外插T卡的挂载路径并将外插T卡挂载至可以运行应用程序的路径;
步骤3、在Android系统的挂载流程中根据步骤2所确定的挂载路径完成存储卡的挂载。进一步的,挂载路径由Linux层的守护进程Vold完成,守护进程Vold启动时读取配置文件void, fstab,且配置文件中保存了内置和外插T卡默认的挂载路径;
Linux守护进程Void将上报Android的系统层检测到的存储卡状态信息,Android的系统层获取到存储卡的信息并做处理后,向Linux层下发送挂载命令,由Void完成存储卡的挂载。进一步的,步骤3所述的完成存储卡的挂载包括根据交换内置存储卡第二存储区域与外插T卡后的挂载路径完成挂载。在设备模型中,sysfs文件系统用来表示设备的结构,将设备的层次结构形象的反应到用户空间中。用户空间可以修改sysfs中的文件属性来修改设备的属性值。实施例I
手机用户未外插T卡,则所述的存储卡的动态挂载方法,其步骤如下
步骤S101、通过Android系统的Linux虚拟文件系统sysfs检测是否存在外插T卡;Linux2.6内核引入了 sysfs虚拟文件系统,它可以产生一个包含所有系统硬件的层次视图,是当前系统上实际设备树的一个直观反应,把连接在系统上的设备和总线组织成为一个分级的文件。用户空间可以方便的读取sysfs中的相关文件信息,以确认系统是否存在外插存储卡。步骤S102、未设置外插T卡,则挂载流程按照android的默认方法进行,将内置存储卡的第二存储区域挂载至可以运行应用程序的路径;
在Android系统中负责挂载存储卡的是一个Linux守护进程Void,它启动时会读取配置文件void, fstab,此文件中保存了内置存储卡第二存储区域和外插存储卡默认的挂载路径。如果步骤I中检测到未外插存储卡且分区信息正常,则在Void进程中,将内置存储卡的第二存储区域挂载至默认的可以运行应用程序的路径。Linux守护进程Void将上报检测到的存储卡状态信息,Android的系统层获取到存储卡的信息并做相关处理后,向Linux层下发挂载命令,最后由Vold完成存储卡的挂载。实施例I为用户一般应用需求,不需要安装大的应用软件,仅限于上网或听音乐之类的简单需求,则当内置存储卡为4G的,且进行分区,不需要设置内置存储卡SG或以上构成浪费,且能节约开发商及用户的成本,节约社会资源。实施例2
手机用户外插T卡,则所述的存储卡的动态挂载方法,其步骤如下
步骤S201、通过Android系统的Linux虚拟文件系统sysfs检测是否存在外插T卡;Linux2.6内核引入了 sysfs虚拟文件系统,它可以产生一个包含所有系统硬件的层次视图,是当前系统上实际设备树的一个直观反应,把连接在系统上的设备和总线组织成为一个分级的文件。用户空间可以方便的读取sysfs中的相关文件信息,以确认系统是否存在外插存储卡。 步骤S202、用户手机外插T卡,检测到外插T卡,则交换内置存储卡第二存储区域与外插T卡的挂载路径;
在Android系统中负责挂载存储卡的是一个Linux守护进程Void,它启动时会读取配置文件void, fstab,此文件中保存了内置和外插存储卡默认的挂载路径。如果步骤I中检测到存在外插存储卡且分区信息正常,则在Void进程中交换读取到的挂载路径。步骤S203、在Android系统的挂载流程中将外插存储卡挂载至可以运行应用程序的路径;
Linux守护进程Void将上报检测到的存储卡状态信息,Android的系统层获取到存储卡的信息并做相关处理后,向Linux层下发挂载命令,最后由Vold完成存储卡的挂载。实施例2为当用户需要安装占用存储空间大的应用软件,例如导航或大型游戏,则将该应用程序挂载到T卡路径。此时用户根据需要外插T卡。本发明将内置存储卡分为第一存储区域和第二存储区域,且该内置存储卡区别于苹果与魅族手机的内置存储卡,该内置存储卡第二存储区域容量小,但能满足用户一般的需求,当用户需要安装需要较大空间的应用程序,比如凯立德导航程序时,则用户有选择的插入T卡,则系统通过检测将应用程序挂载路径设置为外插T卡,手机制造商将内置存储卡设置为小容量存储空间,节省了生成成本,为社会节约了资源。以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属领域技术人员来说,在不脱离本发明构思的前提下,做出简单的更改或优化,都应当视为本发明的保护范围。
权利要求
1.一种手持设备的存储卡,基于Android系统,其特征在于 所述的存储卡包括内置存储卡,内置存储卡分为第一存储区域及第二存储区域; 所述的第一存储区域为ROM存储器,ROM存储器内存储手持设备的系统程序和/或应用程序; 所述的第二存储区域为从内置存储卡里面划分出来的区域,第二存储区域用于存储用户数据及安装应用程序。
2.根据权利要求I所述的手持设备的存储卡,其特征在于所述的内置存储卡为不可拆卸式存储卡。
3.根据权利要求I所述的手持设备的存储卡,其特征在于手持设备的存储卡进一步包括有T卡。
4.根据权利要求3所述的手持设备的存储卡,其特征在于T卡根据用户需要设置存储空间及是否外插。
5.根据权利要求4所述的手持设备的存储卡,其特征在于所述的第二存储区域及外插T卡进一步用于存储用户资料。
6.一种利用权利要求1-5中任一项所述的存储卡的动态挂载方法,其步骤如下 步骤I、通过Android系统的Linux虚拟文件系统sysfs检测是否存在外插T卡; 步骤2、是则交换内置存储卡第二存储区域与外插T卡的挂载路径并将外插T卡挂载至可以运行应用程序的路径; 步骤3、在Android系统的挂载流程中根据步骤2所确定的挂载路径完成存储卡的挂载。
7.根据权利要求6所述的存储卡的动态挂载方法,其特征在于挂载路径由Linux层的守护进程Void完成,守护进程Void启动时读取配置文件void, fstab,且配置文件中保存了内置和外插T卡默认的挂载路径; Linux守护进程Vold将上报Android的系统层检测到的存储卡状态信息,Android的系统层获取到存储卡的信息并做处理后,向Linux层下发送挂载命令,由Void完成存储卡的挂载。
8.根据权利要求7所述的存储卡的动态挂载方法,其特征在于步骤3所述的完成存储卡的挂载包括根据交换内置存储卡第二存储区域与外插T卡后的挂载路径完成挂载。
全文摘要
本发明公开了一种手持设备的存储卡,基于Android系统,所述的存储卡包括内置存储卡,内置存储卡分为第一存储区域及第二存储区域;所述的第一存储区域为ROM存储器,ROM存储器内存储手持设备的系统程序和/或应用程序;所述的第二存储区域属于用户存储空间,主要是留给用户存储相关数据,也可以用于安装应用程序。所述的存储卡的动态挂载方法,是为用户在内置存储卡第二存储区域与外插T卡之间动态选择挂载。本发明通过交换内置存储卡第二存储区域与外插T卡挂载路径,提高了手机的使用效率,节省了成本。
文档编号H04M1/725GK102902488SQ20121027666
公开日2013年1月30日 申请日期2012年8月6日 优先权日2012年8月6日
发明者刘述, 刘鋆, 曾鸿燕, 张寅祥, 姚浪 申请人:广东欧珀移动通信有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1