编程语言应用

首页 » 常识 » 预防 » Linux调度系统全景指南上篇
TUhjnbcbe - 2021/4/8 19:52:00

本文主要是讲Linux的调度系统,由于全部内容太多,分三部分来讲,调度可以说是操作系统的灵*,为了让CPU资源利用最大化,Linux设计了一套非常精细的调度系统,对大多数场景都进行了很多优化,系统扩展性强,我们可以根据业务模型和业务场景的特点,有针对性的去进行性能优化,在保证客户网络带宽前提下,隔离客户互相之间的干扰影响,提高CPU利用率,降低单位运算成本,提高市场竞争力。欢迎大家相互交流学习!

目录CPU

CPU作为计算资源,一直是云计算厂商比拼的核心竞争力,我们的目标是合理安排好计算任务,充分提高CPU的利用率,预留更多空间容错,增强系统稳定性,让任务更快执行,降低无效功耗,节约成本,从而提高市场竞争力。

CPU实现的抽象逻辑图

首先,我们有一个自动计数器。这个自动计数器会随着时钟主频不断地自增,来作为我们的PC寄存器;

在这个自动计数器的后面,我们连上一个译码器。译码器还要同时连着我们通过大量的D触发器组成的内存。

自动计数器会随着时钟主频不断自增,从译码器当中,找到对应的计数器所表示的内存地址,然后读取出里面的CPU指令。

读取出来的CPU指令会通过CPU时钟的控制,写入到一个由D触发器组成的寄存器,也就是指令寄存器当中。

在指令寄存器后面,我们可以再跟一个译码器。这个译码器的作用不再是用于寻址,而是把拿到的指令解析成opcode和对应的操作数。

当我们拿到对应的opcode和操作数,对应的输出线路就要连接ALU,开始进行各种算术和逻辑运算。对应的计算结果,则会再写回到D触发器组成的寄存器或者内存当中。

这里整个过程就大概是CPU的一条指令的执行过程。为了加快CPU指令的执行速度,CPU在发展过程中做了很多优化,例如流水线,分支预测,超标量,Hyper-threading,SIMD,多级cache,NUMA架构等,这里主要

1
查看完整版本: Linux调度系统全景指南上篇