CN110365839A - 关机方法、装置、介质及电子设备 - Google Patents

关机方法、装置、介质及电子设备 Download PDF

Info

Publication number
CN110365839A
CN110365839A CN201910599539.6A CN201910599539A CN110365839A CN 110365839 A CN110365839 A CN 110365839A CN 201910599539 A CN201910599539 A CN 201910599539A CN 110365839 A CN110365839 A CN 110365839A
Authority
CN
China
Prior art keywords
external memory
equipment
electronic equipment
carry
memory equipment
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
Application number
CN201910599539.6A
Other languages
English (en)
Other versions
CN110365839B (zh
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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp 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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN201910599539.6A priority Critical patent/CN110365839B/zh
Publication of CN110365839A publication Critical patent/CN110365839A/zh
Application granted granted Critical
Publication of CN110365839B publication Critical patent/CN110365839B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72463User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions to restrict the functionality of the device

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Sources (AREA)
  • Telephone Function (AREA)

Abstract

本公开实施例提供了一种关机方法、装置、介质及电子设备。该关机方法应用于电子设备,所述电子设备上运行有挂载守护进程;其中,所述方法包括:响应于针对所述电子设备的关机指令,检查所述电子设备中当前是否有外部存储设备处于检查状态;若有外部存储设备处于所述检查状态,则强制终止针对所述外部存储设备的检查操作;卸载所述电子设备的外部存储设备,以使所述电子设备处于关机状态。本公开实施例的技术方案通过在接收到关机指令时,检测电子设备中是否有外部存储设备处于检查状态,若有,则强制终止针对所述外部存储设备的检查操作,并卸载所述外部存储设备,从而可以响应于所述关机指令正常关机。

Description

关机方法、装置、介质及电子设备
技术领域
本公开涉及电子通信技术领域,具体而言,涉及一种关机方法、装置、介质及电子设备。
背景技术
通过将外部存储设备***手机的卡槽中,可以给用户提供额外的存储服务。但是,当将异常的外部存储设备***手机时,可能会导致***卡死而无法正常关机的情形。
因此,需要一种新的关机方法、装置、介质及电子设备。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开实施例提供一种关机方法、装置、介质及电子设备,进而至少在一定程度上克服相关技术中存在的由于异常外部存储设备***电子设备中导致电子设备无法正常关机的技术问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一个方面,提供一种关机方法,所述方法应用于电子设备,所述电子设备上运行有挂载守护进程;其中,所述方法包括:响应于针对所述电子设备的关机指令,检查所述电子设备中当前是否有外部存储设备处于检查状态;若有外部存储设备处于所述检查状态,则强制终止针对所述外部存储设备的检查操作;卸载所述电子设备的外部存储设备,以使所述电子设备处于关机状态。
在本公开的一种示例性实施例中,所述方法还包括:当检测到所述外部存储设备***所述电子设备时,通过所述电子设备的底层驱动将外部存储设备***消息上传至所述挂载守护进程;响应于所述外部存储设备***消息,所述挂载守护进程创建所述外部存储设备。
在本公开的一种示例性实施例中,所述方法还包括:所述挂载守护进程将外部存储设备消息通过进程间调用转发至存储管理服务中;所述存储管理服务根据所述外部存储设备消息创建供应用访问的外部存储设备;所述存储管理服务将所述外部存储服务加入到当前存储设备列表中。
在本公开的一种示例性实施例中,所述外部存储设备消息包括所述外部存储设备的唯一标识、大小和文件***类型。
在本公开的一种示例性实施例中,所述方法还包括:所述存储管理服务通过进程间调用通知所述挂载守护进程开始挂载所述外部存储设备;当所述挂载守护进程检测所述外部存储设备的文件***是否有异常时,设置并存储所述外部存储设备处于所述检查状态。
在本公开的一种示例性实施例中,检查所述电子设备中当前是否有外部存储设备处于检查状态,包括:若初始化进程读取到存储的所述检查状态,则判定当前有外部存储设备处于所述检查状态。
在本公开的一种示例性实施例中,强制终止针对所述外部存储设备的检查操作,包括:主动终止执行所述检查操作的检查子进程;设置检查识别标志,以用于对所述外部存储设备不作挂载。
在本公开的一种示例性实施例中,卸载所述电子设备的外部存储设备,包括:所述初始化进程通过进程间调用,通知所述挂载守护进程卸载所述电子设备的外部存储设备。
在本公开的一种示例性实施例中,所述方法还包括:若所述挂载守护进程检测所述外部存储设备的文件***正常,则挂载所述外部存储设备,并设置所述外部存储设备为挂载状态;若所述挂载守护进程检测所述外部存储设备的文件***异常,则不挂载所述外部存储设备,并设置所述外部存储设备为未挂载状态;所述挂载守护进程通过进程间调用向所述存储管理服务发送挂载结果;所述存储管理服务广播所述挂载结果。
根据本公开的一个方面,提供一种关机装置,所述装置应用于电子设备,所述电子设备上运行有挂载守护进程;其中,所述装置包括:关机指令响应单元,配置为响应于针对所述电子设备的关机指令,检查所述电子设备中当前是否有外部存储设备处于检查状态;检查操作终止单元,配置为若有外部存储设备处于所述检查状态,则强制终止针对所述外部存储设备的检查操作;存储设备卸载单元,配置为卸载所述电子设备的外部存储设备,以使所述电子设备处于关机状态。
根据本公开的一个方面,提供一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现上述任一实施例所述的关机方法。
根据本公开的一个方面,提供一种电子设备,一个或多个处理器;存储装置,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一实施例所述的关机方法。
本公开实施例提供的技术方案可以包括以下有益效果:
在本公开的一些实施例所提供的技术方案中,所述方法应用于电子设备,所述电子设备上运行有挂载守护进程,通过响应于针对所述电子设备的关机指令,检查所述电子设备中当前是否有外部存储设备处于检查状态;若有外部存储设备处于所述检查状态,则强制终止针对所述外部存储设备的检查操作;卸载所述电子设备的外部存储设备,以使所述电子设备处于关机状态。即在关机时强制终止并卸载处于检查状态的外部存储设备,从而可以防止电子设备关机时,挂载守护进程卸载电子设备上的外部存储设备时被卡住,能够实现***的正常关机,可以提高***的稳定性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示意性示出了相关技术中的一种关机方法的示意图;
图2示意性示出了根据本公开的一个实施例的关机方法的流程图;
图3示意性示出了根据本公开的又一个实施例的关机方法的流程图;
图4示意性示出了根据本公开的又一个实施例的关机方法的流程图;
图5示意性示出了根据本公开的又一个实施例的关机方法的流程图;
图6示意性示出了根据本公开的一个实施例的关机装置的框图;
图7示意性示出了根据本公开的一个实施例的电子设备的框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件单元或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
进程间通信(IPC,Inter-Process Communication),指至少两个进程或线程间传送数据或信号的一些技术或方法。进程是计算机***分配资源的最小单位(严格说来是线程)。每个进程都有自己的一部分独立的***资源,彼此是隔离的。为了能使不同的进程互相访问资源并进行协调工作,有了进程间通信。举一个典型的例子,使用进程间通信的两个应用可以被分类为客户端和服务器,客户端进程请求数据,服务端回复客户端的数据请求。有一些应用本身既是服务器又是客户端,这在分布式计算中,时常可以见到。这些进程可以运行在同一计算机上或网络连接的不同计算机上。
进程间通信技术包括消息传递、同步、共享内存和远程过程调用。IPC是一种标准的Unix通信机制。
Socket(套接字)通信是相关技术中采用的一种IPC通信方式,其是指:网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。建立网络通信连接至少要一对端口号(Socket)。Socket本质是编程接口(API,ApplicationProgramming Interface,应用程序编程接口),对TCP/IP(Transmission ControlProtocol/Internet Protocol,传输控制协议/因特网互联协议)的封装,TCP/IP也要提供可供程序员做网络开发所用的接口,这就是socket编程接口。其中,HTTP(HyperTextTransfer Protocol,超文本传输协议)是轿车,提供了封装或者显示数据的具体形式;socket是发动机,提供了网络通信的能力。
但是,Socket作为一款通用接口,其传输效率低,开销大,主要用在跨网络的进程间通信和本机上进程间的低速通信,而且有进程过载和安全漏洞等方面的风险。因此,Android***从9.0后,将存储挂载的通信方式由Socket通信改成了binder通信。
类似Socket通信,binder是Android***中实现的一种高效的IPC机制,负责将进程A的数据发送到进程B。Binder驱动为面向对象的进程间通信提供底层支持。
图1示意性示出了相关技术中的一种关机方法的示意图。
如图1所示,电子设备上运行着挂载守护进程(volume daemon,vold)和存储管理服务(StorageManagerService),vold和StorageManagerService之间通过进程间通信这里为binder通信实现数据交互。
其中,vold是Android平台中外部存储***的管控中心,是管理和控制Android平台外部存储设备的后台进程。其功能主要包括:SD(Secure Digital Memory Card/SDcard,安全数码卡)卡或者MMC(Multi-Media Card,多媒体卡)卡等扩展存储的插拔事件检测、SD卡或者MMC卡挂载、卸载、格式化等,支持这些存储外设热插拔。StorageManagerService是android***框架层与vold单元通信的单元,同时向应用提供存储访问接口及存储挂载消息广播的单元。Android***从8.0开始框架层的MountService已经被StorageMangerService替换了。
如图1所示,正常及异常外部存储设备***电子设备例如手机到挂载成功,会经历如下几个步骤:
(1)当外部存储设备***电子设备时,电子设备的底层驱动将外部存储设备***消息上报到vold,vold创建好该外部存储设备之后,将外部存储设备的标识(indentification,ID)、大小和文件***类型等消息通过binder调用以设备创建信息的形式转发到StorageManagerService中。
(2)StorageManagerService接收到该设备创建信息,创建供上层应用访问的外部存储设备之后,将该外部存储设备加入到当前存储设备列表。
(3)StorageManagerService再通过binder调用通知vold中开始挂载该外部存储设备。
(4)其中,整个挂载又可以分为两步:
A、检查外部存储设备的文件***是否有异常,并在检查到有异常时尝试修复,同时设置外部存储设备处于检查(checking)状态。
B、若检查外部存储设备的文件***无异常,则开始挂载,若挂载成功,则设置外部存储设备为挂载(mounted)状态;若挂载失败,则设置外部存储设备为未挂载(unmountable)状态。
vold挂载动作结束之后,再通过binder调用将挂载结果(挂载成功或者失败)通知StorageManagerService。
(5)StorageManagerService处理vold的挂载结果,将挂载成功或失败的消息广播出去。
(6)关机时,在上层做完关机动画之后,会在初始化(init)进程中通过binder调用通知vold卸载掉手机中的所有外部存储设备。
但是,当异常SD卡或者U盘(USB(Universal Serial Bus,通用串行总线)flashdisk,USB闪存盘)等外部存储设备接入电子设备时,会由于上述步骤(4)中的检查文件***是否异常并尝试修复的过程执行过久,导致binder调用卡住。在vold中执行挂载外部存储设备时,check文件***及mount操作是在一次binder调用中,异常外部存储设备check时容易由于文件***损坏过多,尝试修复时间过长,导致binder调用卡住,从而导致***无法正常关机。这是因为在关机流程中,在init执行关机指令时,会通过binder调用通知vold进程卸载当前电子设备上的所有外部存储设备,binder通信是通过SystemServer(***服务)进程发起的,调用到StorageManagerService,而StorageManagerService又要通过binder调用到vold,等待vold操作完成,而又由于此时外部存储设备正处于checking状态,导致init关机流程中,vold卸载电子设备外部存储设备的操作一直卡住,导致无法关机。而Socket通信是StorageManagerService通过Socket通信将操作指令发出去,不用等vold处理结束,vold处理结束之后,会再次通过Socket将结果告知StorageManagerService。改成binder调用之后就会导致一直等待vold结束,从而异常外部存储设备操作耗时的情况下,卡住SystemServer进程,而在binder通信调用的过程中如果卡住,有可能触发***watchdog(看门狗),导致***卡死或定屏。
图2示意性示出了根据本公开的一个实施例的关机方法的流程图。该方法可以由装置来执行,所述装置可由软件和/或硬件实现,可作为电子设备的一部分被内置在电子设备内部。本公开实施例中,所述方法应用于电子设备,所述电子设备上运行有挂载守护进程(vold)。
智能手机等电子设备设置有程序运行空间,该程序运行空间包括用户空间和操作***空间,其中,用户空间运行有一个或多个应用程序,该一个或多个应用程序为电子设备安装的第三方应用程序,操作***空间运行有电子设备的操作***。该电子设备具体可以运行安卓Android***、移动操作***iOS等,此处不作限定。其中,Android***的存储***主要由:***服务器systemserver进程中的mountservice和vold进程中的volumemanager组成。他们管理着***的存储设备,执行各种操作,如:挂载(mount)、解除挂载(unmount)、格式化(format)等。
如图2所示,本公开实施例提供的关机方法可以包括以下步骤。
在步骤S210中,响应于针对所述电子设备的关机指令,检查所述电子设备中当前是否有外部存储设备处于检查状态。
本公开实施例所涉及到的电子设备可以包括各种具有无线和/或有线通信功能的手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其他处理设备,以及各种形式的用户设备(User Equipment,UE),移动台(Mobile Station,MS),终端设备(terminal device)等等。为方便描述,上面提到的设备统称为电子设备。本发明实施例所涉及到的操作***是对硬件资源进行统一管理,并向用户提供业务接口的软件***。
在步骤S220中,若有外部存储设备处于所述检查状态,则强制终止针对所述外部存储设备的检查操作。
在步骤S230中,卸载所述电子设备的外部存储设备,以使所述电子设备处于关机状态。
本公开实施方式提供的关机方法,所述方法应用于电子设备,所述电子设备上运行有挂载守护进程,通过响应于针对所述电子设备的关机指令,检查所述电子设备中当前是否有外部存储设备处于检查状态;若有外部存储设备处于所述检查状态,则强制终止针对所述外部存储设备的检查操作;卸载所述电子设备的外部存储设备,以使所述电子设备处于关机状态。即在关机时强制终止并卸载处于检查状态的外部存储设备,从而可以防止电子设备关机时,挂载守护进程卸载电子设备上的外部存储设备时被卡住,能够实现***的正常关机,可以提高***的稳定性。
图3示意性示出了根据本公开的又一个实施例的关机方法的流程图。
如图3所示,与上述图2相比,本公开实施例提供的关机方法其不同之处在于,还可以包括以下步骤。
在步骤S310中,当检测到所述外部存储设备***所述电子设备时,通过所述电子设备的底层驱动将外部存储设备***消息上传至所述挂载守护进程。
本公开实施例中,***至所述电子设备的外部存储设备可以包括SD卡、U盘、MMC卡等任意形式的拓展存储设备,其中,所述外部存储设备可以通过卡槽或OTG(On-The-Go)方式***电子设备,给用户提供额外的存储服务。
在步骤S320中,响应于所述外部存储设备***消息,所述挂载守护进程创建所述外部存储设备。
图4示意性示出了根据本公开的又一个实施例的关机方法的流程图。
如图4所示,与上述实施例相比,本公开实施例提供的关机方法其不同之处在于,还可以进一步包括以下步骤。
在步骤S410中,所述挂载守护进程将外部存储设备消息通过进程间调用转发至存储管理服务中。
在示例性实施例中,所述外部存储设备消息可以包括所述外部存储设备的唯一标识、大小和文件***类型等中的至少一个。
在步骤S420中,所述存储管理服务根据所述外部存储设备消息创建供应用访问的外部存储设备。
在步骤S430中,所述存储管理服务将所述外部存储服务加入到当前存储设备列表中。
图5示意性示出了根据本公开的又一个实施例的关机方法的流程图。
如图5所示,与上述实施例相比,本公开实施例提供的关机方法其不同之处在于,还可以进一步包括以下步骤。
在步骤S510中,所述存储管理服务通过进程间调用通知所述挂载守护进程开始挂载所述外部存储设备。
本公开实施例中,挂载(mounting或者mount)是指由操作***使一个存储设备(诸如硬盘、共享资源)上的文件和目录可供用户通过电子设备的文件***访问的一个过程。
一般来说,当电子设备关机时,每个已挂载存储都将经历一次卸载,以确保所有排队的数据被写入,并保证存储介质上文件***结构的完整性。
在步骤S520中,当所述挂载守护进程检测所述外部存储设备的文件***是否有异常时,设置并存储所述外部存储设备处于所述检查状态。
在示例性实施例中,检查所述电子设备中当前是否有外部存储设备处于检查状态,可以包括:若初始化进程读取到存储的所述检查状态,则可以判定当前有外部存储设备处于所述检查状态。
init是一个由内核启动的用户级进程,内核启动之后,通过启动一个用户级程序init的方式,完成引导进程。init始终是第一个进程。
在示例性实施例中,强制终止针对所述外部存储设备的检查操作,可以包括:主动终止执行所述检查操作的检查子进程;设置检查识别标志,以用于对所述外部存储设备不作挂载。但本公开并不限定于此,在其他实施例中,还可以通过人工智能的方式,通过大数据搜集到异常外部存储设备的特征作为正样本,并搜集到正常外部存储设备的特征作为负样本,利用正样本和负样本训练一个机器学习模型或者神经网络模型,在关机时,可以将当前的外部存储设备的特征输入至训练好的机器学习模型或者神经网络模型中,判断其是否是外部外部存储设备,若其是异常外部存储设备,则***对这类异常外部存储设备不作检查(check)。
在示例性实施例中,卸载所述电子设备的外部存储设备,可以包括:所述初始化进程通过进程间调用,通知所述挂载守护进程卸载所述电子设备的外部存储设备。
在示例性实施例中,所述方法还可以包括:若所述挂载守护进程检测所述外部存储设备的文件***正常,则挂载所述外部存储设备,并设置所述外部存储设备为挂载状态;若所述挂载守护进程检测所述外部存储设备的文件***异常,则不挂载所述外部存储设备,并设置所述外部存储设备为未挂载状态;所述挂载守护进程通过进程间调用向所述存储管理服务发送挂载结果;所述存储管理服务广播所述挂载结果。
具体的,若设置所述外部存储设备为挂载状态,则所述挂载结果为挂载成功;若设置所述外部存储设备为未挂载状态,则所述挂载结果为挂载失败。之后,所述存储管理服务广播挂载成功或者失败的消息至***中。
下面举一个实例用于说明上述实施例中的关机方法,可以包括以下步骤:
(1)当外部存储设备***电子设备时,电子设备的底层驱动将外部存储设备***消息上报到vold,vold创建好该外部存储设备之后,将外部存储设备的标识(indentification,ID)、大小和文件***类型等消息通过binder调用以设备创建信息的形式转发到StorageManagerService中。
(2)StorageManagerService接收到该设备创建信息,创建供上层应用访问的外部存储设备之后,将该外部存储设备加入到当前存储设备列表。
(3)StorageManagerService再通过binder调用通知vold中开始挂载外部存储设备。
(4)其中,整个挂载又可以分为以下几步:
A、检查外部存储设备的文件***是否有异常,并在检查到有异常时尝试修复,同时设置外部存储设备处于检查(checking)状态,并将该checking状态存储起来以便关机时init进程可以读取。
B、若检查外部存储设备的文件***无异常,则开始挂载,若挂载成功,则设置外部存储设备为挂载(mounted)状态;若挂载失败,则设置外部存储设备为未挂载(unmountable)状态。
C、在***关机时,init进程处理关机操作时,先检查当前***中是否有外部存储设备正在处于checking状态,如果有,则强制终止该check操作(可以采取如主动杀掉check子进程的方式终止),同时设置check失败标志,直接不作挂载。
D、之后,init进程再正常通知vold卸载手机所有外部存储设备,而由于异常外部存储设备没有挂载,所以不存在checking卡住无法关机的问题。
以下介绍本公开的装置实施例,可以用于执行本公开上述的关机方法。
图6示意性示出了根据本公开的一个实施例的关机装置的框图。所述装置应用于电子设备,所述电子设备上运行有挂载守护进程。如图6所示,本公开实施方式提供的关机装置600可以包括关机指令响应单元610、检查操作终止单元620以及存储设备卸载单元630。
其中,关机指令响应单元610可以配置为响应于针对所述电子设备的关机指令,检查所述电子设备中当前是否有外部存储设备处于检查状态。
检查操作终止单元620可以配置为若有外部存储设备处于所述检查状态,则强制终止针对所述外部存储设备的检查操作。
存储设备卸载单元630可以配置为卸载所述电子设备的外部存储设备,以使所述电子设备处于关机状态。
在示例性实施例中,关机装置600还可以包括:存储设备***通知单元,可以配置为当检测到所述外部存储设备***所述电子设备时,通过所述电子设备的底层驱动将外部存储设备***消息上传至所述挂载守护进程;第一存储设备创建单元,可以配置为响应于所述外部存储设备***消息,所述挂载守护进程创建所述外部存储设备。
在示例性实施例中,关机装置600还可以包括:存储设备消息发送单元,可以配置为所述挂载守护进程将外部存储设备消息通过进程间调用转发至存储管理服务中;第二存储设备创建单元,可以配置为所述存储管理服务根据所述外部存储设备消息创建供应用访问的外部存储设备;存储设备加入列表单元,可以配置为所述存储管理服务将所述外部存储服务加入到当前存储设备列表中。
在示例性实施例中,所述外部存储设备消息可以包括所述外部存储设备的唯一标识、大小和文件***类型等。
在示例性实施例中,关机装置600还可以包括:挂载通知单元,可以配置为所述存储管理服务通过进程间调用通知所述挂载守护进程开始挂载所述外部存储设备;文件***检查单元,可以配置为当所述挂载守护进程检测所述外部存储设备的文件***是否有异常时,设置并存储所述外部存储设备处于所述检查状态。
在示例性实施例中,关机指令响应单元610可以包括:检查状态判定单元,可以配置为若初始化进程读取到存储的所述检查状态,则判定当前有外部存储设备处于所述检查状态。
在示例性实施例中,检查操作终止单元620可以配置为:主动终止执行所述检查操作的检查子进程;设置检查识别标志,以用于对所述外部存储设备不作挂载。
在示例性实施例中,存储设备卸载单元630可以配置为:所述初始化进程通过进程间调用,通知所述挂载守护进程卸载所述电子设备的外部存储设备。
在示例性实施例中,关机装置600还可以包括:存储设备挂载单元,可以配置为若所述挂载守护进程检测所述外部存储设备的文件***正常,则挂载所述外部存储设备,并设置所述外部存储设备为挂载状态;存储设备不挂载单元,可以配置为若所述挂载守护进程检测所述外部存储设备的文件***异常,则不挂载所述外部存储设备,并设置所述外部存储设备为未挂载状态;挂载结果发送单元,可以配置为所述挂载守护进程通过进程间调用向所述存储管理服务发送挂载结果;挂载结果广播单元,可以配置为所述存储管理服务广播所述挂载结果。
由于本公开的示例实施例的关机装置的各个功能单元与上述关机方法的示例实施例的步骤对应,因此对于本公开装置实施例中未披露的细节,请参照本公开上述的关机方法的实施例。
本公开实施方式提供的一种关机装置,所述装置应用于电子设备,所述电子设备上运行有挂载守护进程,通过响应于针对所述电子设备的关机指令,检查所述电子设备中当前是否有外部存储设备处于检查状态;若有外部存储设备处于所述检查状态,则强制终止针对所述外部存储设备的检查操作;卸载所述电子设备的外部存储设备,以使所述电子设备处于关机状态。即在关机时强制终止并卸载处于检查状态的外部存储设备,从而可以防止电子设备关机时,挂载守护进程卸载电子设备上的外部存储设备时被卡住,能够实现***的正常关机,可以提高***的稳定性。
下面参考图7,其示出了适于用来实现本公开实施例的电子设备的计算机***700的结构示意图。图7示出的电子设备的计算机***700仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图7所示,计算机***700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分707加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有***操作所需的各种程序和数据。CPU701、ROM 702以及RAM703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分707。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(CPU)701执行时,执行本申请的***中限定的上述功能。
需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本公开各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个单元、程序段、或代码的一部分,上述单元、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现如上述实施例中所述的关机方法。
例如,所述方法应用于电子设备,所述电子设备上运行有挂载守护进程。所述的电子设备可以实现如图1中所示的:步骤S110,响应于针对所述电子设备的关机指令,检查所述电子设备中当前是否有外部存储设备处于检查状态;步骤S120,若有外部存储设备处于所述检查状态,则强制终止针对所述外部存储设备的检查操作;步骤S130,卸载所述电子设备的外部存储设备,以使所述电子设备处于关机状态。
又如,所述的电子设备可以实现如图1、图3、图4所示的各个步骤。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (12)

1.一种关机方法,其特征在于,所述方法应用于电子设备,所述电子设备上运行有挂载守护进程;其中,所述方法包括:
响应于针对所述电子设备的关机指令,检查所述电子设备中当前是否有外部存储设备处于检查状态;
若有外部存储设备处于所述检查状态,则强制终止针对所述外部存储设备的检查操作;
卸载所述电子设备的外部存储设备,以使所述电子设备处于关机状态。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
当检测到所述外部存储设备***所述电子设备时,通过所述电子设备的底层驱动将外部存储设备***消息上传至所述挂载守护进程;
响应于所述外部存储设备***消息,所述挂载守护进程创建所述外部存储设备。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
所述挂载守护进程将外部存储设备消息通过进程间调用转发至存储管理服务中;
所述存储管理服务根据所述外部存储设备消息创建供应用访问的外部存储设备;
所述存储管理服务将所述外部存储服务加入到当前存储设备列表中。
4.如权利要求3所述的方法,其特征在于,所述外部存储设备消息包括所述外部存储设备的唯一标识、大小和文件***类型。
5.如权利要求3所述的方法,其特征在于,所述方法还包括:
所述存储管理服务通过进程间调用通知所述挂载守护进程开始挂载所述外部存储设备;
当所述挂载守护进程检测所述外部存储设备的文件***是否有异常时,设置并存储所述外部存储设备处于所述检查状态。
6.如权利要求5所述的方法,其特征在于,检查所述电子设备中当前是否有外部存储设备处于检查状态,包括:
若初始化进程读取到存储的所述检查状态,则判定当前有外部存储设备处于所述检查状态。
7.如权利要求1至6任一项所述的方法,其特征在于,强制终止针对所述外部存储设备的检查操作,包括:
主动终止执行所述检查操作的检查子进程;
设置检查识别标志,以用于对所述外部存储设备不作挂载。
8.如权利要求6所述的方法,其特征在于,卸载所述电子设备的外部存储设备,包括:
所述初始化进程通过进程间调用,通知所述挂载守护进程卸载所述电子设备的外部存储设备。
9.如权利要求5所述的方法,其特征在于,所述方法还包括:
若所述挂载守护进程检测所述外部存储设备的文件***正常,则挂载所述外部存储设备,并设置所述外部存储设备为挂载状态;
若所述挂载守护进程检测所述外部存储设备的文件***异常,则不挂载所述外部存储设备,并设置所述外部存储设备为未挂载状态;
所述挂载守护进程通过进程间调用向所述存储管理服务发送挂载结果;
所述存储管理服务广播所述挂载结果。
10.一种关机装置,其特征在于,所述装置应用于电子设备,所述电子设备上运行有挂载守护进程;其中,所述装置包括:
关机指令响应单元,配置为响应于针对所述电子设备的关机指令,检查所述电子设备中当前是否有外部存储设备处于检查状态;
检查操作终止单元,配置为若有外部存储设备处于所述检查状态,则强制终止针对所述外部存储设备的检查操作;
存储设备卸载单元,配置为卸载所述电子设备的外部存储设备,以使所述电子设备处于关机状态。
11.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-9中任一所述的方法。
12.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-9中任一所述的方法。
CN201910599539.6A 2019-07-04 2019-07-04 关机方法、装置、介质及电子设备 Active CN110365839B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910599539.6A CN110365839B (zh) 2019-07-04 2019-07-04 关机方法、装置、介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910599539.6A CN110365839B (zh) 2019-07-04 2019-07-04 关机方法、装置、介质及电子设备

Publications (2)

Publication Number Publication Date
CN110365839A true CN110365839A (zh) 2019-10-22
CN110365839B CN110365839B (zh) 2020-08-28

Family

ID=68218044

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910599539.6A Active CN110365839B (zh) 2019-07-04 2019-07-04 关机方法、装置、介质及电子设备

Country Status (1)

Country Link
CN (1) CN110365839B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114281636A (zh) * 2021-11-12 2022-04-05 苏州浪潮智能科技有限公司 一种处理用户空间文件***故障的方法和装置

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070067566A1 (en) * 2005-09-18 2007-03-22 Dotop Technology Inc. External storage device for controlling computer and method thereof
US20070168724A1 (en) * 2004-01-27 2007-07-19 Akihito Kohiga High-speed restart method, information processing device, and program
CN101414284A (zh) * 2007-10-19 2009-04-22 华硕电脑股份有限公司 数据保护方法及其存取权限管理方法
CN101650695A (zh) * 2009-08-27 2010-02-17 深圳市同洲电子股份有限公司 挂载存储设备的方法及挂载存储设备的数字电视接收终端
CN103218279A (zh) * 2013-03-08 2013-07-24 福建星网视易信息***有限公司 一种嵌入式***硬盘的管理方法
CN104077250A (zh) * 2014-06-27 2014-10-01 Tcl集团股份有限公司 一种智能终端与存储设备的连接处理方法及装置
CN105049937A (zh) * 2015-08-17 2015-11-11 青岛海信电器股份有限公司 安卓***智能电视外接存储设备的卸载方法和装置
CN105874465A (zh) * 2013-12-31 2016-08-17 曹圣坤 具有安全存储装置的存储***及其管理方法
CN106528158A (zh) * 2016-11-18 2017-03-22 广东欧珀移动通信有限公司 挂载存储卡的方法、装置及移动终端
CN107577549A (zh) * 2017-08-24 2018-01-12 郑州云海信息技术有限公司 一种存储重删功能的测试方法
CN108255630A (zh) * 2017-11-29 2018-07-06 深圳忆联信息***有限公司 一种降低固态硬盘异常掉电处理时间的方法
CN108549550A (zh) * 2018-04-13 2018-09-18 郑州云海信息技术有限公司 一种硬盘挂载方法及装置
CN108833981A (zh) * 2015-08-13 2018-11-16 海信集团有限公司 一种开关机的方法

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070168724A1 (en) * 2004-01-27 2007-07-19 Akihito Kohiga High-speed restart method, information processing device, and program
US20070067566A1 (en) * 2005-09-18 2007-03-22 Dotop Technology Inc. External storage device for controlling computer and method thereof
CN101414284A (zh) * 2007-10-19 2009-04-22 华硕电脑股份有限公司 数据保护方法及其存取权限管理方法
CN101650695A (zh) * 2009-08-27 2010-02-17 深圳市同洲电子股份有限公司 挂载存储设备的方法及挂载存储设备的数字电视接收终端
CN103218279A (zh) * 2013-03-08 2013-07-24 福建星网视易信息***有限公司 一种嵌入式***硬盘的管理方法
CN105874465A (zh) * 2013-12-31 2016-08-17 曹圣坤 具有安全存储装置的存储***及其管理方法
CN104077250A (zh) * 2014-06-27 2014-10-01 Tcl集团股份有限公司 一种智能终端与存储设备的连接处理方法及装置
CN108833981A (zh) * 2015-08-13 2018-11-16 海信集团有限公司 一种开关机的方法
CN105049937A (zh) * 2015-08-17 2015-11-11 青岛海信电器股份有限公司 安卓***智能电视外接存储设备的卸载方法和装置
CN106528158A (zh) * 2016-11-18 2017-03-22 广东欧珀移动通信有限公司 挂载存储卡的方法、装置及移动终端
CN107577549A (zh) * 2017-08-24 2018-01-12 郑州云海信息技术有限公司 一种存储重删功能的测试方法
CN108255630A (zh) * 2017-11-29 2018-07-06 深圳忆联信息***有限公司 一种降低固态硬盘异常掉电处理时间的方法
CN108549550A (zh) * 2018-04-13 2018-09-18 郑州云海信息技术有限公司 一种硬盘挂载方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114281636A (zh) * 2021-11-12 2022-04-05 苏州浪潮智能科技有限公司 一种处理用户空间文件***故障的方法和装置
CN114281636B (zh) * 2021-11-12 2023-08-25 苏州浪潮智能科技有限公司 一种处理用户空间文件***故障的方法和装置

Also Published As

Publication number Publication date
CN110365839B (zh) 2020-08-28

Similar Documents

Publication Publication Date Title
CN108376079B (zh) 自动应用更新
CN111800462B (zh) 微服务实例处理方法、装置、计算机设备及存储介质
CN111698283B (zh) 分布式集群主机的管控方法、装置、设备及存储介质
US20110153791A1 (en) Systems and methods for managing configuration data at disconnected remote devices
CN107769949A (zh) 一种应用组件部署方法及部署节点
CN108462760A (zh) 电子装置、集群访问域名自动生成方法及存储介质
US10048986B2 (en) Method and device for allocating browser processes according to a selected browser process mode
CN109660426A (zh) 监控方法及***、计算机可读介质和电子设备
CN102043645A (zh) 一种加载插件的方法及装置
CN104335201A (zh) 用于促进计算***的动态和受信任的基于云的扩展升级的机构
CN107835181A (zh) 服务器集群的权限管理方法、装置、介质和电子设备
CN106027631A (zh) 一种数据传输方法及装置
CN110244963A (zh) 数据更新方法、装置及终端设备
CN102685303A (zh) 通信方法和装置
CN107957905A (zh) 限制应用自启动的方法、装置、存储介质及智能终端
CN108563472B (zh) 基于多开应用的服务插件加载方法及装置
WO2021098393A1 (zh) 智能化***资源监控方法、装置、电子设备及存储介质
CN113014452A (zh) 网络流量测试方法、装置、测试端以及存储介质
CN114968776A (zh) 一种应用程序的检测方法和装置
CN110365839A (zh) 关机方法、装置、介质及电子设备
CN108875355A (zh) 一种访问权限的控制方法和装置
CN106201490A (zh) 一种优化应用程序运行的方法及装置
CN109600295A (zh) 通知栏消息推送方法、装置、介质及电子设备
CN113010238A (zh) 一种微应用调用接口的权限确定方法、装置和***
CN109683942A (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
GR01 Patent grant
GR01 Patent grant