一种应用安装系统及方法转让专利

申请号 : CN202310680051.2

文献号 : CN116400935B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 朱如海朱涛赵晨叶爽

申请人 : 贵州爱信诺航天信息有限公司

摘要 :

本发明涉及计算机应用技术领域,尤其是一种应用安装系统及方法,所述方法包括以下步骤:守护进程安装步骤,安装并启动守护进程,并授予守护进程root权限;安装命令获取步骤,获取安装命令;安装命令下发步骤,将安装命令通过套接字下发至守护进程;应用安装步骤,守护进程根据安装命令,安装应用;强制补丁安装步骤,获取强制补丁信息,并下载强制补丁。采用本方案,能够减少软件安装流程,实现软件的免密安装,从而提升软件下载和安装效率。

权利要求 :

1.一种应用安装方法,其特征在于:包括以下步骤:守护进程安装步骤,安装并启动守护进程,并授予守护进程root权限;

安装命令获取步骤,获取安装命令;

安装命令下发步骤,将安装命令通过套接字下发至守护进程;

应用安装步骤,守护进程根据安装命令,安装应用;

所述守护进程内存储有授权应用列表;

所述安装命令下发步骤包括:

S100,分析授权应用列表中是否包括目标软件,若否,则执行S200,若是,则执行S300;

S200,获取所述目标软件的下载源,并分析所述授权应用列表中是否包括下载源,若是,则执行S300,若否,则终止安装应用;

S300,将安装命令通过套接字下发至守护进程;

还包括守护进程更新步骤、兼容性核对步骤和转发步骤;

所述守护进程更新步骤,更新守护进程;守护进程自行更新时,下载更新后的守护进程文件后,由当前守护进程以root权限启动,并处理安装命令;

守护进程中维护有一功能列表,所述功能列表显示有守护进程对外的所有接口及其兼容版本;更新完成后,保留历史守护进程;

所述兼容性核对步骤,分析更新前及更新后的守护进程对外接口的兼容性变化,并生成兼容性分析结果;

所述转发步骤,更新前的守护进程,根据兼容性分析结果,将安装命令转发至更新后的守护进程处理,由此实现新旧两个守护进程的双向转发;

还包括绑定守护步骤,更新前及更新后的守护进程相互绑定,后台实时监测各守护进程的运行情况,若任一守护进程后台结束,则重启对应的线程,由此实现新旧两个线程的绑定守护。

2.根据权利要求1所述的一种应用安装方法,其特征在于:所述安装命令获取步骤包括:预设应用列表获取步骤,获取目标软件中的预设应用列表;

选择结果获取步骤,获取用户在预设应用列表中的选择结果;

安装命令生成步骤,根据用户的选择结果,生成安装命令;所述安装命令包括应用信息和安装包地址。

3.根据权利要求1所述的一种应用安装方法,其特征在于:还包括强制补丁安装步骤,获取强制补丁信息,并下载强制补丁;

所述强制补丁安装步骤包括:

补丁信息获取步骤,获取强制补丁信息,所述强制补丁信息包括补丁适用环境、配置下发策略、补丁安装命令和补丁下载地址;

安装包下载步骤,守护进程根据补丁下载地址,下载强制补丁的安装包;

补丁安装步骤,调用脚本安装强制补丁,并生成安装记录。

4.根据权利要求3所述的一种应用安装方法,其特征在于:所述配置下发策略包括全部下发、按组织下发、按IP段下发和按客户端列表下发中的一种或多种。

5.一种应用安装系统,其特征在于:应用了上述权利要求1‑4中任一项所述的应用安装方法;

包括守护进程安装模块、安装命令获取模块、安装命令下发模块和应用安装模块;

所述守护进程安装模块,用于安装并启动守护进程,并授予守护进程root权限;

所述安装命令获取模块,用于获取安装命令;

所述安装命令下发模块,用于将安装命令通过套接字下发至守护进程;

所述应用安装模块,用于守护进程根据安装命令,安装应用;

所述守护进程内存储有授权应用列表;

所述安装命令下发模块包括目标软件分析模块、下载源分析模块和授权下发模块:所述目标软件分析模块,用于分析授权应用列表中是否包括目标软件,并生成目标软件分析结果;

所述下载源分析模块,用于若授权分析结果为不包括目标软件,则获取所述目标软件的下载源,并分析所述授权应用列表中是否包括下载源,生成下载源分析结果;

所述授权下发模块,用于若目标软件分析结果为包括目标软件,或下载源分析结果为包括下载源,则将安装命令通过套接字下发至守护进程。

6.根据权利要求5所述的一种应用安装系统,其特征在于:所述安装命令获取模块包括:预设应用列表获取模块,用于获取目标软件中的预设应用列表;

选择结果获取模块,用于获取用户在预设应用列表中的选择结果;

安装命令生成模块,用于根据用户的选择结果,生成安装命令;所述安装命令包括应用信息和安装包地址。

7.根据权利要求5所述的一种应用安装系统,其特征在于:还包括强制补丁安装模块,用于获取强制补丁信息,并下载强制补丁;

所述强制补丁安装模块包括补丁信息获取模块、安装包下载模块和补丁安装模块:补丁信息获取模块,用于获取强制补丁信息,所述强制补丁信息包括补丁适用环境、配置下发策略、补丁安装命令和补丁下载地址;

安装包下载模块,用于守护进程根据补丁下载地址,下载强制补丁的安装包;

补丁安装模块,用于调用脚本安装强制补丁,并生成安装记录。

8.根据权利要求7所述的一种应用安装系统,其特征在于:所述配置下发策略包括全部下发、按组织下发、按IP段下发和按客户端列表下发中的一种或多种。

说明书 :

一种应用安装系统及方法

技术领域

[0001] 本发明涉及计算机应用技术领域,特别涉及一种应用安装系统及方法。

背景技术

[0002] 近年来,随着国产化步伐的快速前进,国产操作系统、中间件、数据库等相关技术也取得了一些重大突破,但从目前的情况分析,信息技术国产化尚未建立一个完善的生态圈。国产化进程依赖于软件与硬件技术的共同发展,建立完善的软件生态将会带动硬件技术的发展,国产化信息技术才会被用户广泛使用,国产化信息技术的广泛应用又能够促使国产化软件、硬件技术持续发展,从而形成国产化技术发展的良性循环。
[0003] 目前,国产操作系统均是基于Linux内核,且基于上游某个稳定的Linux发行版而研发的,不同的Linux发行版之间存在许多差异。处理器方面,国产处理器的开发公司众多,所采用的指令集也各不相同。不同操作系统、处理器在各方面的众多差异,给开发者带来了诸多困难,制约了软件生态的发展。例如,开发一款软件时需要同时开发出适用于各个系统的版本,相应的,用户在下载软件时,也需要根据自己设备的系统选择相应的软件版本进行下载,降低了用户下载软件时的便利性。除此之外,用户通过应用商店、其他软件提供的下载链接等途径进行软件下载时,由于应用商店或其他软件无法取得root权限,故每一次进行下载前,均需要用户进行确认,甚至需要用户输入密码确认用户身份,才会给予安装相应软件的权限,极大的降低了软件下载的便捷性,影响用户的使用体验。

发明内容

[0004] 本发明提供了一种应用安装系统及方法,能够减少软件安装流程,实现软件的免密安装,从而提升软件下载和安装效率。
[0005] 为了达到上述目的,本申请提供如下技术方案:
[0006] 一种应用安装方法,包括以下步骤:
[0007] 守护进程安装步骤,安装并启动守护进程,并授予守护进程root权限;
[0008] 安装命令获取步骤,获取安装命令;
[0009] 安装命令下发步骤,将安装命令通过套接字下发至守护进程;
[0010] 应用安装步骤,守护进程根据安装命令,安装应用;
[0011] 所述守护进程内存储有授权应用列表;
[0012] 所述安装命令下发步骤包括:
[0013] S100,分析授权应用列表中是否包括目标软件,若否,则执行S200,若是,则执行S300;
[0014] S200,获取所述目标软件的下载源,并分析所述授权应用列表中是否包括下载源,若是,则执行S300,若否,则终止安装应用;
[0015] S300,将安装命令通过套接字下发至守护进程。
[0016] 进一步,所述安装命令获取步骤包括:
[0017] 预设应用列表获取步骤,获取目标软件中的预设应用列表;
[0018] 选择结果获取步骤,获取用户在预设应用列表中的选择结果;
[0019] 安装命令生成步骤,根据用户的选择结果,生成安装命令;所述安装命令包括应用信息和安装包地址。
[0020] 进一步,还包括强制补丁安装步骤,获取强制补丁信息,并下载强制补丁;
[0021] 所述强制补丁安装步骤包括:
[0022] 补丁信息获取步骤,获取强制补丁信息,所述强制补丁信息包括补丁适用环境、配置下发策略、补丁安装命令和补丁下载地址;
[0023] 安装包下载步骤,守护进程根据补丁下载地址,下载强制补丁的安装包;
[0024] 补丁安装步骤,调用脚本安装强制补丁,并生成安装记录。
[0025] 进一步,所述配置下发策略包括全部下发、按组织下发、按IP段下发和按客户端列表下发中的一种或多种。
[0026] 进一步,还包括守护进程更新步骤、兼容性核对步骤和转发步骤;
[0027] 所述守护进程更新步骤,更新守护进程;守护进程自行更新时,下载更新后的守护进程文件后,由当前守护进程以root权限启动,并处理安装命令;
[0028] 守护进程中维护有一功能列表,所述功能列表显示有守护进程对外的所有接口及其兼容版本;更新完成后,保留历史守护进程;
[0029] 所述兼容性核对步骤,分析更新前及更新后的守护进程对外接口的兼容性变化,并生成兼容性分析结果;
[0030] 所述转发步骤,更新前的守护进程,根据兼容性分析结果,将安装命令转发至更新后的守护进程处理,由此实现新旧两个守护进程的双向转发;
[0031] 还包括绑定守护步骤,更新前及更新后的守护进程相互绑定,后台实时监测各守护进程的运行情况,若任一守护进程后台结束,则重启对应的线程,由此实现新旧两个线程的绑定守护。
[0032] 本发明还公开了一种应用安装系统,包括守护进程安装模块、安装命令获取模块、安装命令下发模块和应用安装模块;
[0033] 所述守护进程安装模块,用于安装并启动守护进程,并授予守护进程root权限;
[0034] 所述安装命令获取模块,用于获取安装命令;
[0035] 所述安装命令下发模块,用于将安装命令通过套接字下发至守护进程;
[0036] 所述应用安装模块,用于守护进程根据安装命令,安装应用;
[0037] 所述守护进程内存储有授权应用列表;
[0038] 所述安装命令下发模块包括目标软件分析模块、下载源分析模块和授权下发模块:
[0039] 所述目标软件分析模块,用于分析授权应用列表中是否包括目标软件,并生成目标软件分析结果;
[0040] 所述下载源分析模块,用于若授权分析结果为不包括目标软件,则获取所述目标软件的下载源,并分析所述授权应用列表中是否包括下载源,生成下载源分析结果;
[0041] 所述授权下发模块,用于若目标软件分析结果为包括目标软件,或下载源分析结果为包括下载源,则将安装命令通过套接字下发至守护进程。
[0042] 进一步,所述安装命令获取模块包括:
[0043] 预设应用列表获取模块,用于获取目标软件中的预设应用列表;
[0044] 选择结果获取模块,用于获取用户在预设应用列表中的选择结果;
[0045] 安装命令生成模块,用于根据用户的选择结果,生成安装命令;所述安装命令包括应用信息和安装包地址。
[0046] 进一步,还包括强制补丁安装模块,用于获取强制补丁信息,并下载强制补丁;
[0047] 所述强制补丁安装模块包括补丁信息获取模块、安装包下载模块和补丁安装模块:
[0048] 补丁信息获取模块,用于获取强制补丁信息,所述强制补丁信息包括补丁适用环境、配置下发策略、补丁安装命令和补丁下载地址;
[0049] 安装包下载模块,用于守护进程根据补丁下载地址,下载强制补丁的安装包;
[0050] 补丁安装模块,用于调用脚本安装强制补丁,并生成安装记录。
[0051] 进一步,所述配置下发策略包括全部下发、按组织下发、按IP段下发和按客户端列表下发中的一种或多种。
[0052] 本发明的原理及优点在于:
[0053] 1、向守护进程授予root权限,再实时获取设备中各目标软件反馈的软件安装需求。当用户在操作界面通过应用商店或其他软件内的链接选择了自己需要下载的软件后,将安装命令通过套接字下发至守护进程,守护进程接收安装命令,并调用root权限完成软件的下载。相对于现有技术中,用户每次下载软件时都进行一次系统权限申请,本方案减少了软件下载流程,完成了软件的免密安装,从而提升了软件下载效率。
[0054] 2、根据用户在预设应用列表中的选择结果,生成安装命令,从而防止恶意软件私自调用权限,在后台利用守护进程下载其他无关软件,在提升软件安装便利性的同时,保障了系统的安全性。
[0055] 3、强制补丁的配置下发策略包括全部下发、按组织下发、按IP段下发和按客户端列表下发,可以根据需求设置不同的下发策略,满足多元化需求,采用本方案,可以直接在后台自行下载安装强制补丁,便于系统维护。强制补丁安装成功后,生成安装记录,有利于系统记录,从而便于在下一次维护时跳过该强制补丁。

附图说明

[0056] 图1为本发明实施例一种应用安装方法的流程图。

具体实施方式

[0057] 下面通过具体实施方式进一步详细说明:
[0058] 实施例1:
[0059] 一种应用安装方法,如图1所示,包括以下步骤:
[0060] 守护进程安装步骤,安装并启动守护进程,并授予守护进程root权限,所述守护进程可以在各种操作系统的设备中安装部署;
[0061] 安装命令获取步骤,获取安装命令,为保证安装效率,本实施例中,后台实时监测各软件中的安装命令;在本申请的其他实施例中,还可以每0.1ms获取一次用户在各软件内的下载操作;
[0062] 所述安装命令获取步骤包括:
[0063] 预设应用列表获取步骤,获取目标软件中的预设应用列表;本实施例中,用户通过任一已下载软件进行软件下载操作时,令相应软件为目标软件;
[0064] 选择结果获取步骤,获取用户在预设应用列表中的选择结果,从而明确用户需要下载的具体应用;
[0065] 安装命令生成步骤,根据用户的选择结果,生成安装命令;所述安装命令包括应用信息和安装包地址;所述应用信息为应用的基本信息,包括名称、类型和功能;
[0066] 安装命令下发步骤,将安装命令通过套接字下发至守护进程;
[0067] 应用安装步骤,因守护进程拥有root权限,故守护进程直接根据安装命令,安装应用;相对于现有技术中,用户每次下载软件时都进行一次系统权限申请,本方案减少了软件下载流程,完成了软件的免密安装,从而提升了软件下载效率;
[0068] 强制补丁安装步骤,获取强制补丁信息,并下载强制补丁;
[0069] 所述强制补丁安装步骤包括:
[0070] 补丁信息获取步骤,获取强制补丁信息,所述强制补丁信息包括补丁适用环境、配置下发策略、补丁安装命令和补丁下载地址;所述配置下发策略包括全部下发、按组织下发、按IP段下发和按客户端列表下发中的一种或多种;本实施例中,所述配置下发策略为全部下发;
[0071] 安装包下载步骤,守护进程根据补丁下载地址,下载强制补丁的安装包;
[0072] 补丁安装步骤,调用脚本安装强制补丁,生成安装记录并存储,有利于系统记录,从而便于在下一次维护时跳过该强制补丁。
[0073] 本实施例中还提供一种一种应用安装系统,采用了上述一种应用安装方法,包括守护进程安装模块、安装命令获取模块、安装命令下发模块、应用安装模块和强制补丁安装模块;
[0074] 所述守护进程安装模块,用于安装并启动守护进程,并授予守护进程root权限;由此,守护进程充当普通软件与系统之间的中间角色,用户的需求可直接到达守护进程,由守护进程代替系统给予普通软件相应的安装权限;
[0075] 所述安装命令获取模块,用于获取安装命令;
[0076] 所述安装命令获取模块包括:
[0077] 预设应用列表获取模块,用于获取目标软件中的预设应用列表;具体的,用户通过任一已下载软件进行软件下载操作时,令相应软件为目标软件;
[0078] 选择结果获取模块,用于获取用户在预设应用列表中的选择结果;
[0079] 安装命令生成模块,用于根据用户的选择结果,生成安装命令;所述安装命令包括应用信息和安装包地址。
[0080] 所述安装命令下发模块,用于将安装命令通过套接字下发至守护进程;
[0081] 所述应用安装模块,用于守护进程根据安装命令,安装应用;
[0082] 强制补丁安装模块,用于获取强制补丁信息,并下载强制补丁;所述强制补丁安装模块包括补丁信息获取模块、安装包下载模块和补丁安装模块:
[0083] 补丁信息获取模块,用于获取强制补丁信息,所述强制补丁信息包括补丁适用环境、配置下发策略、补丁安装命令和补丁下载地址;
[0084] 安装包下载模块,用于守护进程根据补丁下载地址,下载强制补丁的安装包;
[0085] 补丁安装模块,用于调用脚本安装强制补丁,并生成安装记录。
[0086] 实施例2:
[0087] 实施例2基本原理与实施例1相同,其区别在于实施例2的一种应用安装方法中,所述守护进程内存储有授权应用列表;
[0088] 所述安装命令下发步骤包括:
[0089] S100,分析授权应用列表中是否包括目标软件,若否,则执行S200,若是,则执行S300;
[0090] S200,获取所述目标软件的下载源,并分析所述授权应用列表中是否包括下载源,若是,则执行S300,若否,则终止安装应用;如下例:若用户在A软件中进行了下载操作,则首先分析A软件是否在守护进程的授权应用列表中,若是,则继续进行下载安装;若否,则继续分析A软件是通过哪一个软件进行下载的(如B软件),也即用户此前是在B软件中进行了软件下载操作,完成了A软件的下载,此时继续分析B软件是否在守护进程的授权应用列表中,若是,则继续进行下载,若否,则终止安装应用。
[0091] S300,将安装命令通过套接字下发至守护进程。
[0092] 本实施例的一种应用安装系统中,所述守护进程内存储有授权应用列表;
[0093] 所述安装命令下发模块包括目标软件分析模块、下载源分析模块和授权下发模块:
[0094] 所述目标软件分析模块,用于分析授权应用列表中是否包括目标软件,并生成目标软件分析结果;
[0095] 所述下载源分析模块,用于若授权分析结果为不包括目标软件,则获取所述目标软件的下载源,并分析所述授权应用列表中是否包括下载源,生成下载源分析结果;
[0096] 所述授权下发模块,用于若目标软件分析结果为包括目标软件,或下载源分析结果为包括下载源,则将安装命令通过套接字下发至守护进程。如下例:若用户在A软件中进行了下载操作,则首先分析A软件是否在守护进程的授权应用列表中,若是,则继续进行下载;若否,则继续分析A软件是通过哪一个软件进行下载的(如B软件),也即用户此前是在B软件中进行了软件下载操作,完成了A软件的下载,此时继续分析B软件是否在守护进程的授权应用列表中,若是,则继续进行下载,若否,则终止安装应用。
[0097] 为了防止下载到恶意软件,本实施例中,只有已授权的应用可以免密进行应用安装;但守护进程的授权应用列表可能具有滞后性,有一些刚上架的应用还未进行安全性测试或已进行安全性测试但还未加入到授权应用列表中,故本方案通过溯源的方式判断目标软件的可靠度,并为了提升可靠度分析的准确性,仅进行一轮溯源,进行一次溯源后不再向上追溯。由此,可以提升免密安装安全性,并拓展免密安装可用应用范围。
[0098] 实施例3:
[0099] 实施例3基本原理与实施例1相同,其区别在于实施例3的一种应用安装方法中,还包括守护进程更新步骤、兼容性核对步骤和转发步骤。
[0100] 所述守护进程更新步骤,更新守护进程;守护进程自行更新时,下载更新后的守护进程文件后,由当前守护进程以root权限启动,并处理安装命令;
[0101] 守护进程中维护有一功能列表,所述功能列表显示有守护进程对外的所有接口及其兼容版本;更新完成后,保留历史守护进程。
[0102] 所述兼容性核对步骤,分析更新前及更新后的守护进程对外接口的兼容性变化,并生成兼容性分析结果;
[0103] 所述转发步骤,更新前的守护进程,根据兼容性分析结果,将安装命令转发至更新后的守护进程处理,由此实现新旧两个守护进程的双向转发。具体的,更新前的守护进程,根据兼容性分析结果,将与更新后守护进程均兼容的功能占用的资源释放,并将对应的功能标记为转发功能,转发功能用于将安装命令转发更新后的守护进程处理;由此,若更新后的守护进程对应的功能兼容,则由更新后的守护进程处理安装命令,若更新后的守护进程对应的功能不兼容,则由更新前的守护进程处理安装命令。
[0104] 还包括绑定守护步骤,更新前及更新后的守护进程相互绑定,后台实时监测各守护进程的运行情况,若任一守护进程后台结束,则重启对应的线程,由此实现新旧两个线程的绑定守护。
[0105] 本方案与传统方案的区别:
[0106] 传统方案新版本完全替代旧版本;如果存在不兼容的改变,则对应的下载软件客户端需要同步更新后方可使用,或由用户主动放弃更新。本方案中,当更新后,旧版本的守护进程变成新版本守护进程的一个插件,两者通过转发端口通信,原来与旧版连接的客户端可以通过转发的方式使用新版守护进程;同时释放相关资源,相当于让旧版本守护进程变成了新版本的一个插件。与新版守护进程连接的客户端,也可以通过转发使用旧版守护进程的功能。
[0107] 除此之外,本申请中的技术方案还具有以下优点:开发时不需太过担心和考虑版本之间的兼容性问题,更新后不会导致旧版客户端无法使用,已经与旧版守护进程连接的客户端无需重新连接新版客户端,避免中断或重连。
[0108] 一种应用安装系统,应用了上述一种应用安装方法。
[0109] 以上的仅是本发明的实施例,方案中公知的具体结构及特性等常识在此未作过多描述,所属领域普通技术人员知晓申请日或者优先权日之前发明所属技术领域所有的普通技术知识,能够获知该领域中所有的现有技术,并且具有应用该日期之前常规实验手段的能力,所属领域普通技术人员可以在本申请给出的启示下,结合自身能力完善并实施本方案,一些典型的公知结构或者公知方法不应当成为所属领域普通技术人员实施本申请的障碍。应当指出,对于本领域的技术人员来说,在不脱离本发明结构的前提下,还可以作出若干变形和改进,这些也应该视为本发明的保护范围,这些都不会影响本发明实施的效果和专利的实用性。本申请要求的保护范围应当以其权利要求的内容为准,说明书中的具体实施方式等记载可以用于解释权利要求的内容。