字体
关灯
   存书签 书架管理 返回目录
    二十四小时。
    对于西山基地的核心实验室来说,这不仅仅是一个时间单位,更像是一道军令状。
    在经历了“内核恐慌”带来的短暂崩溃后,整个“天枢”项目组,爆发出了一种知耻而后勇的,近乎疯狂的工作热情。
    没有人抱怨,没有人休息。
    所有人都憋着一股劲,要将那个“思想钢印”留下的耻辱,彻底洗刷干净。
    黄建功再次坐到了主控台前。
    这一次,他的眼神中没有了初次编写时的激动与忐忑,只剩下一种如同磐石般的沉稳和绝对的精准。
    他首先打开了那份《天枢内核V0.1设计规范》的电子文档。
    在PCB(任务控制块)的数据结构定义中,他找到了通用寄存器备份区的末尾,果断地敲下了回车,增加了一个新的条目。
    【字段名:`task_stack_pointer`】
    【偏移量:72】
    【大小:4字节】
    【描述:用于保存该任务私有堆栈的栈顶指针。】
    这个小小的改动,就像是在原本的建筑图纸上,为每一间房屋,都增配了一个独立的下水管道。
    一个看似微小,实则从根本上解决了所有问题的改动。
    设计规范修改完毕。
    接下来,就是最艰难的代码重写工作。
    “孙立国!”黄建功头也不抬地喊道。
    “到!”孙立国立刻应声,他手里拿着更新后的指令集,神情专注。
    “重写`task_create`函数!注意,调用‘女娲’内存管理模块的`malloc`函数两次!一次为PCB分配空间,一次为新任务的私有堆栈分配空间!堆栈大小暂定为1024字节!”
    “明白!”
    另一边,钱学敏正带领着“架构理论”组,激烈地讨论着。
    “不行!1024字节的固定堆栈大小太浪费了!如果一个任务只是打印字符,可能只需要几十个字节。如果一个任务需要进行复杂的递归运算,1024字节可能又不够用,会导致堆栈溢出!”
    “我同意!应该设计成可配置的!在创建任务时,可以指定需要的堆栈大小!”
    “这个可以放到V0.2版本里去优化!当前V0.1版本的首要目标,是跑通!是稳定!先用固定大小,简单粗暴,但最不容易出错!”
    争论很快达成了一致:先生存,再优化。
    黄建功听着耳边的讨论,

关闭+畅/阅读=模式,看最新完整内容。本章未完,请点击下一页继续阅读》》
上一章 目录 下一页