处理器内核优化方法、装置和存储介质与流程

文档序号:20009163发布日期:2020-02-22 03:54阅读:168来源:国知局
处理器内核优化方法、装置和存储介质与流程
本发明涉及通信
技术领域
,特别是涉及一种处理器内核优化方法、一种处理器内核优化装置和一种存储介质。
背景技术
:linux自诞生之日起,在不同的领域得到了广泛应用,大到服务器,小到嵌入式系统,都可以使用linux系统。由于linux系统一开始被设计成通用操作系统,它的目的是构建一个完整、稳定的开源操作系统,尽量缩短系统的平均响应时间,提高吞吐量,注重操作系统的整体功能需求,以求能够达到更好的平均性能。因此在设计linux的进程调度算法时主要考虑的是公平性。也就是说,用于进行资源调度的调度器尽可能将可用的处理器资源平均分配给所有需要处理器资源的进程,并保证每个进程都能得以运行。但这个设计目标是和实时进程的需求背道而驰的,使得在linux系统下无法很好地运行一些需要强实时性的应用。由此可见,目前的linux系统存在实时性差的问题。技术实现要素:鉴于上述问题,提出了本发明实施例的一种处理器内核优化方法、一种处理器内核优化装置和相应的一种存储介质,以解决基于linux平台的处理器内核实时性差的问题。为了解决上述问题,本发明实施例公开了一种处理器内核优化方法,包括:获取针对当前处理器内核的补丁程序对象;将所述补丁程序对象写入所述当前处理器内核的源代码中;通过运行写入有所述补丁程序对象的源代码,确定所述当前处理器内核中的多个目标体;将所述多个目标体对应的模式由非抢占模式配置为可抢占模式。可选地,所述将所述补丁程序对象写入所述当前处理器内核的源代码中的步骤,包括:确定所述当前处理器内核的源代码的存储目录;将所述补丁程序对象写入所述存储目录中。可选地,所述目标体包括目标区域和/或目标对象,所述将所述多个目标体对应的模式由非抢占模式配置为可抢占模式的步骤,包括:采用互斥量替换所述当前处理器内核中的自旋锁;基于所述互斥量,将所述多个目标区域和/或目标对象对应的模式由非抢占模式配置为可抢占模式。可选地,还包括:当检测到中断发生时,获取中断执行程序;将所述中断执行程序线程化,生成对应的中断线程,所述中断线程包括软中断线程,和/或,硬中断线程。可选地,所述将所述中断执行程序线程化,生成对应的中断线程的步骤,包括:调用预设函数创建软中断线程,和/或,硬中断线程;将所述中断执行程序转移至所述软中断线程,和/或,硬中断线程中。可选地,将所述中断执行程序线程化,生成对应的中断线程之后,还包括:确定所述当前处理器内核中各个中断线程的优先级;对所述各个中断线程的优先级进行调整。可选地,还包括:为所述当前处理器内核配置时钟管理系统,所述时钟管理系统的精度为纳秒级。为了解决上述问题,本发明实施例公开了一种处理器内核优化装置,包括:获取模块,用于获取针对当前处理器内核的补丁程序对象;写入模块,用于将所述补丁程序对象写入所述当前处理器内核的源代码中;确定模块,用于通过运行写入有所述补丁程序对象的源代码,确定所述当前处理器内核中的多个目标体;配置模块,用于将所述多个目标体对应的模式由非抢占模式配置为可抢占模式。可选地,所述写入模块包括:存储目录确定子模块,用于确定所述当前处理器内核的源代码的存储目录;补丁程序对象写入子模块,用于将所述补丁程序对象写入所述存储目录中。可选地,所述目标体包括目标区域和/或目标对象,所述配置模块包括:替换子模块,用于采用互斥量替换所述当前处理器内核中的自旋锁;配置子模块,用于基于所述互斥量,将所述多个目标区域和/或目标对象对应的模式由非抢占模式配置为可抢占模式。可选地,所述装置还包括:中断执行程序获取模块,用于当检测到中断发生时,获取中断执行程序;中断线程生成模块,用于将所述中断执行程序线程化,生成对应的中断线程,所述中断线程包括软中断线程,和/或,硬中断线程。可选地,所述中断线程生成模块包括:调用子模块,用于调用预设函数创建软中断线程,和/或,硬中断线程;转移子模块,用于将所述中断执行程序转移至所述软中断线程,和/或,硬中断线程中。可选地,所述装置还包括:优先级确定模块,用于确定所述当前处理器内核中各个中断线程的优先级;优先级调整模块,用于对所述各个中断线程的优先级进行调整。可选地,所述装置还包括:时钟管理系统配置模块,用于为所述当前处理器内核配置时钟管理系统,所述时钟管理系统的精度为纳秒级。为了解决上述问题,本发明实施例公开了一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述一个或多个所述的处理器内核优化方法。与
背景技术
相比,本发明实施例包括以下优点:本发明实施例,通过获取针对当前处理器内核的补丁程序对象,并将上述补丁程序对象写入当前处理器内核的源代码中,在通过运行写入有补丁程序对象的源代码确定当前处理器内核中的多个目标体后,可以将上述多个目标体对应的模式由非抢占模式配置为可抢占模式,以提高当前处理器内核的实时性。本实施例通过对处理器内核打补丁的方式对linux系统下的处理器内核进行优化,将补丁程序对象写入内核的源代码中,实现了对处理器内核本身的修改。本实施例中的补丁程序对象可以是对各种类型的处理器内核均适用的补丁程序,无需针对各个型号的处理器内核单独开发实时内核,节省了开发成本。在采用补丁程序对内核源代码进行修改后,通过运行修改后的内核源代码可以确定原本无法被抢占的目标体,进而通过将其对应的模式由非抢占模式配置为可抢占模式,使得原本无法被抢占目标体也能够被抢占,提高了基于linux的处理器内核的抢占性能,相应地,也就提高了处理器内核的实时响应能力。附图说明图1是本发明一个实施例的一种处理器内核优化方法的步骤流程示意图;图2是本发明一个实施例的另一种处理器内核优化方法的步骤流程示意图;图3是本发明一个实施例的一种处理器内核优化装置的示意性结构框图。具体实施方式为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。本发明实施例中,以基于linux平台的处理器优化方案可应用于mips(microprocessorwithoutinterlockedpipedstages,无内部互锁流水级的微处理器)为例进行处理器内核优化方案的描述。参照图1,示出了本发明一个实施例的一种处理器内核优化方法的步骤流程示意图,具体可以包括如下步骤:步骤101,获取针对当前处理器内核的补丁程序对象;需要说明的是,本实施例中的处理器可以是基于linux平台的处理器。由于linux系统的目的是为了达到更好的平均性能,保证每个进程都能得以运行,因此,该系统的实时性较差。同样的,基于linux平台进行开发的处理器的实时性也相对较差。为了提高基于linux平台的处理器的实时性,可以通过对该处理器的内核进行修改来实现。在本发明实施例中,上述补丁程序对象可以是一种实时抢占补丁程序对象。该实时抢占补丁程序对象用于对内核中原来不可抢占的目标区域/目标对象进行抢占,能够在现有linux抢占特性的基础上,进一步地减少抢占粒度,提高处理器内核的实时性。步骤102,将所述补丁程序对象写入所述当前处理器内核的源代码中;在本发明实施例中,在获得补丁程序对象后,可以将该补丁程序对象写入处理器内核的源代码中。在具体实现中,可以首先确定内核源代码的存储目录,然后将获得的补丁程序对象写入上述存储目录中,然后执行步骤103,通过运行写入有上述补丁程序对象的源代码,确定处理器内核中的多个目标体。步骤103,通过运行写入有所述补丁程序对象的源代码,确定所述当前处理器内核中的多个目标体;在本发明实施例中,运行写入有补丁程序对象的源代码可以通过执行特定程序或命令的方式来实现。例如,若补丁程序对象为patch-3.10.84-rt92.patch,则可以通过执行如下命令来运行写入有该补丁程序对象的源代码:gitapplypatch-3.10.84-rt92.patch通过运行写入有补丁程序对象的源代码,可以确定出在当前的处理器内核中的多个目标体,上述多个目标体可以包括目标区域,和/或,目标对象等等。在通常情况下,上述各个目标体均为非抢占模式,即,这些目标区域和目标对象无法被抢占。步骤104,将所述多个目标体对应的模式由非抢占模式配置为可抢占模式。在本发明实施例中,为了提高处理器内核的实时性,可以基于补丁程序对象通过减少抢占粒度来实现,抢占粒度是指处理器内核的定时器的时间精度。例如,若定时器的时间精度为10s,则对应的处理器内核的抢占粒度也就是10s;在配置为全抢占模式后,若定时器的精度1s,则相应的处理器内核的抢占粒度也就是1s,达到了处理器内核抢占粒度减小的目的。在具体实现中,可以通过将处理器内核中的多个目标体对应的模式由非抢占模式配置为可抢占模式。其中,目标体包括目标区域和/或目标对象。在可抢占模式下,目标区域和/或目标对象包括一些在先不能被抢占的代码段,例如锁保护的临界区、中断程序等等,均可以被抢占了。通过将在先不能被抢占的目标区域和/或目标对象配置为可抢占模式,使得在进程运行的过程中,这些目标区域和/或目标对象也能够被抢占,从而可以根据进程的实时性要求为进程分配处理器资源,保证了对实时性具有较高要求的进程在运行过程中能够优先被分配到更多的处理器资源,有效地提高处理器内核的实时性。在本发明实施例中,通过获取针对当前处理器内核的补丁程序对象,并将上述补丁程序对象写入当前处理器内核的源代码中,在通过运行写入有补丁程序对象的源代码确定当前处理器内核中的多个目标体后,可以将上述多个目标体对应的模式由非抢占模式配置为可抢占模式,以提高当前处理器内核的实时性。本实施例通过对处理器内核打补丁的方式对linux系统下的处理器内核进行优化,将补丁程序对象写入内核的源代码中,实现了对处理器内核本身的修改。本实施例中的补丁程序对象可以是对各种类型的处理器内核均适用的补丁程序,无需针对各个型号的处理器内核单独开发实时内核,节省了开发成本。在采用补丁程序对象对内核源代码进行修改后,通过运行修改后的内核源代码可以确定原本无法被抢占的目标体,进而通过将其对应的模式由非抢占模式配置为可抢占模式,使得原本无法被抢占目标体也能够被抢占,提高了基于linux的处理器内核的抢占性能,相应地,也就提高了处理器内核的实时响应能力,使得修改后的处理器内核能够满足各种对实时性有较高要求的计算机系统的需求。参照图2,示出了本发明另一个实施例的一种处理器内核优化方法的步骤流程示意图,具体可以包括如下步骤:步骤201,获取针对当前处理器内核的补丁程序对象;需要说明的是,当前处理器内核可以是基于linux平台的处理器内核。由于linux平台的处理器内核实时性较差,因此,为了扩大该处理器内核的应用范围,使其能够满足对实时性有较高要求的计算机系统的需求,有必要提高该处理器内核的实时性。在本发明实施例中,为了提高linux内核的实时性,可以通过对上述linux内核进行修改的方式来进行。例如,可以通过在该linux内核中打补丁。在本发明实施例中,上述补丁程序对象可以是一种针对不同型号的处理器内核均适用的补丁程序,是一种通用型的实时抢占补丁程序,该实时抢占补丁程序能够在现有linux抢占特性的基础上,进一步地减少抢占粒度,提高处理器内核的实时性。例如,若当前处理器内核为基于linux平台的a处理器内核,其内核型号为linux-3.10.84,则实时抢占补丁程序对象可以是patch-3.10.84-rt92.patch。此外,针对于linux平台,上述补丁程序对象中包含对应于mips平台的改进部分;该改进部分主要为将中断flag标志位修改为与mips平台相匹配。步骤202,确定所述当前处理器内核的源代码的存储目录;在本发明实施例中,在获得补丁程序对象后,可以将该补丁程序对象写入处理器内核的源代码中。在具体实现中,可以首先确定内核源代码的存储目录。例如,存储上述linux-3.10.84源代码的存储目录。步骤203,将所述补丁程序对象写入所述存储目录中;在具体实现中,可以将实时抢占补丁程序对象patch-3.10.84-rt92.patch写入存储上述linux-3.10.84源代码的存储目录中。在本发明实施例中,对处理器内核的修改实际上是一种对处理器内核的源代码的修改。因此,在确定出源代码的存储目录后,可以直接将补丁程序对象写入该存储目录中,从而实现对源代码的修改。步骤204,通过运行写入有所述补丁程序对象的源代码,确定所述当前处理器内核中的多个目标体;在本发明实施例中,运行写入有实时抢占补丁程序对象的源代码可以通过执行特定程序或命令的方式来实现。例如,对于上述实时抢占补丁程序对象patch-3.10.84-rt92.patch,可以通过执行如下命令来运行写入有该实时抢占补丁程序对象的源代码:gitapplypatch-3.10.84-rt92.patch在本发明实施例中,通过运行修改后的源代码,可以确定出在当前的处理器内核中的多个目标体,上述目标体可以包括目标区域,和/或,目标对象等等。这些目标体在通常情况下均为非抢占模式,即,这些目标区域和目标对象无法被抢占。在具体实现中,上述目标对象可以是中断程序、linux中的锁,如自旋锁spinlock_t等等;目标区域可以是被锁保护的临界区等区域。步骤205,采用互斥量替换所述当前处理器内核中的自旋锁;在本发明实施例中,在将目标区域和目标对象对应的模式由非抢占模式配置为可抢占模式前,可以将自旋锁spinlock_t由互斥量rtmutex代替,上述互斥量rtmutex是linux平台下的一种同步机制。当系统调用spinlock_t时,由于spinlock_t被rtmutex替换,因此spinlock_t可以进入睡眠状态,使得由spinlock_t保护的目标区域或目标对象可以被抢占。上述睡眠状态是指执行着的进程由于内因或外因而进入的一种等待状态。步骤206,基于所述互斥量,将所述多个目标区域和/或目标对象对应的模式由非抢占模式配置为可抢占模式;在本发明实施例中,在采用rtmutex替换内核中的spinlock_t后,便可以基于该rtmutex,将多个目标区域和/或目标对象对应的模式由非抢占模式配置为可抢占模式。在本发明实施例中,通过采用互斥量替换内核中的自旋锁,使得linux中的自旋锁变得可以被打断,并能够实现在内核源代码中的上下文切换;由于锁可以被打断,因而相应的被锁保护的临界区或对象等也就可以被抢占了,也就实现了将目标区域和目标对象由非抢占模式配置为可抢占模式。在可抢占模式下,能够加快系统调度的速率,提高系统的实时性。步骤207,当检测到中断发生时,获取中断执行程序;在本发明实施例,对处理器内核的源代码进行修改后,修改后的源代码允许在中断返回时发生调度,但从中断发生到中断返回这段时间,任务无法得到调度。从中断发生到中断返回期间,除了硬件层面的寄存器保护工作外,还包括中断处理例程,中断处理例程即中断执行程序。硬件层面的工作对于具体硬件平台基本上是确定的,但是中断处理例程的执行时间则不可预测。只要有中断发生,任何其他任务都会被中断,因此中断具有最高优先级,如果外部i/o事件频繁发生,那么其他实时任务就很难得到调度。另外,在执行中断处理例程时,由于中断处理例程不能被调度,而用于保存中断上下文的栈空间有限,为了防止级联中断,期间会关闭中断,这意味着即使有更紧迫外部事件发生,也无法得到处理。因此,为了解决上述问题,本实施例中的补丁程序对象引入了中断处理例程的线程化,让中断例程变成可调度实体,不仅可以根据任务的实时要求给中断线程安排优先级,而且减少了大量关闭中断的区域,让调度器能够更早地启动。在具体实现中,当检测到中断发生时,可以首先获取中断处理例程。步骤208,将所述中断执行程序线程化,生成对应的中断线程,所述中断线程包括软中断线程,和/或,硬中断线程;在本发明实施例中,中断执行程序线程化包括软中断的线程化和硬中断的线程化。其中,硬中断是由外部设备引起的中断,软中断则是由程序引起的中断,对应中断信号的不同中断源。在具体实现中,可以调用预设函数创建软中断线程,并通过将上述中断执行程序转移至相应的软中断线程中,来实现中断执行程序的线程化;同理,也可以调用预设函数创建硬中断线程,并通过将上述中断执行程序转移至相应的硬中断线程中,来实现中断执行程序的线程化。具体地,软中断的线程化可以在spawn_ksoftirqd()函数中完成,该函数在内核初始化时执行,它通过kthread()函数调用创建相应的软中断线程,设置各个软中断线程的优先级,软中断线程的优先级低于硬中断线程的优先级,高于用户进程的优先级。线程化软中断后,所有软中断的处理都可以转移到软中断线程中去。另一方面,可以通过kthread_create()函数调用irq_thread()函数创建相应的硬中断线程,硬中断线程的调度策略也是实时调度策略,其优先级高于软中断线程的优先级。步骤209,确定所述当前处理器内核中各个中断线程的优先级;通常,影响系统实时性的一种情况是优先级翻转的问题。优先级翻转可以描述如下:假设有三个进程a、b和c,优先级依次为c>b>a,低优先级的进程a获得资源,比如获得锁,一个中等优先级进程b开始执行,抢占了进程a获得的资源,当一个高优先级进程c试图获得a所持有的锁,但是由于b抢占了进程a的锁,而使得c阻塞,即,无法释放锁给c。解决优先级翻转问题的有效方法是优先级继承。优先级继承就是高优先级的进程临时把自己的高优先级调整给低优先级的持有锁的进程,这种优先级继承是可传递的。例如在上述示例中,如果一个更高优先级进程d试图获得第二个被高优先级进程c所持有的锁,这时进程c、a临时升为d进程的优先级并得以运行。在本发明实施例中,对各个进程的优先级的调整是针对中断线程来进行的。将中断执行程序线程化,使得中断线程成为可调度实体,根据各个进程的实时性的要求,调整对应的中断线程的优先级高低。步骤210,对所述各个中断线程的优先级进行调整,以确定对应的各个进程的优先级;通常,中断线程包含中断线程描述符,该中断线程描述符里具有一个标志中断线程优先级的变量,通过修改这个变量就能够实现对中断线程优先级的调整。对各个中断线程优先级的调整,其目的是为了确定中断线程对应的各个进程的优先级,从而使得对实时性具有较高要求的进程能够优先被分配到更多的处理器资源,保证该进程运行的实时性。需要说明的是,上述优先级的调整可以是根据各个进程的实时性要求人为的确定或按照其他特定的方式确定,本实施例对此不作限定。步骤211,为所述当前处理器内核配置时钟管理系统,所述时钟管理系统的精度为纳秒级。需要说明的是,为处理器内核配置时钟管理系统可以是在对处理器内核的源代码修改完成后就开始进行的,即本步骤211可以是在步骤206将多个目标区域和/或目标对象对应的模式由非抢占模式配置为可抢占模式后就开始进行的,而与步骤207至步骤210并无特定的先后顺序。在本发明实施例中,为了提高系统的实时性,还可以为当前处理器内核配置更高精度的时钟管理系统。通常,时钟管理系统主要有两个功能,即获取时间与提供软时钟,以便在指定时限内启动任务。早期的linux系统基于全局变量jiffies通过周期性时钟滴答计时,当系统时钟频率被设置为1000hz时,jiffies能够分辨到1ms。而系统软时钟也基于jiffies,因此,只能提供1ms粒度的软时钟。例如,可以设置任务在下一毫秒唤醒。在这种时钟系统下,为获取高精度时间,需要访问硬件平台的特定时钟计数器。但是,为了调度周期性更短的任务,则需要把时钟频率设置得更短。因此,传统时钟管理系统存在两个明显的问题:一是在获取时间方面,为了获取高精度时间,需要依赖特定的平台;二是为了调度短周期任务,需要设置时钟频率为更小值,这意味着时钟中断更加频繁,可能造成大量时钟中断处理和资源浪费。因此,为解决上述问题,可以为处理器内核配置更高精度的时钟管理系统,例如精度为纳秒级(ns)的时钟管理系统,它可以为系统提供纳秒级的定时精度,以满足对精确时间有迫切需求的应用程序或内核驱动,例如多媒体应用,音频设备的驱动程序等等,从而进一步提高系统的实时性。如表一和表二所示,分别是采用本实施例所提供的优化方法对基于linux平台的linux-3.10.84处理器内核进行优化后的延时数据,上述优化所采用的实时抢占补丁程序对象为patch-3.10.84-rt92.patch。表一:优化前的linux-3.10.84处理器内核延时数据次序最小延时(us)平均延时(us)最大延时(us)181813858281312081381313260481515084表二:优化后的linux-3.10.84处理器内核延时数据次序最小延时(us)平均延时(us)最大延时(us)1413150231314134131644513161通过上述对比可知,linux-3.10.84处理器内核经过引入patch-3.10.84-rt92.patch实时性优化后,该处理器内核的实时性有了明显的提升。在本发明实施例中,通过将补丁程序对象写入处理器内核的源代码中,在通过运行写入有补丁程序对象的源代码确定当前处理器内核中的多个目标体后,可以将上述多个目标体对应的模式由非抢占模式配置为可抢占模式,使得linux中的锁可以被打断,实现源代码的上下文切换,由于锁可以被打断,那么相应的被锁保护的区域或对象也就可以被抢占了;其次,本实施例还通过实现优先级继承来阻止优先级的翻转,并能够将中断处理程序线程化,使得中断也能够像其他进程一样参与调度、被抢占;第三,本实施例可以为处理器内核配置更高精度的时钟管理系统,使得系统能够调度周期性更短的任务,通过上述方面的改进,进一步提高了系统的实时性,使得处理器内核能够满足对实时性有较高要求的计算机系统的需求。需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。参照图3,示出了本发明一个实施例的一种处理器内核优化装置的示意性结构框图,具体可以包括如下模块:获取模块301,用于获取针对当前处理器内核的补丁程序对象;写入模块302,用于将所述补丁程序对象写入所述当前处理器内核的源代码中;确定模块303,用于通过运行写入有所述补丁程序对象的源代码,确定所述当前处理器内核中的多个目标体;配置模块304,用于将所述多个目标体对应的模式由非抢占模式配置为可抢占模式。在本发明实施例中,所述写入模块302具体可以包括如下子模块:存储目录确定子模块,用于确定所述当前处理器内核的源代码的存储目录;补丁程序对象写入子模块,用于将所述补丁程序对象写入所述存储目录中。在本发明实施例中,所述目标体可以包括目标区域和/或目标对象,所述配置模块304具体可以包括如下子模块:替换子模块,用于采用互斥量替换所述当前处理器内核中的自旋锁;配置子模块,用于基于所述互斥量,将所述多个目标区域和/或目标对象对应的模式由非抢占模式配置为可抢占模式。在本发明实施例中,所述装置还可以包括如下模块:中断执行程序获取模块,用于当检测到中断发生时,获取中断执行程序;中断线程生成模块,用于将所述中断执行程序线程化,生成对应的中断线程,所述中断线程可以包括软中断线程,和/或,硬中断线程。在本发明实施例中,所述中断线程生成模块具体可以包括如下子模块:调用子模块,用于调用预设函数创建软中断线程,和/或,硬中断线程;转移子模块,用于将所述中断执行程序转移至所述软中断线程,和/或,硬中断线程中。在本发明实施例中,所述装置还可以包括如下模块:优先级确定模块,用于确定所述当前处理器内核中各个中断线程的优先级;优先级调整模块,用于对所述各个中断线程的优先级进行调整。在本发明实施例中,所述装置还可以包括如下模块:时钟管理系统配置模块,用于为所述当前处理器内核配置时钟管理系统,所述时钟管理系统的精度可以为纳秒级。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。本发明实施例还提供了一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述的一种处理器内核优化方法,所述方法包括:获取针对当前处理器内核的补丁程序对象;将所述补丁程序对象写入所述当前处理器内核的源代码中;通过运行写入有所述补丁程序对象的源代码,确定所述当前处理器内核中的多个目标体;将所述多个目标体对应的模式由非抢占模式配置为可抢占模式。可选地,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备还可以执行如下的方法:确定所述当前处理器内核的源代码的存储目录;将所述补丁程序对象写入所述存储目录中。可选地,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备还可以执行如下的方法:采用互斥量替换所述当前处理器内核中的自旋锁;基于所述互斥量,将所述多个目标区域和/或目标对象对应的模式由非抢占模式配置为可抢占模式。可选地,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备还可以执行如下的方法:当检测到中断发生时,获取中断执行程序;将所述中断执行程序线程化,生成对应的中断线程,所述中断线程可以包括软中断线程,和/或,硬中断线程。可选地,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备还可以执行如下的方法:调用预设函数创建软中断线程,和/或,硬中断线程;将所述中断执行程序转移至所述软中断线程,和/或,硬中断线程中。可选地,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备还可以执行如下的方法:确定所述当前处理器内核中各个中断线程的优先级;对所述各个中断线程的优先级进行调整。可选地,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备还可以执行如下的方法:为所述当前处理器内核配置时钟管理系统,所述时钟管理系统的精度可以为纳秒级。本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。以上对本发明所提供的一种处理器内核优化方法、一种处理器内核优化装置和一种存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1