字体:大 中 小
护眼
关灯
上一章
目录
下一章
第675章 真正的君权!
第(1/3)页
“一个睡着了的君王,要如何把权力抢回来?”
黄建功提出的这个问题,像一块巨石,沉甸甸地压在每个人的心头。
刚刚因为“抢占式”这个新概念而燃起的希望火焰,瞬间又被这盆冷酷的现实冰水,浇得摇摇欲坠。
是啊。
这才是问题的核心。
在单核CPU的简单世界里,在任何一个时刻,都只有一个程序,是真正“活”着的,是真正占有着CPU的。
当任务A在运行时,它就是此刻唯一的“王”。
“天枢”内核,无论被设计得多么强大,在那个瞬间,它也和任务B、任务C一样,只是一段被存放在内存里的,冰冷的,没有生命的二进制数据。
它本身,没有能力去干涉正在运行的任务A。
这似乎是一个无解的死循环。
想要“抢占”,内核必须是“活”的。
但想要内核“活”过来,正在运行的任务A,又必须先“死”掉(放弃CPU)。
“难道……要加一个CPU?”一个年轻的研究员异想天开地说道,“一个CPU专门跑任务,另一个CPU专门跑内核,用来监视第一个CPU?”
这个想法立刻被否决了。
“不行!”周老摇了摇头,“‘盘古之心’是我们倾尽所有才造出来的,再造一个,短期内绝无可能。而且,双核系统的复杂性,比我们现在遇到的问题,要高出好几个数量级!”
实验室再次陷入了沉默。
所有人都绞尽脑汁,试图从软件层面,找到一条可以“让睡着的君王自己醒来”的路径。
“有没有可能,在编译环节做手脚?”孙立国提出一个想法,“我们用‘鲁班神斧’编译所有应用程序时,强制在每几行代码后面,都自动插入一条`system_yield()`调用?这样,就算程序自己写了死循环,也会被我们强制插入的代码给打断。”
这个思路很巧妙,立刻引起了大家的讨论。
“这……好像可行!”
“这样一来,所有程序,都变得‘可控’了!”
但钱学敏很快就指出了其中的问题。
“这个方法,治标不治本。”她的声音很冷静,“第一,它会极大
(本章未完,请翻页)
记住手机版网址:m.lewenwx.cc
上一章
目录
下一章