第667章 灵魂的第一行代码!(3 / 3)
sp; - 将所有寄存器压入堆栈)
这行指令,是“盘古之心”指令集中,最强大的指令之一。它可以一次性将所有通用寄存器和链接寄存器的值,都保存到内存堆栈里。
这是硬件层面提供的,对“上下文保存”的至高支持!
是“硬件协同组”奋战三天三夜,从“创世圣经”的某个角落里挖掘出来的神之指令!
当这行代码出现在屏幕上时,钱学敏和几位核心专家,都忍不住握紧了拳头。
有了这条指令,`task_yield()`函数的实现难度,将大大降低!
老师留下的“创世圣经”里,果然处处都是宝藏!
黄建功的精神为之一振,他继续向下编写。
他需要从堆栈中,将这些值,再转移到任务对应的PCB存储区里。
他需要更新任务的状态,从“运行”变为“就绪”。
他需要调用一个还未编写的函数`scheduler()`,来决定下一个运行的任务是谁。
……
夜,越来越深。
实验室里,除了键盘的敲击声,和孙立国偶尔低声的校对声,再无其他。
所有人都站着,没有人坐下。
他们都在用自己的方式,陪伴着黄建功,进行这场孤独而伟大的远征。
终于,在黎明的第一缕晨光,透过窗户照进实验室时,黄建功敲下了最后一行代码。
`11100011 01000001 00000000` (POP {R0-R15, PC} - 将新任务的上下文从堆栈中弹出,并跳转执行)
`task_yield()`函数,完成了!
黄建功靠在椅背上,整个人像是从水里捞出来的一样。
他看着屏幕上那密密麻麻,如同蚁群般的0和1,眼中流露出一丝疲惫,但更多的是一种创造者独有的,满足感。
虽然还缺少最关键的`scheduler()`调度器部分。
但“天枢”的骨架,已经立起来了!
灵魂,即将拥有第一声啼哭!
“准备……”黄建功的声音有些颤抖,“准备进行第一次编译和链接。”
“我们要把这些代码,真正烧录进‘盘古之心’!”
(
↑返回顶部↑
温馨提示:亲爱的读者,为了避免丢失和转马,请勿依赖搜索访问,建议你收藏【188小说网】 www.188xs.com。我们将持续为您更新!
请勿开启浏览器阅读模式,可能将导致章节内容缺失及无法阅读下一章。