第107章 难题
“林老师,位置控制程序我看了,没有问题。”李承乾看完位置控制代码,也没有发现问题。
虽然这份代码的运行效率,比他写的空间站控制程序要慢很多,但功能很完善。
毕竟是空间站的配套软件,一般情况下,肯定是进行过大量测试的,没有人敢在这些问题上马虎大意。
听到李承乾的话后,林雄的失望几乎写在了脸上。
紧接着,李承乾继续开口,“林老师,我觉得问题可能出在核心代码,或者是驱动程序上。”
位置控制程序是依托于空间站核心代码运行的。
最后驱动程序按照代码的指令,控制空间站的硬件。
“我能不能看一看这套系统的核心代码,以及驱动程序。”
“可以,但是核心代码和驱动程序是用汇编写的……”其实,在多次检查控制程序,没有发现问题之后,林雄就已经想到,可能是核心代码和驱动程序出了问题。
可核心代码和驱动程序都是汇编语言写的,解读起来难度极大,难以理解,原来的系统开发人员已经在查找bug了,可最短都需要两个月的时间才能完成,还不一定能排查出问题的所在。
“林老师,汇编语言,其实我也懂。”李承乾平静的开口。
“来,这是系统核心代码。”
“这是相关设备的驱动程序。”
“李承乾同学,看过代码后,我想你已经知道这个程序是干什么的了。”
看到李承乾点了点头,林雄无比郑重的开口,“今天的事情必须保密,不能对任何人说。”
“代码也必须保密,绝对不能泄露出去。”源代码要是泄露出去,一旦被人找到漏洞,攻击漏洞,后果不堪设想。
“你放心,我不会对任何人说这件事。”李承乾自然知道事情的严重性。
“李承乾同学,核心代码,以及驱动程序你试着解读一下,就算没有发现问题也没有关系。”用汇编语言编写程序,和解读汇编语言编写的程序,难度根本就不是一回事。
解读的难度是编写的十倍,这还是有注释的情况。
在没有注释的情况下,想找出bug,和大海捞针没有多少区别。
林雄已经考虑好了。
1个小时后就是下班时间,要是没有成果的话,他就会启用备用方案。
毕竟,明天李承乾需要进行软件现场答辩,需要做好准备,这件事也很重要。
李承乾的目光落到林雄调出来的两个文件上。
在技能加持之下,他速度飞快的浏览起来。
那些对其他人来说如同天书一般的代码,他一眼就能看穿含义。
空间站操作系统的核心代码并不多,10分钟后,他就看完所有核心代码。
在他的脑海中,控制程序已经在核心代码上运行了一遍。
顿时,李承乾发现了问题的关键。
“原来问题出在这里!”
一段看似正常的代码被李承乾找到。
这是一段时间转换函数。
而控制程序运行后,就会调用这个函数。
因为数据定义的精度不够,导致每一次位置计算都会发生一点的偏移,一天积累下来,偏移量刚好是1厘米。