正确处理。
但在陈胜的强硬要求下,他们还是组建了一个临时评估小组,对VISON系统内核、编译器、以及几个重要应用软件的日期处理模块进行了深入审查。
几天后,评估小组的初步结果让所有人大吃一惊。
他们在一个用于文件系统时间戳记录的底层库函数中,发现了一处隐蔽的假设:该函数默认年份大于等于70(即1970年,Unix纪元起始)才被认为是20世纪的日期。这意味着,当年份从“99”变为“00”时,这个函数会将“00”判定为1900年,而非2000年!
虽然这个函数并非在所有场景下都被调用,但一旦涉及需要计算日期跨度(如软件授权许可、日志归档、定时任务)的环节,就可能引发难以预料的错误。
“这这简直是个定时炸弹!”New-Vison的技术总监看着报告,额头见汗。
更深入的排查随即展开,结果发现,类似的问题并非个例。
在一些为特定硬件平台优化的嵌入式代码、部分遗留的商业数据库接口驱动、甚至某些网络通信协议的实现中,都存在着基于“年份小于某值即视为1900年代”的潜在风险代码。
问题的重要性瞬间被提升到最高级别。
New-Vison立即抽调精干力量,成立了“Y2K”(Year 2000 Problem,即千年虫问题)专项攻关组。
他们的任务是在尽可能短的时间内,定位所有存在风险的代码段,并开发出相应的补丁程序。
实验室里灯火通明,程序员们对着密密麻麻的代码行进行人工审查,同时编写了大量的自动化测试脚本,模拟从1999年12月31日到2000年1月1日的临界时间点,对系统各项功能进行压力测试。
过程繁琐而艰巨。
有些风险藏得很深,需要反复测试和推敲才能发现。
为了一个边界条件的处理,团队常常争论到深夜。
与此同时,陈胜也让NeoComm做了同步检查,至于国内的黄河通讯则是何雨柱直接通知的何耀宗。
华高科那边,何雨柱也通知到了,因为那边也有自行研发的系统。
另外,黄河集团的IT部门也接到了自查指令,对内部使用的财务、物流、人事管理系统进行捉虫。
时间转眼进入八月底,Vison系统的“Y2K”升级补丁包终于在全球范围内推送。
本章未完,请点击下一页继续阅读!