用于启动具有多个中央处理器的计算机系统的方法技术方案

技术编号:12586818 阅读:105 留言:0更新日期:2015-12-24 03:31
本发明专利技术提供了一种用于启动具有多个中央处理器的计算机系统的方法。所述方法包括:在启动进程开始时,初始化多个CPU中的至少两个CPU;所述至少两个已初始化的CPU中的每个CPU访问存储在计算机系统中的任务描述图表(TDC),其中所述TDC包括启动进程中至少两个任务的信息;所述至少两个初始化的CPU中的每个CPU根据TDC中的至少两个任务的选择信息从至少两个任务中选择一个任务;所述至少两个初始化的CPU中的每个CPU根据TDC中所选任务的地址信息获取所选任务;以及已初始化的CPU至少部分并行地执行所选任务。

【技术实现步骤摘要】
【国外来华专利技术】
本申请大体涉及计算机技术,尤其涉及一种用于启动具有多个中央处理器 (Central Processing Unit,CPU)的计算机系统的方法。
技术介绍
计算机系统的启动是一种引导进程。当计算机系统上电时,该进程初始化计算 机系统硬件,然后启动操作系统(Operating System,OS)(如内核)。启动顺序通常很简 短,从基本输入输出系统(Basic Input Output System,BIOS)开始,至Ij引导加载器(Boot Loader),然后是内核(Kernel)。 当计算机系统上电时,BIOS执行上电自检(power on self test,POST)来初始化 包括随机存取存储器(Random Access Memory,RAM)、处理器、键盘以及监控器等设备。通常 情况下,计算机系统中的处理器是一种包括单个CPU或多个CPU (通常称为单核处理器或多 核处理器)的功能硬件单元。或者,计算机系统可包括多个处理器。如果计算机系统包括 多个CPU(如以多处理器系统或多核处理器系统的形式),可确定其中一个CPU为一个"引导 CPU"来执行启动进程的BIOS初始化代码和内核初始化代码。其余CPU (通常称为应用处理 器(Application Processor,AP))仍然处于空闲状态,直到OS开始执行任务。当BIOS初 始化完成后,识别一种启动设备并且将引导加载器从该启动设备载入到RAM以及将控制传 递到该引导加载器。引导加载器确定启动哪个OS(如内核),将确定的OS从启动设备载入 到RAM并将控制传递到该0S。当开始执行任务时,OS初始化资源和数据结构和其余的CPU 并执行初始化各种业务的初始脚本。 在大多数现有的计算机系统中,仅由一个CPU按一定顺序执行上述启动步骤。启 动进程花费了大量时间,减少启动时间是一个重要的问题。
技术实现思路
为了节省具有多个CPU的计算机系统的启动时间,本专利技术提供了各种实施例。 根据本专利技术的第一方面,提供了一种启动具有多个CPU的计算机系统的方法。该 方法包括:在启动进程开始时,初始化多个CPU中的至少两个CPU ;所述至少两个已初始化 的CPU中的每个CPU访问存储在所述计算机系统中的任务描述图表(TDC),其中该TDC包括 启动进程中至少两个任务的信息;所述至少两个已初始化的CPU中的每个CPU根据TDC中 至少两个任务的选择信息从至少两个任务中选择一个任务;所述至少两个已初始化的CPU 中的每个CPU根据TDC中所选任务的地址信息获取所选任务;以及已初始化的CPU至少部 分并行地执行所选任务。 根据本专利技术的第二方面,提供了一种计算机系统。所述计算机系统包括:与存储器 耦合的多个CPU,其中在启动进程开始时,初始化多个CPU中的至少两个CPU ;所述存储器用 于存储TDC和第一指令,其中该TDC包括启动进程中至少两个任务的信息;以及多个CPU中 的至少两个已初始化的CPU中的每个CPU用于根据第一指令访问TDC,每个已初始化的CPU 根据所述TDC中至少两个任务的选择信息从至少两个任务中选择一个任务,每个已初始化 的CPU根据TDC中所选任务的地址信息获取所选任务;以及至少部分并行地执行所选任务。 根据本专利技术的第三方面,提供了一种非瞬时计算机可读媒介,所述非瞬时计算机 可读媒介包含启动具有多个CPU的计算机系统的代码。当多个CPU中的多个已初始化的CPU 执行所述代码时,实现以下步骤的执行:每个已初始化的CPU访问存储在计算机系统中的 TDC,其中该TDC包括启动进程中至少两个任务的信息;每个已初始化的CPU根据TDC中至 少两个任务的选择信息从至少两个任务中选择一个任务;每个已初始化的CPU根据TDC中 所选任务的地址信息获取所选任务;以及已初始化的CPU至少部分并行地执行所选任务。 根据本专利技术的第四方面,提供了一种数据表。该数据表包括:选择信息字段,用于 表示与至少两个任务对应的选择信息;以及地址信息字段,用于表示与至少两个任务对应 的地址信息;其中具有多个CPU的计算机系统中的多个已初始化的CPU根据选择信息字段 从所述至少两个任务中选择任务,根据地址信息字段获取所选任务,并至少部分并行地执 行所选任务。 根据本专利技术的第五方面,提供了另一种启动具有多个CPU的计算机系统的方法, 所述方法包括:计算机系统的初始化电路初始化计算机系统中的一个或多个CPU ;每个已 初始化的CPU根据存储在计算机系统中的TDC从至少两个任务中选择一个任务,其中每个 任务拥有其记录在TDC中的选择信息和地址信息,并且不同的已初始化的CPU根据任务的 选择信息从所述至少两个任务中选择不同的任务;每个已初始化的CPU根据所选任务的地 址信息获取所选任务的程序指令;以及已初始化的CPU至少部分同时执行所选任务;其中 TDC包括启动进程中所有任务的信息,以及已初始化的CPU根据所述TDC继续选择和执行任 务,直到所有记录在TDC中的任务被执行。【附图说明】 图1是根据本专利技术的一项实施例的计算机系统的方框图; 图2是根据本专利技术的一项实施例的并行执行任务的方法的流程图; 图3示出根据本专利技术的一项实施例的任务描述图表(TDC)的结构; 图4是根据本专利技术的一项实施例的CPU选择和执行TDC中任务的过程的流程图; 图5是根据本专利技术的一项实施例的多个CPU并行执行任务的流程图; 图6是TDC的示例性结构以及启动进程中生成TDC的模块化过程; 图7是用于启动计算机系统的装置的方框图。【具体实施方式】 为了使本申请的上述目的、技术方案和优点更易于理解,下文描述了实施例和附 图。 图1是根据本专利技术的一项实施例的计算机系统100的方框图。计算机系统100包 括处理器101,所述处理器101与存储器(如随机存取存储器(RAM) 104)耦合以及可选择性 地与存储单元106耦合。存储单元106可以为只读存储器(ROM)或其他存储媒介(如硬盘 或闪存等等)。 处理器101可包括如图1所示的CPUO和CPUl等多个CPU。可选地,计算机系统 100包括如图1所示的处理器101和处理器108等一个以上的处理器。每个处理器101和 108可为单核处理器或多核处理器。 用于处理器101的CPU执行的各种代码可存储在RAM104或存储单元106中。可 选地,将代码109从存储单元106中复制到RAM104用于处理器101来执行。可选地,存储 在存储单元中的代码包括但不限于BIOS模块、引导加载器模块和内核模块中的任一或其 组合。存储单元中同样存储有任务描述图表(TDC)、第一指令和第二指令,下文将详细论述。 可选地,计算机系统还包括输出设备102 (例如,显示设备,如IXD (液晶显示屏)、 LED (发光二极管)显示器、CRT (阴极射线管)或投影仪),以及输入设备103 (如鼠标、键 盘、触摸屏或能够检测用户输入的传感器设备)。输出设备102由处理器101控制用于显 示图形交互界面。可选地,计算机系统还包括与外部网络或其他设备交换数据或信号的通 信接口 105。可通过通信接口 105从其他设备获取上述用于执行的处理器101的CPU的代 码(如BIOS模块、引导加载器模块、本文档来自技高网
...

【技术保护点】
一种用于启动具有多个中央处理器(CPU)的计算机系统的方法,其特征在于,包括:在启动进程开始时,初始化多个CPU中的至少两个CPU;所述至少两个已初始化的CPU中的每个CPU访问存储在计算机系统中的任务描述图表(TDC),其中TDC包括所述启动进程中至少两个任务的信息;以及所述至少两个已初始化的CPU中的每个CPU根据TDC中至少两个任务的选择信息从至少两个任务中选择一个任务;所述至少两个已初始化的CPU中的每个CPU根据TDC中所选任务的地址信息获取所选任务;以及已初始化的CPU至少部分并行地执行所选任务。

【技术特征摘要】
【国外来华专利技术】

【专利技术属性】
技术研发人员:夏又瑞·戴斯阿曼·沙黒
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1