关于第五章 团队和流程 2.6 特工团队中所提到的Y2K问题,第一次接触到这个名词去百度了,它的意思是这样的:year 2K problem,又称千年虫问题。主要原因是早期的软件大多以两位数字来记录年份,导致在公元2000年到来时,这些程序得表示方法和相应逻辑都要修正,才能避免出现的问题。

阅读了一篇来自CSDN博客的一篇文章,"隐藏的BUG探讨——从‘Y2K’问题到‘2038’ 年问题",博主:Mikeoperfect。千年虫是在计算机中对于年份和日期的表示方式不完整而引起的程序出错,包含三个方面的内容:

①由于使用了两位数表示年份,会引起跨世纪的日期计算出现错误结果。

②由于特殊日期和计算机中特殊定义的字符串权限冲突而有可能引起操作错误。

③闰年问题

根据以上三个方面的表现,我们可以肯定地说,千年虫在所有使用了智能程序进行有关日期的处理和操作的地方都有可能发生。主要集中发作于两个方面:一是配备比较早(大约在80年代中期以前)的应用程序,如IBM 4381,IBM AS/400等机型上运行的应用程序;二是嵌入式设备,指设备中使用了智能芯片的系统,这些设备无处不在。最终给解决2000年问题造成了极大的麻烦。

关于2038问题——32位的Unix和Linux操作系统时间溢出问题,这个问题是由用来写Unix和Linux的C语言引起的,C语言中用time_t来代表时间和日期,timt_t是整数型,它用来记载从1970年1月1日到2000年所经历的秒数。此格式能被表示的最后时间是第2147483647秒(代表格林尼时间2038年1月19日凌晨03:14:07)。下一秒,由于32位整型溢出,时间将会被“绕回”变成一个负数,第-2147483648秒,造成应用程序发生严重的时间错误,而无法运行。

看了这篇文章,才体会到即使是现代计算机也存在要进行修改的问题,如何来解决这一个又一个难题,还需要我们更加努力才行。

Y2K问题的更多相关文章

  1. [POJ2586]Y2K Accounting Bug

    [POJ2586]Y2K Accounting Bug 试题描述 Accounting for Computer Machinists (ACM) has sufferred from the Y2K ...

  2. Y2K Accounting Bug(贪心)

    Y2K Accounting Bug Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 10945   Accepted: 54 ...

  3. 贪心 POJ 2586 Y2K Accounting Bug

    题目地址:http://poj.org/problem?id=2586 /* 题意:某公司要统计全年盈利状况,对于每一个月来说,如果盈利则盈利S,如果亏空则亏空D. 公司每五个月进行一次统计,全年共统 ...

  4. Y2K Accounting Bug 分类: POJ 2015-06-16 16:55 14人阅读 评论(0) 收藏

    Y2K Accounting Bug Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 11222   Accepted: 56 ...

  5. Poj 2586 / OpenJudge 2586 Y2K Accounting Bug

    1.Link: http://poj.org/problem?id=2586 2.Content: Y2K Accounting Bug Time Limit: 1000MS   Memory Lim ...

  6. POJ2586——Y2K Accounting Bug

    Y2K Accounting Bug   Description Accounting for Computer Machinists (ACM) has sufferred from the Y2K ...

  7. poj 2586 Y2K Accounting Bug

    http://poj.org/problem?id=2586 大意是一个公司在12个月中,或固定盈余s,或固定亏损d. 但记不得哪些月盈余,哪些月亏损,只能记得连续5个月的代数和总是亏损(<0为 ...

  8. Y2K Accounting Bug

    题目: Description Accounting for Computer Machinists (ACM) has sufferred from the Y2K bug and lost som ...

  9. poj2586 Y2K Accounting Bug(贪心)

    转载请注明出处:http://blog.csdn.net/u012860063?viewmode=contents 题目链接:http://poj.org/problem?id=2586 ------ ...

  10. poj 2586 Y2K Accounting Bug (贪心)

    Y2K Accounting Bug Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 8678   Accepted: 428 ...

随机推荐

  1. css入门二-常用样式

    css入门二-常用样式总结 基本标签样式 背景色background-color 高度height; 宽度width; 边框对齐以及详细设定举例 width/*宽度*/: 80%; height/*高 ...

  2. Emacs编辑器配置

    以前总是用的vim编辑器,今天突然想换emacs 用下.折腾了很久终于搞定.使用的是windows测试环境 emacs下载地址http://ftp.gnu.org/gnu/emacs/windows/ ...

  3. 【javascript】jQuery判断用户右击事件

    jquery 判断用户是鼠标是右击还是左击, // 1 = 鼠标左键 left; 2 = 鼠标中键; 3 = 鼠标右键 $(document).mousedown(function(e) { if(3 ...

  4. Eclipse部署Java Web项目到Tomcat出错

    1.今天,我打开Eclipse,准备将一个Java Web项目部署到Tomcat中, 结果弹出提示错误窗口,具体如下: (1)出错详情 Could not publish server configu ...

  5. 学习笔记:Vue+Node+Mongodb构建简单商城系统(一)

    所需前置知识: HTML.CSS.JS.Vue.ES6.Npm.Webpack.Node.Express.Mongodb 项目整体架构: IDE:webstorm: 项目建立过程(cmd常用命令行指令 ...

  6. 我们web前端常用的一些Array对象及应用

    1. Array.filter() filter() 方法创建一个新数组, 其包含通过所提供函数实现的测试的所有元素. ES6: 2.Array.prototype.find() find() 方法返 ...

  7. Web原理

    在日常学代码的过程中,总会多多少少遇到点瓶颈.但是别人又听得懂,这是为什么? 我觉得,就是在原理上都不去思考,为什么这样写?为什么一定要这样写?那到底该怎么写?写完了是怎么运行的? 就以上几个问题,只 ...

  8. Python 学习笔记(一)Python 简介

    Python 简介 Python  1989年 吉多 · 范罗苏姆(Guido van Rossum)发明 Python 是一种解释型.面向对象.动态数据类型的高级程序设计语言 Python 应用于众 ...

  9. 小例子理解SQL的左连接与右连接

    假设有A,B两个表. 表A记录如下: aID aNum a20050111 a20050112 a20050113 a20050114 a20050115 表B记录如下: bID bName ---- ...

  10. HTTP的长连接,你不知道的连接。。。

    长连接起源 什么样的连接才能称之为长连接?要多长.... http是一种无状态的协议,也就是stateless协议,而http协议又是建立在tcp/ip协议的基础之上的. 无状态表示每次请求都是一次独 ...