红联Linux门户
Linux帮助

我们需要程序本身的容错

发布时间:2005-05-23 00:19:33来源:红联作者:新新
我们设计好的程序要有两个原则:
一、我们的程序要尽量少错误。
二、我们程序就是有错误也要能正确执行。

第一条可能大家都很容易理解,而对于第二条的必要性,可能就很多人没有意识到了,说简单一点就是程序的容错性。程序容错包含输入、输出错误的检测就是对外界的容错,这点大家都知道的,我觉得其实还应该包含对程序本身设计错误的容错上。

一个小程序可能能够保证没有错误,对于一个大程序大工程没有人能够保证自己的程序没有错误,那么解决的办法就是对自己程序错误的容错。
我说的当然不是说完全靠异常来保证我们程序的正常运行,对于一些能够遇见的错误当然是直接处理比较好。看来你对异常处理了解还不是很彻底,异常并不一定要精确到能够知道哪一条指令才能处理,要不那对于一般程序员可能异常处理根本就没用了,因为对于C、C++程序员他们根本就不知道他们的代码对应什么指令。

其实我这么说不是说放宽对编写内核程序员的要求,相反是更加严格要求。我们写程序要要求尽量少错误甚至无错,但我们设计方案上要有有错误怎么处理的考虑,这才是一个好的系统解决方案。这就是一个好的系统设计人员应该考虑的。

原来设计单片cpu的时候就有这些考虑,因为一旦CPU固化,里面程序不可修改,那么任何一个小错误都是致命的(这还只是经济上损失),所以设计方案上就充分考虑了程序本身错误的处理。这点可能做控制系统程序的人都有理解,像小到电梯、大到卫星等系统对程序要求就比较严格,还要考虑外界干扰后程序的恢复等,因为这些系统如果系统崩溃那可能就是人命关天了。这些linux系统的一个发展方向嵌入操作系统等里面是必需要有所考虑的。
文章评论

共有 1 条评论

  1. ming 于 2005-07-16 00:31:50发表: