分卷阅读549(2 / 2)

最终,他抬起手,压下所有的质疑和喧嚣。

“让她试。”

“比尔,你疯了?”

“就现在,”比尔没理会其他人的反对,“这个会议室,所有相关的代码和文档,全部向你开放。你需要什么,直接说。我们所有人,配合你。”

“庄颜,告诉我,你需要多久?”

庄颜迎着他的目光,没有丝毫退缩,伸出了一根手指。

“一个小时?”有人惊呼,“这不可能!”

庄颜摇了摇头,“不,给我十分钟,理清思路。然后,我会告诉你们问题出在哪里,以及解决方案。”

所有人目光聚焦在她身上。

庄颜转向负责惠普打印机年轻推广员:“问题发生时,系统日志里关于内存分配的记录,特别是HeapAlloc和图形接口GDI调用的时序,调出来。”

那程序员愣了一下,看向史蒂夫和比尔。

比尔微微点头。

程序员如梦初醒,猛地转身冲向最近的终端,手指飞快地敲击键盘,拷贝数据。

他心跳擂鼓,隐隐感觉自己正在见证什么。

这个突然出现的女孩,或许真的会带来转机。

史蒂夫忍不住再次质疑:“庄颜,你有多少把握?这不是儿戏,惠普是我们至关重要的合作伙伴,这关系到整个上市计划!一旦搞砸……”

庄颜打断他,“你们现在用的动态内存管理算法,是基于首次适应的变体,没错吧?”

史蒂夫猛地抬头,“你怎么知道?”

这是他们内部的设计!

“这不重要,”庄颜迅速带过,难道要我告诉你,是因为后世对早期Windows内存管理机制剖析视频多的是吗?

“这个算法在应对GDI与打印机驱动并发请求时,存在缺陷。是因为它无法有效处理两类任务对内存的竞争易引发访问冲突。”

她的话让史蒂夫等人皱起眉头。

“但这只是理论上的可能,我们的代码运行成功了。”

“代码是基于算法逻辑。如果算法层面存在设计盲区,代码无论如何优化,都无补于事。这是一场系统性崩溃,对吗?”

会议室交头接耳。

这个角度确实是他们所没想到。

“那你说怎么办?”

“现在重写内存管理核心?我们只有不到24小时!”

“不需要重写全部,”庄颜快速说道,“我们只需要引入优先级。对打印机输出,赋予更高的内存访问优先级。同时,对内存进行预分配……”

众人:!!!

等等,不对,这个思路,有点意思。

不少人已经顾不得犟嘴,下意识拿起笔就记。

“当然,这只能治标不治本,之后还应该建立缓冲管道……”

“优先级,缓冲管道!”西蒙激动地拍了下桌子,“我们之前总想着优化单个模块,却没想过要总体协调!”

庄颜不过提供思路,这屋子里年轻工程师们彻底兴奋。

各种各样火花蹦发。

“还可以在管理图形内存,建立伙伴系统的思路……”

“不仅仅是优先级,还可以结合定时器,在检测到打印任务启动时……”

“对!我们可以在驱动加入标志位……”

星星之火,燎原。

他们开始激烈地讨论,语速飞快,在白板上画出示意图,在终端上快速模拟。

史蒂