|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
经常看到有人问用什么版本的linux好,其实只要你认真学习无论什么版本都挺好的。
关于C言语内存办理亏弱的成绩几年前我们就会商过。有人试图辩驳,说古代各类操纵体系或runtime平台的前进,对内存办理的风险供应了各类回护,好比地点空间随机化,另有各类诸如Valgrind如许的工具能够发明内存会见bug,年夜年夜减弱伤害水平。我非常保举人人从头浏览一下那次会商。
我的概念——事先和如今——都是C言语不合适用来写平安性请求高的程序,任何缺少内存反省机制的编程言语都不合适。很复杂,就是不合适。它们应当仅限于用来写一些小的中心体系,最好是小到能够用一些惯例的办法(被证实的办法)举行反省,一切别的的,包含全体使用逻辑,都应当用受控代码完成(比方C#,Java或别的的,我没有倾向)。
心脏出血就是这类缺少界限反省酿成的了局的另外一个例子。它没法被Valgrind如许的工具反省出,由于它不是一般的被触发的举措——它必要是一种歹意的举动或是一种充足智能的测试协定才干发明(很难很难)。
现实上,没有哪一个程序员可以伶俐到能够写出完整制止心脏出血如许的bug的程序。究竟,程序员的进修和编码存眷的是他们的程序的逻辑。在没有界限反省机制的编程言语里,逻辑大概会走错路,由于盘算机能够会见和实行恣意内存内容,这些内容是和你的程序里的代码和变量是不妨的。一切没有界限反省的编程言语将盘算机的多个维度表露给程序,假如你以为本人比OpenSSL开辟团队强、能很好的处置这类情形,那是掩耳盗铃。
我们没法在软件中制止bug的存在,但我们能够堵住这些看起来无量无尽的bug的泉源。由于它,很早之前我们的互联网就蒙受了Morris蠕虫病毒的伤害。如今,2年的工夫里,天下70%的互联网流量都表露无疑,价值惨痛。假如不堵住这泉源,今后会让我们丧失更多。
英文原文:TheHeartbleedBug
在linux中学习命令的最好办法是学习Shell脚本编程,Shell脚本比起其他语言来学习简单,但是功能却十分强大.通过学习Shell编程,能让你掌握大量的linux命令。 |
|