在使用java飞行记录(JFR)对其进行分析时,我们看到上下文切换速率为每秒8400次(如java任务控制上的热线程选项卡中所示)。将用户负载减少到20个用户时,cpu使用率平均在55%以上。当然,应用程序线程正在耗尽cpu的说法是不正确的,因为我们的应用程序不是CPU受限的应用程序。Oracle Linux Server 6.4版是我们的操作系统,linux内核版本为2.6.39-400.214.4.el6uek.x86_64。我尝试执行linux命令,即"
我一直在研究Linux内核的子系统。在这里,编写的是Linux内核负责上下文切换(允许另一个进程使用CPU)。下面是内核执行上下文切换的步骤:
CPU (实际硬件)基于内部定时器中断当前进程,切换到内核模式,并将控制交给内核。内核记录CPU和内存的当前状态,这对于恢复interrupted.The内核执行前一段时间可能出现的任何任务(例如从输入和输出收集数据,或者I/O,operations).The内核现在准备好让另一个进程运行内核为这个新进程准备内存,然后