首页 > 编程知识 正文

程序员一个bug改一天,改Bug的程序员处于什么地位

时间:2023-05-06 16:42:51 阅读:118680 作者:1495

新的十年开始了。

20年前,千禧钟声敲响的时候,很多Y2K应急队的程序员坐在电脑前很不安。 他们刚刚用最简单的“懒汉方法”修复了“千年漏洞”,也修复了Y2000 problem,简称“Y2K”的大漏洞。 20年后,这些程序员老了,但新一代青年程序员又要为老一辈的懒惰付出代价。

根据《纽约时报》,纽约停车收费表自2020年1月1日起不支持信用卡支付,整个城市超过1万个收费表已手动更新,仅通过现金或ParkNYC支付。 波兰Novitus公司生产的寄存器因记录时间故障无法打印收据; 视频游戏WWE 2K20将于2020年1月1日午夜停止工作; 华为表和一些设备需要去掉新年头两三天的真睡眠数据,更新后重新启动……

“千年虫”bug回来后,新一代程序员将如何解决

数量相当多的系统似乎发生了#2020错误。 当时Y2K问题的解决方案将这个问题推迟了20年……20年后的今天,当时的一些系统还在使用,系统认为我们在1920年。 ”

“千年虫”bug回来后,新一代程序员将如何解决

千禧年前后出生的青少年们可能很少有人知道“千年虫”。

在20世纪80年代中期以前投放的系统中,由于存储空间有限,再加上系统更新速度被认为很快,因此编程人员往往用两位数表示年份,而不是06/15/1998。 但是到了2000年,系统只知道01/01/00,不知道这是1900还是2000。

千年虫主要是在IBM 4381、IBM AS/400等机型上运行的APP应用,如美国的AT&; t集中在电信公司,其内部有3亿6,000多万行的APP应用需要检测Y2K问题的有无。 此外,自动化仪器仪表、电梯、报警系统、恒温灯等嵌入式设备也容易有千年虫的危险。

计算机从20世纪99年代开始普及到70年代,到了90年代,人们开始意识到问题的严重性。 不知道从1999年最后一天的23:59到2000年初日的00:00的变化意味着什么。 在渲染和炒面上,大众的恐惧不亚于“2012”。 据推测,如果程序停止、崩溃、发出错误指令,会影响银行、电站、航线等,存款会不会一夜清零、恐怖主义、飞机坠毁、股市崩溃,导致世界陷入混乱

据报道,当时也有人以洞穴为避难所,储备了很多食物和医疗包等必需品,还有人陆续提取银行存款和购买黄金。

“千年虫”bug回来后,新一代程序员将如何解决

为了避免“灾难”,政府和企业使用大量资源寻找和修复这个错误。 据报道,当时克林顿政权和业界人士预计,用“windowing”方式维修80%的计算机,将耗资数千亿美元。 据英国广播公司(BBC )报道,全球用于应对千年虫的费用在3000亿美元到5000亿美元之间。 真正的费用目前无法考证。 也有言论说千年虫是商业上的大谎言。

有两种修复错误的方法:完全重写代码和使用“windowing”方法快速修复代码。 “windowing”是指从00到20的所有日期都是20XX年而不是19XX年。 显然,后者的方法比将所有两位数表示的年份修改为四位更划算、更快、更简单。

从1970/01/01开始,许多编程语言和系统都以秒处理日期和时间。 也称为Unix time。 因此,考虑到中点1970的重要性,编码人员选择1920~2020作为标准窗口。

Unix time广泛用于各种行业的操作系统,并被视为标准。 Unix和Windows系统具有用于设置系统“转换期”的环境变量。 “转折年”以后的任何一年都属于本世纪,“转折年”以及“转折年”以前的任何一年都属于上世纪。 但是,像Microsoft Excel 95这样使用1920-2020年windowing的产品,在解决千年虫问题后,仅20年就可能再次出现日期错误。

“千年虫”bug回来后,新一代程序员将如何解决

当时的专家认为,在程序员投入大量资金和时间永久修复这些bug之后,系统早就被更换了。 所以,尽管“windowing”修复的程序已经智能使用了二三十年,但专家也应该足够了。

2020年的到来意味着我们进入了1920-2020窗口期的末尾。 2019年11月,由于发现易受Y2020“攻击”,大数据公司Splunk为用户提供了修复服务。 那个用户覆盖了美国《财富》强中的92家。 由于各公司尚未透露详细情况,因此“Y2020”将持续多久尚不清楚。

此外,2038年将面临另一个数据存储问题。 对于32位Unix和Linux,可以存储的最大数字为2的31次方,即2147483647。 从1997年开始计算,2147483647表示的秒数只能使用到2038年01月19日03时14分07秒。 这个时间后,系统返回- 2147483648。 代表性的时期是1901年12月13日20点45分52秒。

与千年虫不同,2038不仅影响APP应用层,还影响底层的时间控制功能。 但幸运的是,如果到2038年取消所有32位系统并采用64位,就可以巧妙地避免2038问题。

q裙子937963151亲自动手做Python的学习资料、学习视频,还有大神的在线指导哦

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。