一种软件自动升级控制方法、装置及设备.pdf

上传人:1*** 文档编号:1031811 上传时间:2018-03-27 格式:PDF 页数:8 大小:339.52KB
返回 下载 相关 举报
摘要
申请专利号:

CN200910189474.4

申请日:

2009.12.25

公开号:

CN102110000A

公开日:

2011.06.29

当前法律状态:

撤回

有效性:

无权

法律详情:

发明专利申请公布后的视为撤回IPC(主分类):G06F 9/445申请公布日:20110629|||实质审查的生效IPC(主分类):G06F 9/445申请日:20091225|||公开

IPC分类号:

G06F9/445; H04N21/43(2011.01)I

主分类号:

G06F9/445

申请人:

康佳集团股份有限公司

发明人:

王丛华

地址:

518053 广东省深圳市南山区华侨城

优先权:

专利代理机构:

深圳中一专利商标事务所 44237

代理人:

贾振勇

PDF下载: PDF下载
内容摘要

本发明适用于软件领域,提供了一种软件自动升级控制方法、装置及设备,所述方法包括下述步骤:将存储空间配置为两个互为备份的代码区;软件升级时,对处于空闲状态的代码区的代码进行升级,并将启动标识指向最新升级的代码区代码。本发明将存储空间划分为互为备份的两个代码区,在软件升级时升级处于空闲状态的代码区中的代码,不影响设备的正常运行,从而不影响用户对设备的正常使用,有效提高了升级模块的健壮性和容错性,避免了在升级过程中出现的异常对系统的破坏,而且由于升级可以在后台进行,不占用用户使用时间。

权利要求书

1: 一种软件自动升级控制方法, 其特征在于, 所述方法包括下述步骤 : 将存储空间配置为两个互为备份的代码区 ; 软件升级时, 对处于空闲状态的代码区的代码进行升级, 并将启动标识指向最新升级 的代码区代码。
2: 如权利要求 1 所述的方法, 其特征在于, 所述对处于空闲状态的代码区的代码进行 升级, 并将启动标识指向最新升级的代码区代码的步骤具体为 : 读取 CPU 资源利用率 ; 检测本地软件版本, 判断是否需要升级 ; 在判断需要升级时, 连接网络, 下载升级包 ; 读取升级标志, 根据升级标志选择处于空闲状态的代码区, 执行升级 ; 判断升级是否完成 ; 在升级完成后更新启动标识, 将启动标识指向新升级完成的代码区代码。
3: 如权利要求 1 所述的方法, 其特征在于, 所述存储空间包括 : 引导加载区, 用于存储引导加载程序 ; 互为备份的第一代码区和第二代码区, 用于存储系统运行程序 ; 以及 分区配置区, 用于存储分区配置信息。
4: 一种软件自动升级控制装置, 其特征在于, 所述装置包括 : 存储空间配置单元, 用于将存储空间配置为两个互为备份的代码区 ; 以及 升级控制单元, 用于在软件升级时, 对处于空闲状态的代码区的代码进行升级, 并将启 动标识指向最新升级的代码区代码。
5: 如权利要求 4 所述的装置, 其特征在于, 所述升级控制单元包括 : CPU 利用率读取模块, 用于读取 CPU 资源利用率 ; 升级判断模块, 用于在 CPU 空闲时, 检测本地软件版本, 判断是否需要升级 ; 升级包下载模块, 用于在所述升级判断模块判断需要升级时, 连接网络, 下载升级包 ; 升级代码区选择模块, 用于读取升级标志, 根据升级标志选择处于空闲状态的代码区, 执行升级 ; 以及 启动标识更新模块, 用于判断升级是否完成, 在升级完成后更新启动标识, 将启动标识 指向新升级完成的代码区代码。
6: 如权利要求 4 所述的装置, 其特征在于, 所述存储空间包括 : 引导加载区, 用于存储引导加载程序 ; 互为备份的第一代码区和第二代码区, 用于存储系统运行程序 ; 以及 分区配置区, 用于存储分区配置信息。
7: 一种包含权利要求 4 的软件自动升级控制装置的设备。
8: 一种包含权利要求 4 的软件自动升级控制装置的网络电视。
9: 一种包含权利要求 4 的软件自动升级控制装置的 IPTV 机顶盒。

说明书


一种软件自动升级控制方法、 装置及设备

    【技术领域】
     本发明属于软件领域, 尤其涉及一种软件自动升级控制方法、 装置及设备。背景技术 为了解决产品使用过程中出现的问题和不断完善产品功能, 网络电视和 IPTV 机 顶盒等产品目前都有带有软件升级模块, 不断更新其产品软件功能以更好的满足用户使用 需求。
     常用的软件升级策略有开机自动升级和进入升级页面手动升级两种, 在开机自动 升级时, 用户开机后系统自动检查当前软件版本和网络上的最新版本, 如果发现有更新版 本则立即进入升级系统完成升级任务。在进入升级页面手动升级时, 用户点击菜单中的升 级按钮, 完成升级任务。
     采用这两种升级手段升级时, 在执行升级的过程中用户只能被动等待, 停止使用 系统提供的娱乐功能, 占用较多用户对网络电视和 IPTV 机顶盒等的使用时间, 一旦升级过 程中发生故障就必须重新启动进入备份系统继续升级直到升级成功为止。
     发明内容 本发明实施例的目的在于提供一种软件自动升级控制方法, 旨在解决现有软件升 级时需要停止设备的运行, 影响用户正常使用设备的问题。
     本发明实施例是这样实现的, 一种软件自动升级控制方法, 所述方法包括下述步 骤:
     将存储空间配置为两个互为备份的代码区 ;
     软件升级时, 对处于空闲状态的代码区的代码进行升级, 并将启动标识指向最新 升级的代码区代码。
     本发明实施例的另一目的在于提供一种软件自动升级控制装置, 所述装置包括 :
     存储空间配置单元, 用于将存储空间配置为两个互为备份的代码区 ; 以及
     升级控制单元, 用于在软件升级时, 对处于空闲状态的代码区的代码进行升级, 并 将启动标识指向最新升级的代码区代码。
     本发明实施例的另一目的在于一种包含上述软件自动升级控制装置的设备。
     本发明实施例的另一目的在于一种包含上述软件自动升级控制装置的网络电视。
     本发明实施例的另一目的在于一种包含上述软件自动升级控制装置的 IPTV 机顶 盒。
     本发明实施例将存储空间划分为互为备份的两个代码区, 在软件升级时升级处于 空闲状态的代码区中的代码, 不影响设备的正常运行, 从而不影响用户对设备的正常使用, 有效提高了升级模块的健壮性和容错性, 避免了在升级过程中出现的异常对系统的破坏, 而且由于升级可以在后台进行, 不占用用户使用时间。
     附图说明
     图 1 是本发明实施例提供的存储空间划分示意图 ; 图 2 是本发明实施例提供的软件自动升级控制方法的实现流程图 ; 图 3 是本发明实施例提供的系统启动方法的实现流程图 ; 图 4 是本发明实施例提供的软件自动升级控制装置的结构图 ; 图 5 是本发明实施例提供的升级控制单元的结构图。具体实施方式
     为了使本发明的目的、 技术方案及优点更加清楚明白, 以下结合附图及实施例, 对 本发明进行进一步详细说明。 应当理解, 此处所描述的具体实施例仅仅用以解释本发明, 并 不用于限定本发明。
     本发明实施例中, 将存储空间划分为互为备份的第一代码区和第二代码区, 在软 件升级时, 选择对处于空闲状态的代码区的代码进行升级, 升级完成后将系统标志更新为 最新升级的代码区, 使得系统重启时使用最新升级的代码区中的代码启动。
     如 图 1 所 示, 在 本 发 明 实 施 例 中, 将设备的存储区域划分为引导加载区 (Bootloader)、 第一代码区、 第二代码区和分区配置区, 其中 : 引导加载区为不可代码区域, 存储引导加载程序, 引导加载程序是系统加电后运 行的第一段软件代码, 在操作系统内核运行之前运行, BootLoader 的主要运行任务就是将 内核映象从硬盘上读到 RAM 中, 然后跳转到内核的入口点去运行。通过这段程序, 可以初始 化硬件设备、 建立内存空间的映射图, 从而将系统的软硬件环境带到一个合适的状态, 以便 为最终调用操作系统内核准备好正确的环境。
     第一代码区和第二代码区互为备份, 存储系统运行程序, 包括三个部分 :
     操作系统内核, 例如 Linux 内核 ;
     文件系统, 例如 SF 编码库 ; 以及
     用户应用程序, 例如网络电视 (NTV) 应用。
     分区配置区存储分区配置信息。
     软件升级过程可以根据系统的资源使用情况在 CPU 空闲时进行, 升级开始时系 统下载升级包, 然后判断当前是运行在第一代码区还是第二代码区, 如果当前系统使用 的第一代码区代码时, 可升级第二代码区中的代码, 反之亦然。当升级成功完成时修改 Bootloader 配置域中的启动标识, 改为使用刚刚升级过的代码。 重新启动, 系统即可完成正 常的升级流程。
     当升级过程中出现断电或其他异常时, 对于第二代码区的升级可能会失败, 但重 启后不影响用户的正常使用, 用户仍然可以使用第一代码区的代码, 直到用户再次升级第 二代码区的代码, 直到成功。重启后, Bootloader 自动跳转到第二代码区, 使用第二代码区 的代码启动。
     图 2 示出了本发明实施例提供的软件升级控制方法的实现流程, 详述如下 :
     在步骤 S201 中, 读取 CPU 资源利用率 ;
     在步骤 S202 中, 检测本地软件版本, 判断是否需要升级, 是则执行步骤 S203, 否则 返回执行步骤 S201 ;
     在步骤 S203 中, 连接网络, 下载升级包 ; 在步骤 S204 中, 读取升级标志, 该升级标志标识了升级哪个代码区内的代码 ; 在本发明实施例中, 对处于空闲状态的代码区的代码进行升级。 在步骤 S205 中, 根据升级标志选择对应的代码区, 执行升级过程 ; 在 步 骤 S206 中, 判 断 升 级 是 否 完 成, 是 则 执 行 步 骤 S207, 否则返回执行步骤S201 ; 在步骤 S207 中, 更新启动标识, 将启动标识指向最新升级的代码区内的代码。
     如图 3 所示, 当系统重启后, 首先进入 Bootloader, 在 Bootloader 配置域中包含启 动标识, 该标识决定系统当前应该使用第一代码区还是第二代码区, 如果使用第一代码区, Bootloader 将载入第一代码区的内核 (kernel) 地址进而引导应用程序完成启动过程。
     在步骤 S301 中, Bootloader 启动 ;
     在步骤 S302 中, 读取启动标识 ;
     在步骤 S303 中, 根据启动标识, 载入最新升级的代码区代码启动。
     图 4 示出了本发明实施例提供的软件自动升级控制装置的结构, 为了便于说明, 仅示出了与本发明实施例相关的部分。
     该软件自动升级控制装置可以是内置于网络电视、 IPTV 机顶盒等设备中。
     存储空间配置单元 41 将存储空间配置为两个互为备份的代码区, 包括第一代码 区和第二代码区。
     作为本发明的一个实施例, 存储空间配置单元 41 将存储空间配置为四个区 :
     引导加载区, 用于存储引导加载程序 ;
     互为备份的第一代码区和第二代码区, 用于存储系统运行程序 ; 以及
     分区配置区, 用于存储分区配置信息。
     升级控制单元 42 在软件升级时, 对处于空闲状态的代码区的代码进行升级, 并将 启动标识指向最新升级的代码区代码。
     图 5 示出了本发明实施例提供的升级控制单元的结构, 为了便于说明, 仅示出了 与本发明实施例相关的部分。
     CPU 利用率读取模块 421 读取 CPU 资源利用率。
     升级判断模块 422 在 CPU 空闲时, 检测本地软件版本, 判断是否需要升级。
     升级包下载模块 423 在升级判断模块 422 判断需要升级时, 连接网络, 下载升级 包。
     升级代码区选择模块 424 读取升级标志, 根据升级标志选择处于空闲状态的代码 区, 运行升级包, 执行升级。
     启动标识更新模块 425 判断升级是否完成, 在升级完成后更新启动标识, 将启动 标识指向新升级完成的代码区代码。
     本发明实施例将存储空间划分为互为备份的两个代码区, 在软件升级时升级处于 空闲状态的代码区中的代码, 不影响设备的正常运行, 从而不影响用户对设备的正常使用, 有效提高了升级模块的健壮性和容错性, 避免了在升级过程中出现的异常对系统的破坏, 而且由于升级可以在后台进行, 不占用用户使用时间。
     以上所述仅为本发明的较佳实施例而已, 并不用以限制本发明, 凡在本发明的精
     神和原则之内所作的任何修改、 等同替换和改进等, 均应包含在本发明的保护范围之内。

一种软件自动升级控制方法、装置及设备.pdf_第1页
第1页 / 共8页
一种软件自动升级控制方法、装置及设备.pdf_第2页
第2页 / 共8页
一种软件自动升级控制方法、装置及设备.pdf_第3页
第3页 / 共8页
点击查看更多>>
资源描述

《一种软件自动升级控制方法、装置及设备.pdf》由会员分享,可在线阅读,更多相关《一种软件自动升级控制方法、装置及设备.pdf(8页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN102110000A43申请公布日20110629CN102110000ACN102110000A21申请号200910189474422申请日20091225G06F9/445200601H04N21/4320110171申请人康佳集团股份有限公司地址518053广东省深圳市南山区华侨城72发明人王丛华74专利代理机构深圳中一专利商标事务所44237代理人贾振勇54发明名称一种软件自动升级控制方法、装置及设备57摘要本发明适用于软件领域,提供了一种软件自动升级控制方法、装置及设备,所述方法包括下述步骤将存储空间配置为两个互为备份的代码区;软件升级时,对处于空闲状态的代码区的。

2、代码进行升级,并将启动标识指向最新升级的代码区代码。本发明将存储空间划分为互为备份的两个代码区,在软件升级时升级处于空闲状态的代码区中的代码,不影响设备的正常运行,从而不影响用户对设备的正常使用,有效提高了升级模块的健壮性和容错性,避免了在升级过程中出现的异常对系统的破坏,而且由于升级可以在后台进行,不占用用户使用时间。51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书1页说明书4页附图2页CN102110003A1/1页21一种软件自动升级控制方法,其特征在于,所述方法包括下述步骤将存储空间配置为两个互为备份的代码区;软件升级时,对处于空闲状态的代码区的代码进行升级,并。

3、将启动标识指向最新升级的代码区代码。2如权利要求1所述的方法,其特征在于,所述对处于空闲状态的代码区的代码进行升级,并将启动标识指向最新升级的代码区代码的步骤具体为读取CPU资源利用率;检测本地软件版本,判断是否需要升级;在判断需要升级时,连接网络,下载升级包;读取升级标志,根据升级标志选择处于空闲状态的代码区,执行升级;判断升级是否完成;在升级完成后更新启动标识,将启动标识指向新升级完成的代码区代码。3如权利要求1所述的方法,其特征在于,所述存储空间包括引导加载区,用于存储引导加载程序;互为备份的第一代码区和第二代码区,用于存储系统运行程序;以及分区配置区,用于存储分区配置信息。4一种软件自。

4、动升级控制装置,其特征在于,所述装置包括存储空间配置单元,用于将存储空间配置为两个互为备份的代码区;以及升级控制单元,用于在软件升级时,对处于空闲状态的代码区的代码进行升级,并将启动标识指向最新升级的代码区代码。5如权利要求4所述的装置,其特征在于,所述升级控制单元包括CPU利用率读取模块,用于读取CPU资源利用率;升级判断模块,用于在CPU空闲时,检测本地软件版本,判断是否需要升级;升级包下载模块,用于在所述升级判断模块判断需要升级时,连接网络,下载升级包;升级代码区选择模块,用于读取升级标志,根据升级标志选择处于空闲状态的代码区,执行升级;以及启动标识更新模块,用于判断升级是否完成,在升级。

5、完成后更新启动标识,将启动标识指向新升级完成的代码区代码。6如权利要求4所述的装置,其特征在于,所述存储空间包括引导加载区,用于存储引导加载程序;互为备份的第一代码区和第二代码区,用于存储系统运行程序;以及分区配置区,用于存储分区配置信息。7一种包含权利要求4的软件自动升级控制装置的设备。8一种包含权利要求4的软件自动升级控制装置的网络电视。9一种包含权利要求4的软件自动升级控制装置的IPTV机顶盒。权利要求书CN102110000ACN102110003A1/4页3一种软件自动升级控制方法、装置及设备技术领域0001本发明属于软件领域,尤其涉及一种软件自动升级控制方法、装置及设备。背景技术0。

6、002为了解决产品使用过程中出现的问题和不断完善产品功能,网络电视和IPTV机顶盒等产品目前都有带有软件升级模块,不断更新其产品软件功能以更好的满足用户使用需求。0003常用的软件升级策略有开机自动升级和进入升级页面手动升级两种,在开机自动升级时,用户开机后系统自动检查当前软件版本和网络上的最新版本,如果发现有更新版本则立即进入升级系统完成升级任务。在进入升级页面手动升级时,用户点击菜单中的升级按钮,完成升级任务。0004采用这两种升级手段升级时,在执行升级的过程中用户只能被动等待,停止使用系统提供的娱乐功能,占用较多用户对网络电视和IPTV机顶盒等的使用时间,一旦升级过程中发生故障就必须重新。

7、启动进入备份系统继续升级直到升级成功为止。发明内容0005本发明实施例的目的在于提供一种软件自动升级控制方法,旨在解决现有软件升级时需要停止设备的运行,影响用户正常使用设备的问题。0006本发明实施例是这样实现的,一种软件自动升级控制方法,所述方法包括下述步骤0007将存储空间配置为两个互为备份的代码区;0008软件升级时,对处于空闲状态的代码区的代码进行升级,并将启动标识指向最新升级的代码区代码。0009本发明实施例的另一目的在于提供一种软件自动升级控制装置,所述装置包括0010存储空间配置单元,用于将存储空间配置为两个互为备份的代码区;以及0011升级控制单元,用于在软件升级时,对处于空闲。

8、状态的代码区的代码进行升级,并将启动标识指向最新升级的代码区代码。0012本发明实施例的另一目的在于一种包含上述软件自动升级控制装置的设备。0013本发明实施例的另一目的在于一种包含上述软件自动升级控制装置的网络电视。0014本发明实施例的另一目的在于一种包含上述软件自动升级控制装置的IPTV机顶盒。0015本发明实施例将存储空间划分为互为备份的两个代码区,在软件升级时升级处于空闲状态的代码区中的代码,不影响设备的正常运行,从而不影响用户对设备的正常使用,有效提高了升级模块的健壮性和容错性,避免了在升级过程中出现的异常对系统的破坏,而且由于升级可以在后台进行,不占用用户使用时间。说明书CN10。

9、2110000ACN102110003A2/4页4附图说明0016图1是本发明实施例提供的存储空间划分示意图;0017图2是本发明实施例提供的软件自动升级控制方法的实现流程图;0018图3是本发明实施例提供的系统启动方法的实现流程图;0019图4是本发明实施例提供的软件自动升级控制装置的结构图;0020图5是本发明实施例提供的升级控制单元的结构图。具体实施方式0021为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。0022本发明实施例中,将存储空间划分为互为备份的第一代码区。

10、和第二代码区,在软件升级时,选择对处于空闲状态的代码区的代码进行升级,升级完成后将系统标志更新为最新升级的代码区,使得系统重启时使用最新升级的代码区中的代码启动。0023如图1所示,在本发明实施例中,将设备的存储区域划分为引导加载区BOOTLOADER、第一代码区、第二代码区和分区配置区,其中0024引导加载区为不可代码区域,存储引导加载程序,引导加载程序是系统加电后运行的第一段软件代码,在操作系统内核运行之前运行,BOOTLOADER的主要运行任务就是将内核映象从硬盘上读到RAM中,然后跳转到内核的入口点去运行。通过这段程序,可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带。

11、到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。0025第一代码区和第二代码区互为备份,存储系统运行程序,包括三个部分0026操作系统内核,例如LINUX内核;0027文件系统,例如SF编码库;以及0028用户应用程序,例如网络电视NTV应用。0029分区配置区存储分区配置信息。0030软件升级过程可以根据系统的资源使用情况在CPU空闲时进行,升级开始时系统下载升级包,然后判断当前是运行在第一代码区还是第二代码区,如果当前系统使用的第一代码区代码时,可升级第二代码区中的代码,反之亦然。当升级成功完成时修改BOOTLOADER配置域中的启动标识,改为使用刚刚升级过的代码。重新启动,。

12、系统即可完成正常的升级流程。0031当升级过程中出现断电或其他异常时,对于第二代码区的升级可能会失败,但重启后不影响用户的正常使用,用户仍然可以使用第一代码区的代码,直到用户再次升级第二代码区的代码,直到成功。重启后,BOOTLOADER自动跳转到第二代码区,使用第二代码区的代码启动。0032图2示出了本发明实施例提供的软件升级控制方法的实现流程,详述如下0033在步骤S201中,读取CPU资源利用率;0034在步骤S202中,检测本地软件版本,判断是否需要升级,是则执行步骤S203,否则返回执行步骤S201;说明书CN102110000ACN102110003A3/4页50035在步骤S20。

13、3中,连接网络,下载升级包;0036在步骤S204中,读取升级标志,该升级标志标识了升级哪个代码区内的代码;0037在本发明实施例中,对处于空闲状态的代码区的代码进行升级。0038在步骤S205中,根据升级标志选择对应的代码区,执行升级过程;0039在步骤S206中,判断升级是否完成,是则执行步骤S207,否则返回执行步骤S201;0040在步骤S207中,更新启动标识,将启动标识指向最新升级的代码区内的代码。0041如图3所示,当系统重启后,首先进入BOOTLOADER,在BOOTLOADER配置域中包含启动标识,该标识决定系统当前应该使用第一代码区还是第二代码区,如果使用第一代码区,BOO。

14、TLOADER将载入第一代码区的内核KERNEL地址进而引导应用程序完成启动过程。0042在步骤S301中,BOOTLOADER启动;0043在步骤S302中,读取启动标识;0044在步骤S303中,根据启动标识,载入最新升级的代码区代码启动。0045图4示出了本发明实施例提供的软件自动升级控制装置的结构,为了便于说明,仅示出了与本发明实施例相关的部分。0046该软件自动升级控制装置可以是内置于网络电视、IPTV机顶盒等设备中。0047存储空间配置单元41将存储空间配置为两个互为备份的代码区,包括第一代码区和第二代码区。0048作为本发明的一个实施例,存储空间配置单元41将存储空间配置为四个区。

15、0049引导加载区,用于存储引导加载程序;0050互为备份的第一代码区和第二代码区,用于存储系统运行程序;以及0051分区配置区,用于存储分区配置信息。0052升级控制单元42在软件升级时,对处于空闲状态的代码区的代码进行升级,并将启动标识指向最新升级的代码区代码。0053图5示出了本发明实施例提供的升级控制单元的结构,为了便于说明,仅示出了与本发明实施例相关的部分。0054CPU利用率读取模块421读取CPU资源利用率。0055升级判断模块422在CPU空闲时,检测本地软件版本,判断是否需要升级。0056升级包下载模块423在升级判断模块422判断需要升级时,连接网络,下载升级包。0057升。

16、级代码区选择模块424读取升级标志,根据升级标志选择处于空闲状态的代码区,运行升级包,执行升级。0058启动标识更新模块425判断升级是否完成,在升级完成后更新启动标识,将启动标识指向新升级完成的代码区代码。0059本发明实施例将存储空间划分为互为备份的两个代码区,在软件升级时升级处于空闲状态的代码区中的代码,不影响设备的正常运行,从而不影响用户对设备的正常使用,有效提高了升级模块的健壮性和容错性,避免了在升级过程中出现的异常对系统的破坏,而且由于升级可以在后台进行,不占用用户使用时间。0060以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精说明书CN102110000ACN102110003A4/4页6神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。说明书CN102110000ACN102110003A1/2页7图1图2图3图4说明书附图CN102110000ACN102110003A2/2页8图5说明书附图CN102110000A。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1