第670章 活过来的盘古之心!_四合院开局四八,八岁带妹逃荒 首页

字体:      护眼 关灯

上一章 目录 下一章

第670章 活过来的盘古之心!

第(2/3)页



旧的逻辑是:`PUSH`(所有寄存器压入公共堆栈)  ->  保存SP  ->  切换任务  ->  恢复SP  ->  `POP`(从公共堆栈弹出)。

新的逻辑是:保存当前任务的SP到它的PCB  ->  将SP指向内核自身的一个临时堆栈  ->  在内核堆栈上完成所有后续操作(比如选择下一个任务)  ->  从下一个任务的PCB中,读取它私有的SP  ->  将SP切换到下一个任务的堆栈  ->  `POP`(从新任务的私有堆栈中恢复它的寄存器)。

这个改动,意味着“天枢”内核,从此拥有了自己专属的、神圣不可侵犯的工作空间(内核堆栈)。

它不再与普通任务“同流合污”,而是真正站在了一个更高维度,以上帝视角,去管理和调度下方的芸芸众生(任务)。

这才是真正的“调度者”该有的姿态!

时间一分一秒地过去。

键盘的敲击声,构成了实验室的主旋律。

没有人感到疲惫。

因为所有人都清晰地感觉到,他们正在见证一个伟大生命的,第二次,也是真正的诞生。

十个小时后,代码重写完成。

“编译!”

“链接!”

“烧录!”

一连串的指令,行云流水。

当新的“天枢”内核V0.1.1版本,被再次烧录进“盘古之心”的ROM时,所有人的心,又一次悬了起来。

这一次,会成功吗?

黄建功的额头上,再次渗出了汗珠。

他深吸一口气,目光扫过屏幕上那段熟悉的测试代码。

任务A:循环打印'A',然后调用`system_yield()`。

任务B:循环打印'B',然后调用`system_yield()`。

没有变化。

决胜的关键,全在那看不见的,新烧录进去的内核之中。

“开始测试。”

黄建功的声音,带着一丝不易察觉的沙哑。

他敲下了回车。

屏幕上,光标闪烁。

A

字符'A'出现了。

任务A开始运行。

紧接着,`system_yield()`被调用。

控制权交给了“天枢”内核。

内核在自己的专属堆栈上,行云流水地完成了保存任务A上下文(包括它私有堆栈的指针),选择任务B,恢复任务B上下文(包括它私有堆栈的指针)等一系列操作。

然后,控制权交给了任务B。

屏幕上,在'A'的旁边,出现了第二个字符。

B

任务切换,成功!

所有人的拳头,都下意识地握紧了。

最关键的时刻来了

(本章未完,请翻页)
记住手机版网址:m.lewenwx.cc
加入书签我的书架

上一章 目录 下一章