一种应用程序的加载方法及装置制造方法及图纸

技术编号:2912349 阅读:186 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了一种应用程序的加载方法及装置,其中,该方法包括:主核将存储介质存储的启动程序搬移到内存中,获得该启动程序的地址信息;主核唤醒从核,并将启动程序的地址信息通知从核;从核根据所述启动程序的地址信息执行所述启动程序,并加载对应的应用程序。采用本发明专利技术,实现了从核自由、独立加载其对应的应用程序,不依赖于主核,避免了现有技术中需要主核为从核加载应用程序的操作,大大降低了主核的负荷。

【技术实现步骤摘要】

本专利技术涉及计算机技术,特别涉及一种应用程序的加载方法及装置
技术介绍
随着微处理器技术的不断发展,出现了多核处理器。简单说来,多核处理器就是在同一个硅晶片上集成了多个独立物理核心,在实际工作中,多颗核心能够分别独立完成工作,从而达到了性能倍增的目的。目前采用的多核处理器系统中,大多选用处理器中的一个核为主核,其承担主要的资源管理和复杂逻辑运算,其余的核作为从核,其承担逻辑简单但数据量大的工作。通常,主核的位置是关键的,当主核被复位时,所有的从核也会相应地被复位,而当其中的一个或多个从核被复位时,主核可以不被复位,如此,可以使主核运行一些不需要经常重启的应用程序,而从核运行一些需要经常重启的应用程序,比如一些与业务相关的应用程序。对于多核处理器来说,需要实现各个核的应用程序的加载。由于多核处理器上电后,只有主核处于激活状态,因此,各个核并不是独立地加载各自的应用程序。现有的多核处理器中实现应用程序的加载方法主要包括:主核从复位异常向量所指向的地址空间中读取启动程序(BootRom:Boot Readonly memory),该启动程序适用于主核的启动,根据读取的启动程序对必要的硬件进行初始化;之后,主核加载自身的应用程序,并为所有的从核加载对应的应用程序,与此同时,所有的从核都处于睡眠状态;当主核加载完自身和所有的从核的应用程序之后,并在引导自身的应用程序之前,主核唤醒其他处于睡眠状态的从核。从核在被唤醒后,根据预设的应用程序入口和主核、从核的对应关系跳转到其对应的应用程序入口。如此,实现了多核系-->统中应用程序的加载操作。可见,现有技术的上述方法中,所有从核的应用程序都是由主核加载的,这大大增加了主核的负荷。
技术实现思路
有鉴于此,本专利技术提供了一种应用程序的加载方法和装置,有利于降低主核的负荷。一种应用程序的加载方法,包括:主核将存储介质存储的启动程序搬移到内存中,获得该启动程序的地址信息;主核唤醒从核,并将启动程序的地址信息通知从核;从核根据所述启动程序的地址信息执行所述启动程序,并加载对应的应用程序。一种应用程序的加载装置,该装置应用于包含存储介质和内存的多核系统中,包括:搬移单元、唤醒单元、通知单元、执行单元和从核加载单元;其中,所述搬移单元用于将存储介质存储的启动程序搬移到内存中,获得该启动程序的地址信息;所述唤醒单元用于唤醒多核系统中的从核,在执行唤醒操作后发送唤醒通知给所述通知单元;所述通知单元用于接收所述唤醒通知后,将所述搬移单元获得的启动程序的地址信息通知所述执行单元;所述执行单元用于根据所述通知单元通知的启动程序的地址信息执行启动程序,在执行启动程序后,发送加载通知给所述从核加载单元;所述从核加载单元用于接收所述加载通知后,为所述唤醒单元唤醒的从核加载对应的应用程序。由上述方案可知,本专利技术提供的应用程序的加载方法和加载装置中,主核将存储介质存储的启动程序搬移到内存中,获得该启动程序的地址信息;-->主核唤醒从核,并将启动程序的地址信息通知给从核;从核根据所述启动程序的地址信息执行所述启动程序,并加载自身对应的应用程序,从而实现了从核不依赖于主核为其加载其对应的应用程序,而是自身自由、独立加载其对应的应用程序,进而避免了现有技术中需要主核为所有的从核加载应用程序的操作,大大降低了主核的负荷。附图说明图1为本专利技术实施例提供的一种应用程序的加载流程图;图2为本专利技术实施例提供的应用程序的加载方法的详细流程图;图3为本专利技术实施例提供的应用程序的加载方法的另一详细流程图;图4为本专利技术实施例提供的多核系统中应用程序的加载方法的详细流程图;图5为本专利技术实施例提供的应用程序的加载装置的结构图。具体实施方式为了使本专利技术的目的、技术方案和优点更加清楚,下面结合附图对本专利技术进行详细描述。启动程序适用于硬件的启动,其通常存储在存储容量相对小的存储介质中,其中,该存储介质为闪存(Flash),本专利技术实施例对多核处理器的特点进行分析,提出了一种新型的加载应用程序的方法,该方法适用于多核系统中,具体可参见图1所示。参见图1,图1为本专利技术实施例提供的一种应用程序的加载流程图。如图1所示,该流程可包括以下步骤:步骤101,主核将存储介质存储的启动程序搬移到内存中,获得该启动程序的地址信息。通常,针对多核处理器,主核的个数一般只有一个。这里,启动程序是存放在存储介质上的,其中,该存储介质可为Flash。-->针对每一个核,当其复位时,都需要获取启动程序。本领域技术人员知道,在多核处理器上电后,只有主核处于激活状态,而其余的从核都处于睡眠状态,因此,当多核处理器上电后,主核会主动将Flash存储的启动程序搬移到内存中,获得该启动程序的地址信息。步骤102,主核唤醒从核,并将启动程序的地址信息通知从核。这里,由于当多核处理器上电后,主核已将Flash存储的启动程序搬移到内存中,因此,当从核被主核唤醒后,只需要知道主核将启动程序搬移到内存上的地址信息即可,无需搬移启动程序了,因此,通过本步骤,可以使从核获知启动程序的地址信息。步骤103,从核根据所述启动程序的地址信息执行启动程序,并加载对应的应用程序。这里,步骤103的操作可以是在该从核被主核唤醒之后执行的,也可以是在该从核复位后所执行的,本实施例对此并未限定。如此,实现了从核独立获取自身对应的应用程序的操作。为使本实施例更加清楚,下面对本实施例提出的应用程序的加载方法进行详细描述。参见图2,图2为本实施例提供的应用程序的加载方法的详细流程图。该方法适用于双核系统或者多核系统中,为简单描述,本实施例以双核系统比如双核处理器为例,即主核、从核的个数各为1个,其中,主核的身份编号为0,用于运行不需要经常重启的应用程序,如监控网络故障(OAM:Operation Administration Maintenance),从核的身份编号为1,用于运行需要经常重启的应用程序,如业务处理相关任务,如图2所示,该流程可包括以下步骤:步骤201,双核处理器上电或整机复位。需要说明的是,由于主核、从核是用户预先约定好的,但核本身并不知道其身份,即不知道其是主核还是从核,进而也不知道应该执行什么操作,因此,在步骤201中,可进一步执行身份的确定,即双核处理器上电或整机-->复位后,确定当前处于激活状态的核为主核还是从核,具体如何确定可与现有技术的操作类似,这里不再赘述。通常,当双核处理器上电或整机复位后,只有主核处于激活状态,因此,本实施例中,当前处于激活状态的核为主核,该主核执行下述步骤202。步骤202,主核将存储介质上存储的启动程序搬移到内存上,获得该启动程序的启动程序入口点。本实施例中,主核将启动程序搬移到内存上,可以方便其他从核共享该启动程序,进而执行该启动程序。另外,启动程序入口点为启动程序在内存中的具体地址信息。步骤203,主核执行该启动程序,并对自身内部硬件和除从核内部的硬件之外的外围设备进行初始化。步骤204,主核加载对应的应用程序。这里,由于所有核的启动程序都存放在内存中,为防止多核同时访问该启动程序而造成核与核之间的互斥,因此,针对每一个核,当其不需要执行启动程序之后,可主动放弃对该启动程序的执行权。本领域技术人员知道,主核在加载对应的应用程序之后,就不再需本文档来自技高网
...

【技术保护点】
一种应用程序的加载方法,其特征在于,包括: 主核将存储介质存储的启动程序BootRom搬移到内存中,获得该启动程序的地址信息; 主核唤醒从核,并将启动程序的地址信息通知从核; 从核根据所述启动程序的地址信息执行所述启动程序 ,并加载对应的应用程序。

【技术特征摘要】
1、一种应用程序的加载方法,其特征在于,包括:主核将存储介质存储的启动程序BootRom搬移到内存中,获得该启动程序的地址信息;主核唤醒从核,并将启动程序的地址信息通知从核;从核根据所述启动程序的地址信息执行所述启动程序,并加载对应的应用程序。2、根据权利要求1所述的方法,其特征在于,所述主核获得启动程序的地址信息的操作进一步包括:主核加载对应的应用程序;所述将启动程序的地址信息通知从核包括:将启动程序的地址信息写入到预设的共享内存中,从核在完成自身内部硬件的初始化后,从预设的共享内存中读取所述启动程序的地址信息。3、根据权利要求2所述的方法,其特征在于,所述从核在加载对应的应用程序之后,若需要复位,则进一步包括:从核对自身内部硬件进行初始化,当完成初始化时,继续执行所述从预设的共享内存中读取所述启动程序的地址信息的操作。4、根据权利要求1所述的方法,其特征在于,所述主核将启动程序的地址信息通知从核包括:主核加载对应的应用程序,从核在完成自身内部硬件的初始化后,处于等待之中,直至接收到主核发送的携带启动程序的地址信息的消息;所述从核根据启动程序的地址信息执行启动程序包括:从核根据接收的消息所携带的启动程序的地址信息来执行启动程序。5、根据权利要求3或4所述的方法,其特征在于,所述启动程序的地址信息为启动程序在内存中的入口点;所述从核根据启动程序的地址信息执行启动程序包括:从核根据预先在内存中划分的核与访问位置信息的对应关系确定其对应的访问位置信息;从核通过确定出的访问位置信息访问内存,并在内存中查找所述启动程序的入口点,当查找到时,执行所述启动程序。6、根据权利要求3或4所述的方法,其特征在于,所述主核加载对应的应用程序的操作进一步包括:当主核完成加载对应的应用程序后,主核放弃对启动程序的执行权;所述从核加载对应的应用程序的操作进一步包括:当从核完成加载对应的应用程序后,从核放弃对启动程序的执行权。7、根据权利要求1所述的方法,其特征在于,若当前存在多个从核,则所述主核唤醒从核包括:主核根据预设的唤醒从核的次序唤醒从核;所述从核加载对应的应用程序之后,进一步包括:从核根据预设的唤醒从核的次序唤醒另一个从核,并将启动程序的地址信息通知另一个从核,该另一个从核在加载对应的应用程序后,继续按照预设的唤醒从核的次序执行唤醒从核的操作,直至所有的从核都加载完对应的应用程序。8、根据权利要求1所述...

【专利技术属性】
技术研发人员:吴华平余涛
申请(专利权)人:杭州华三通信技术有限公司
类型:发明
国别省市:86[中国|杭州]

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

1