软件安装方法、系统、计算设备及可读存储介质与流程

文档序号:31801458发布日期:2022-10-14 18:57阅读:74来源:国知局
软件安装方法、系统、计算设备及可读存储介质与流程

1.本发明涉及计算机及互联网技术领域,尤其涉及一种软件安装方法、系统、计算设备及可读存储介质。


背景技术:

2.目前,系统安装不支持多个版本系统内核的选择安装。现有的openanolis社区版本最多可以在一个系统安装镜像中部署两个内核版本,以支持两个版本的内核的选择安装。该方案首先读取软件源中的内核版本及软件包名,并将不同的软件包按照内核版本分开,在用户选择了内核版本后,通过将被选择的软件包名及内核版本加入packagelist,或从excludedlist列表移除,以控制内核版本的选择安装。然而,该方案具有至少三个方面的缺陷:一是无法选择配置多个版本内核,与内核强相关的软件包不能分开版本安装。二是packagelist和excludedlist两个列表在安装中还有其他用途,对两列表进行修改可能影响实际选择结果。三是安装顺序,如果存在安装位置靠前的软件包依赖内核,系统则会默认安装高版本的内核,导致影响实际选择结果。
3.为此,需要一种软件安装方法,以解决现有技术方案中存在的问题。


技术实现要素:

4.为此,本发明提供一种软件安装方法、系统、计算设备及可读存储介质,以解决或至少缓解上面存在的问题。
5.根据本发明的第一个方面,提供一种软件安装方法,该方法包括:在软件安装镜像中集成多个内核版本的软件源,并将多个内核版本的软件源记录在软件安装镜像中安装程序对应的第一列表中,其中,第一列表中的每项元素对应一个选项;在启动安装程序后,响应于软件选择界面中原本选中的第一选项变更为选中第二选项,使能第二选项对应的软件源,并禁用第一列表所对应的全部选项中的其他选项对应的软件源,生成第二列表;基于第二列表中使能状态的选项所对应的软件源进行软件安装。
6.可选地,在根据本发明的软件安装方法中,还包括:持续监听软件选择界面中是否发生选项变更事件,如果发生选项变更事件,则基于选项变更事件,对相应的选项进行使能或禁用设置。
7.可选地,在根据本发明的软件安装方法中,安装程序定义的内核列表中的第一项元素为默认选项,方法还包括:响应于软件选择界面中选中默认选项,则基于第一列表中使能状态的选项所对应的软件源进行软件安装。
8.可选地,在根据本发明的软件安装方法中,还包括:更新第二列表,使第二列表生效。
9.可选地,在根据本发明的软件安装方法中,还包括:将软件安装镜像中原有的内核版本的软件源的相关数据从软件安装镜像中移除。
10.可选地,在根据本发明的软件安装方法中,还包括:对软件安装的其他配置进行处
理,其他配置包括键盘选择、安装源选择、语言选择、时间和日期、软件选择、安装目的地、网络和主机名设置、kdump设置、密码设置中的至少一项。
11.可选地,在根据本发明的软件安装方法中,安装程序为anaconda。
12.根据本发明的第二个方面,提供一种软件安装系统,该系统包括:部署模块,适于在软件安装镜像中集成多个内核版本的软件源,并将多个内核版本的软件源记录在软件安装镜像中安装程序对应的第一列表中,其中,第一列表中的每项元素对应一个选项;选择安装模块,适于在启动安装程序后,响应于软件选择界面中原本选中的第一选项变更为选中第二选项,使能第二选项对应的软件源,并禁用第一列表所对应的全部选项中的其他选项对应的软件源,生成第二列表,还适于基于第二列表中使能状态的选项所对应的软件源进行软件安装。
13.可选地,在根据本发明的软件安装系统中,还包括:监听模块,适于持续监听软件选择界面中是否发生选项变更事件,如果发生选项变更事件,则基于选项变更事件,对相应的选项进行使能或禁用设置。
14.根据本发明的第三个方面,提供一种计算设备,包括:至少一个处理器;存储器,存储有程序指令,其中,程序指令被配置为适于由上述至少一个处理器执行,所述程序指令包括用于执行如上所述的方法的指令。
15.根据本发明的第四个方面,提供一种存储有程序指令的可读存储介质,当该程序指令被计算设备读取并执行时,使得该计算设备执行如上所述的方法。
16.根据本发明的技术方案,通过在软件安装镜像中集成多个内核版本的软件源,实现了在一个软件安装镜像中部署多个内核版本,使用户可以根据不同的使用场景自由选择合适的内核版本。通过一个软件安装镜像便可以安装不同内核版本的软件,提升了软件安装镜像的产品通用性,避免了同一内核版本产生多个产品的情况。
17.上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
18.为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
19.图1示出了根据本发明一个实施例的计算设备100的物理组件的框图;
20.图2示出了根据本发明一个实施例的软件安装方法200的流程图;
21.图3示出了根据本发明另一个实施例的软件安装方法300的流程图;
22.图4示出了根据本发明还有一个实施例的软件安装方法400的流程图;以及
23.图5示出了根据本发明一个实施例的软件安装系统500的示意图。
具体实施方式
24.下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
25.本发明提供了一种适于在计算设备中执行的软件安装方法,能够实现将多个版本的内核部署到一个软件安装镜像中,以支持用户自由选择安装任一版本的内核,满足不同用户在不同使用场景下的需求。
26.下面对本发明涉及的术语进行说明。
27.anaconda:是一个来自gnu项目的系统安装程序。在安装过程中,会识别和配置目标计算机的硬件,并为系统的体系结构创建适当的文件系统。anaconda允许用户在目标计算机上安装操作系统软件。anaconda是red hat、centos、fedora等linux操作系统的安装管理程序。它提供文本、图形等安装方式,并支持kickstart等脚本提供自动安装的功能。anaconda还可以升级同一发行版早期版本的现有安装。安装完成后,用户可以重新启动到已安装的系统中,并继续使用初始设置进行自定义。anaconda是一个相当复杂的安装程序。它支持从本地和远程源(如cd和dvd、存储在硬盘上的图像、nfs、http和ftp)进行安装。可以使用kickstart编写安装脚本,以提供完全无人参与的安装,可以在数十台机器上进行复制。它也可以在无头机器上的vnc上运行。分区程序支持多种高级存储设备,包括lvm、raid、iscsi和多路径。anaconda提供了高级调试功能,如远程日志记录、访问python交互式调试器以及远程保存异常转储。
28.kernel:也称为内核,linux kernel是操作系统unix的克隆,由linus torvalds在一个网络黑客团队的协助下从头开始编写。它的目标是符合posix和单一unix规范。它具有现代成熟unix中所期望的所有功能,包括真正的多任务处理、虚拟内存、共享库、按需加载、共享的写时拷贝可执行文件、适当的内存管理以及包括ipv4和ipv6在内的多级网络。linux最初是为基于32位x86的pc(386或更高版本)开发的,但今天它也运行在多种其他处理器体系结构上,包括32位和64位变体。
29.图1示出了的计算设备100的物理组件(即,硬件)的框图。在基本配置中,计算设备100包括至少一个处理单元102和系统存储器104。根据一个方面,取决于计算设备的配置和类型,处理单元102可以实现为处理器。系统存储器104包括但不限于易失性存储(例如,随机存取存储器)、非易失性存储(例如,只读存储器)、闪速存储器、或者这样的存储器的任何组合。根据一个方面,系统存储器104中包括操作系统105和程序模块106,程序模块106中包括软件安装模块120,软件安装模块120被配置为执行本发明的软件安装方法。
30.根据一个方面,操作系统105例如适合于控制计算设备100的操作。此外,示例结合图形库、其他操作系统、或任何其他应用程序而被实践,并且不限于任何特定的应用或系统。在图1中通过在虚线108内的那些组件示出了该基本配置。根据一个方面,计算设备100具有额外的特征或功能。例如,根据一个方面,计算设备100包括额外的数据存储设备(可移动的和/或不可移动的),例如磁盘、光盘、或者磁带。这样额外的存储在图1中是由可移动存储设备109和不可移动存储设备110示出的。
31.如在上文中所陈述的,根据一个方面,在系统存储器104中存储有程序模块106。根
据一个方面,程序模块106可以包括一个或多个应用程序,本发明不限制应用程序的类型,例如应用程序可以包括:电子邮件和联系人应用程序、文字处理应用程序、电子表格应用程序、数据库应用程序、幻灯片展示应用程序、绘画或计算机辅助应用程序、网络浏览器应用程序等。
32.根据一个方面,可以在包括分立电子元件的电路、包含逻辑门的封装或集成的电子芯片、利用微处理器的电路、或者在包含电子元件或微处理器的单个芯片上实践示例。例如,可以经由其中在图1中所示出的每个或许多组件可以集成在单个集成电路上的片上系统(soc)来实践示例。根据一个方面,这样的soc设备可以包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元、以及各种应用功能,其全部作为单个集成电路而被集成(或“烧”)到芯片基底上。当经由soc进行操作时,可以经由在单个集成电路(芯片)上与计算设备100的其他组件集成的专用逻辑来对在本文中所描述的功能进行操作。还可以使用能够执行逻辑操作(例如and、or和not)的其他技术来实践本发明的实施例,所述其他技术包括但不限于机械、光学、流体、和量子技术。另外,可以在通用计算机内或在任何其他任何电路或系统中实践本发明的实施例。
33.根据一个方面,计算设备100还可以具有一个或多个输入设备112,例如键盘、鼠标、笔、语音输入设备、触摸输入设备等。还可以包括输出设备114,例如显示器、扬声器、打印机等。前述设备是示例并且也可以使用其他设备。计算设备100可以包括允许与其他计算设备118进行通信的一个或多个通信连接116。合适的通信连接116的示例包括但不限于:rf发射机、接收机和/或收发机电路;通用串行总线(usb)、并行和/或串行端口。
34.如在本文中所使用的术语计算机可读介质包括计算机存储介质。计算机存储介质可以包括以任何用于存储信息(例如,计算机可读指示、数据结构、或程序模块)的方法或技术来实现的易失性的和非易失性的、可移动的和不可移动的介质。系统存储器104、可移动存储设备109、和不可移动存储设备110都是计算机存储介质的示例(即,存储器存储)。计算机存储介质可以包括随机存取存储器(ram)、只读存储器(rom)、电可擦只读存储器(eeprom)、闪速存储器或其他存储器技术、cd-rom、数字通用盘(dvd)或其他光存储、盒式磁带、磁带、磁盘存储器或其他磁存储设备、或者可用于存储信息并且可以由计算机设备100访问的任何其他制品。根据一个方面,任何这样的计算机存储介质都可以是计算设备100的一部分。计算机存储介质不包括载波或其他经传播的数据信号。
35.根据一个方面,通信介质是由计算机可读指令、数据结构、程序模块、或者经调制的数据信号(例如,载波或其他传输机制)中的其他数据实施的,并且包括任何信息传递介质。根据一个方面,术语“经调制的数据信号”描述了具有一个或多个特征集或者以将信息编码在信号中的方式改变的信号。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接之类的有线介质,以及诸如声学、射频(rf)、红外线的、以及其他无线介质之类的无线介质。
36.在本发明的一个实施例中,计算设备100包括一个或多个处理器、以及存储有程序指令的一个或多个可读存储介质。当程序指令被配置为由一个或多个处理器执行时,使得计算设备执行本发明实施例中的软件安装方法。
37.图2示出了根据本发明一个实施例的软件安装方法200的流程图。方法200适于在计算设备(例如前述计算设备100)中执行。其中,软件可以为操作系统,例如linux、debian、
ubuntu、fedora,但不限于此。
38.如图2所示,方法200始于步骤s210。
39.在步骤s210中,在软件安装镜像中集成多个内核版本的软件源。
40.随后,在步骤s220中,启动软件安装镜像中的安装程序。
41.随后,在步骤s230中,执行软件安装的其他配置。
42.随后,在步骤s240中,在软件选择界面中呈现多个内核版本的选项,判断用户选择的选项是否为默认选项。
43.响应于用户选择默认选项,则执行步骤s250中,开始安装默认选项对应的内核版本的软件。
44.响应于用户选择其他的内核版本对应的选项,则执行步骤s260,开始安装用户所选择的内核版本对应的软件。
45.为了更清楚地描述本发明的软件安装方法,下面将结合图3进行详细描述。图3示出了根据本发明另一个实施例的软件安装方法300的流程图。方法300适于在计算设备(例如前述计算设备100)中执行。其中,软件可以为操作系统,例如linux、debian、ubuntu、fedora,但不限于此。
46.如图3所示,方法300始于步骤s310。
47.在步骤s310中,在软件安装镜像中集成多个内核版本的软件源,并将多个内核版本的软件源记录在软件安装镜像中安装程序对应的第一列表中。其中,安装程序可以为anaconda。
48.根据本发明的一个实施例,在软件安装镜像中集成多个内核版本的软件源,多个内核版本的软件源中包括不同版本的内核以及该版本内核的其他强相关的软件包。集成到软件安装镜像中的多个内核版本的软件源的存储形式与软件安装镜像中的原本的基础软件源一样,存储多个版本的内核及其强相关的软件包的yum源,存储的目录名称为kernel+版本号。
49.根据本发明的一个实施例,将软件安装镜像中基础软件源中原有的默认版本的内核及其相关的软件包,即曾经部署的内核版本的软件源的相关数据从软件安装镜像中移除。这样,就可以将集成到软件安装镜像中的多个内核版本的软件源与原本的默认安装的软件源分隔开,使得安装程序可以通过使能(enable)或禁用(disable)不同的软件源的方式作为选择内核版本的开关。可选地,将将软件安装镜像中基础软件源中原有的默认版本的内核及其相关的软件包,即曾经部署的内核版本的软件源的相关数据,单独设置为多个内核版本的软件源中的一个版本。这样,软件安装镜像中基础软件源中原有的内核版本的相关信息从软件安装镜像中原本的软件安装的默认位置移除并被单独设置为多个内核版本中的一个,保证了软件安装时内核的独立安装。
50.根据本发明的实施例,第一列表为软件安装镜像中的软件源列表,用于记录集成在软件安装镜像中的多个内核版本的软件源,第一列表中的每项元素对应一个选项。在通过软件安装镜像安装软件时,软件安装镜像中的安装程序通过第一列表中的内容来确定待选择安装的内核版本,将与这些待选择安装的内核版本对应的选项呈现给用户。例如:第一列表中包括appstream、baseos、kernel-4.18、kernel-5.10多个软件源,在软件安装流程中,将第一列表中包括的内核版本所对应的选项呈现给用户,以便用户对需要安装的内核
版本的软件源进行选择。
51.随后,在步骤s320中,在启动安装程序后,响应于软件选择界面中原本选中的第一选项变更为选中第二选项,使能第二选项对应的软件源,并禁用第一列表所对应的全部选项中的除第二选项以外的其他选项所对应的软件源,生成第二列表。
52.根据本发明的实施例,响应于用户对一选项的选择,安装程序对第一列表中不同内核版本的软件源的状态进行调整。将用户选中的选项对应的内核版本的软件源的状态调整为使能状态,将第一列表中其他的选项对应的内核版本的软件源的状态调整为禁用状态。其中,软件选择界面中原本选中的第一选项可以是默认选项或用户前次选中的选项,如果启动安装程序后,未对软件源进行选择,则第一选项为默认选项,如果用户不进行选项变更,而是在软件选择界面中选择直接安装默认选项,则基于默认选项对应的软件源进行软件安装,即基于第一列表中使能状态的选项所对应的软件源进行软件安装。如果启动安装程序后,用户将默认选项变更为选项a,则使能选项a对应的软件源,并禁用选项a以外的其他选项对应的软件源,这时,如果用户又将选项a变更为选项b,则使能选项b对应的软件源,并禁用软件b以外的其他选项对应的软件源。其中,默认选项为安装程序定义的内核列表中的第一项元素。安装程序定义的软件源列表是第一列表的子集,例如:第一列表包括appstream、baseos、kernel-4.18、kernel-5.10内核版本的软件源,安装程序定义的内核列表则仅仅指kernel-4.18、kernel-5.10内核版本的软件源。
53.在安装程序启动之后,根据本发明的一个实施例,在软件安装流程中系统将安装其他配置,包括但不限于键盘选择、安装源选择、语言选择、时间和日期、软件选择、安装目的地、网络和主机名设置、kdump设置、密码设置等软件安装流程中涉及的全部配置内容。
54.根据本发明的实施例,安装程序通过spoke父类创建与继承spoke类的各个子类来实现软件安装的其他配置处理。每个spoke对应一个ui程序作为配置项的操作界面,其中一个spoke是软件选择,软件选择是其他配置中的一个,为用户选择基本环境(例如:“带dde的服务器”、“最小安装”、“服务器”、“工作站”、“定制操作系统”、“虚拟化主机”)和额外组件(例如:“传统unix兼容性”、“容器管理”、“开发工具”、“.net核心开发”、“图形管理工具”、“无头系统管理”、“网络服务器”、“rpm开发工具”)的操作界面,也即软件选择界面。基本环境和额外组件是系统安装镜像中基础软件源中的组件,基本环境是组件的集合,组件是软件包的集合。软件选择界面现有系统安装流程中没有对内核选择的处理,本发明通过将对内核选择的处理以及界面加入到软件选择的spoke中,以便用户可以通过界面对多内核版本的软件进行选择,在用户选择一个内核版本后,将对这一内核版本的软件进行安装。
55.具体地,在软件选择spoke的ui界面上进行修改,在原本的ui界面布局的中另外添加滚动窗口来放置选择内核版本的软件源的radiobutton控件,并设置监听函数将用于选择内核版本的软件源的内核选择变量赋值为当前选择项。当监听到radiobutton控件有选项变更事件发生时,将用于选择内核版本的软件源的内核选择变量赋值为当前选项(即第二选项)来替换默认选择项或上一次的选择项(即第一选项)。同时将当前选项对应的内核版本的软件源做enable处理,将其他的内核版本的软件源做disable处理,这样便形成了基于用户选择后的新的软件源列表(即第二列表),第二列表用于记录用户所选择的内核版本的软件源,即使能状态的内核版本的软件源。
56.在生成了第二列表之后,由于安装程序保留的仍然是未发生变更前的第一列表,
第二列表还未生效,需要对第二列表进行更新。用户在软件选择界面中,将原本选中的第一选项变更为选中第二选项后,更新操作将加入到计算设备的总线消息队列中,安装程序随后更新第二列表。第二列表更新完成后,即开始安装选中的内核版本的软件源对应的软件。可选地,持续监听软件选择界面中是否发生选项变更事件,如果发生选项变更事件,则基于选项变更事件,对相应的选项进行使能或禁用设置,将变更后选中的选项进行使能处理,将变更后选中的选项以外的其余选项进行禁用处理,并生成新的第二列表。
57.随后,在步骤s330中,基于第二列表中使能状态的选项所对应的软件源进行软件安装。具体地,根据最新的第二列表中记录的处于使能状态的选项所对应的软件源进行软件安装。
58.根据本发明的技术方案,通过在软件安装镜像中集成多个内核版本的软件源,实现了在一个软件安装镜像中部署多个内核版本,使用户可以根据不同的使用场景自由选择合适的内核版本。通过一个软件安装镜像便可以安装不同内核版本的软件,提升了软件安装镜像的产品通用性,避免了同一内核版本产生多个产品的情况。
59.为了更清楚地描述本发明的软件安装方法,下面将结合更详细的图4进行说明。图4示出了根据本发明还有一个实施例的软件安装方法400的流程图。方法400适于在计算设备(例如前述计算设备100)中执行。其中,软件可以为操作系统,例如linux、debian、ubuntu、fedora,但不限于此。
60.如图4所示,方法400始于步骤s401。
61.在步骤s401中,在软件安装镜像中添加多个内核版本的软件源。
62.随后,在步骤s402中,将多个内核版本的软件源记录在软件安装镜像中安装程序对应的第一列表中。
63.随后,在步骤s403中,在软件选择spoke对应的ui程序中添加ui界面。
64.随后,在步骤s404中,设置对软件选择界面是否发生变更事件的监听。
65.随后,在步骤s405中,检测软件选择界面中的选项是否为默认选项。
66.随后,在步骤s406中,如果软件选择界面中的选项为默认选项,则将用于选择内核版本的软件源的内核选择变量赋值为默认选项。随后进入步骤s411,完成配置。
67.随后,在步骤s407中,如果软件选择界面中的选项不是默认选项,即监听到软件选择界面中发生选项变更事件,原本选中的第一选项变更为选中第二选项,使能第二选项对应的软件源,禁用其他的软件源,生成第二列表。
68.随后,在步骤s408中,持续监听软件选择界面是否发生选项变更事件。
69.随后,在步骤s409中,如果监听到软件选择界面发生选项变更事件,则将变更后选中的选项进行使能处理,将变更后选中的选项以外的其余选项进行禁用处理,并生成新的第二列表。随后,进入步骤s410。
70.如果未监听到软件选择界面发生选项变更事件,则执行步骤s410,更新第二列表(包括新的第二列表)。
71.随后,在步骤s411中,完成配置。
72.本发明还提供一种软件安装系统,图5示出了根据本发明一个实施例的软件安装系统500的示意图,如图5所示,软件安装系统500包括部署模块510、选择安装模块520。可选地,软件安装系统还包括监听模块530。
73.软件安装系统500中的部署模块510适于在软件安装镜像中集成多个内核版本的软件源,并将多个内核版本的软件源记录在软件安装镜像中安装程序对应的第一列表中,其中,第一列表中的每项元素对应一个选项。
74.软件安装系统500中的选择安装模块520,适于在启动安装程序后,响应于软件选择界面中原本选中的第一选项变更为选中第二选项,使能第二选项对应的软件源,并禁用选项中的其他选项对应的软件源,生成第二列表,还适于基于第二列表中使能状态的选项所对应的软件源进行软件安装。
75.可选地,软件安装系统500中还包括监听模块530,适于持续监听软件选择界面中是否发生选项变更事件,如果发生选项变更事件,则基于选项变更事件,对相应的选项进行使能或禁用设置。
76.需要说明的,关于部署模块510、选择安装模块520和监听模块530的工作原理及流程与前述软件安装方法200-400相似,具体可以参考前述对软件安装方法200-400中的描述,在此不做赘述。
77.根据本发明的技术方案,通过在软件安装镜像中集成多个内核版本的软件源,实现了在一个软件安装镜像中部署多个内核版本,使用户可以根据不同的使用场景自由选择合适的内核版本。通过一个软件安装镜像便可以安装不同内核版本的软件,提升了软件安装镜像的产品通用性,避免了同一内核版本产生多个产品的情况。
78.这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如可移动硬盘、u盘、软盘、cd-rom或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
79.在程序代码在可编程计算机上执行的情况下,移动终端一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的软件安装方法。
80.以示例而非限制的方式,可读介质包括可读存储介质和通信介质。可读存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在可读介质的范围之内。
81.在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与本发明的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
82.在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
83.类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在
上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
84.本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
85.本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
86.此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
87.此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
88.如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
89.尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的而非限制性的,本发明的范围由所附权利要求书限定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1