`
- 浏览:
6198968 次
-
当想法脱离纸和笔时,才能被称为思想!
近日读了《Linux/Unix设计思想》,得到了很多启发。
一直以来,人们认为软件运行于硬件之上。这是事实。然而严重依赖某种硬件的软件事实上只是一个奴隶而已,一旦硬件主人风光不再,那么它也寿终正寝了。因此编写可移植性的代码是最最重要的,随着硬件的多样化,汇编语言越来越不受欢迎。硬件的束缚只要存在,就会限制软件的进一步腾飞,软件只有脱离硬件的限制才能天马行空,其设计精髓才得以表现。
那么,基于特定硬件的软件真的一无是处么?考虑这个问题的时候,不妨想一下软笔书法,直到今天,使用中性笔,圆珠笔的今天,软笔书法依然是一门艺术,然而人们终于认识到它只是一种记录的工具而不再是思想本身,因此软笔书法只能是一种艺术,而不再是思想本身,曾几何时,写一手好字被认为是有文化,有修养,而今天,这种陈旧的观念已不复存在。曾几何时,汇编程序员多么令人崇拜,可是后来,人们发现软件有很多仅仅属于自己的东西。基于硬件的调优以及其他工作完全成了很少一部分人的工作,当然你也可以称他们为艺术工作者。如今更令人崇拜的是搞纯软件的。软件发展了这么多年,事实上已经积累很太多的设计理念,模式,开发经验等有价值的东西,而这些东西和硬件的关系是不大甚至没有什么直接关系的,如果被硬件牵住,那么就无法彻底透彻的理解和应用这些纯软件的东西。
基于特定硬件编程,往往希望得到的是“更快”,然而“明年的硬件的表现”会令你费力的工作汗颜。
学习Linux内核的时候,我曾经花了多少个日日夜夜看代码,调试,编译,就为了弄明白0x7c00这个位置的特殊性,搞得我差点成了硬件工程师!花了那么久研究Intel处理器的分段机制-完全是为了兼容,其实就是为了能把Linux内核看下去,当我终于看到start_kernel的时候,已经乏力了...而实际上,真正的大牛们可以直接从schedule函数中得到调度器设计的信息。如今的我,虽然远远不是什么大牛,但是也甩开4年前的自己很远了吧?...现在,还有多人像我当年一样,为了弄懂Linux内核而去研究Intel分段之类的,是时候停下来反思一下了。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
硬件和软件相互依存、不可分割,未安装软件的"裸机"无法工作,软件脱离硬件也无法 运行。 计算机的基本组成部件 1. 输入设备 键盘、鼠标、扫描仪 2. 输出设备 显示器、打印机、绘图仪 3、存储器 计算机的存储和记忆...
Helix MP3解码库脱离汇编指令束缚,运行在任何处理器上的解决方案
目前发布的这个程序就是使用了NETBOX的技术进行了封包编译,彻底脱离了IIS等ASP支撑环境,用一个绿色软件运行即可实现论坛的服务! 想象一下吧,什么网络设置都不需要,只需要在你的电脑上双击一下这个程序就可以...
AspNet服务器[脱离IIS运行网站] 狼人软件
首届中国优秀软件创新大赛金奖作品,获奖500万 云端软件平台是一个帮你使用软件的平台。平台上有丰富的软件资源,让你能象听歌看电影一样来使用这些软件:看到想用的软件,一点,缓冲,使用,不用安装。 云端的...
AspNet程序运行助手V2.0[脱离IIS运行网站] 狼人软件
对于一些新手,或是英文水平一般的用户,可轻松学会打包。让你的vb编得软件在任何地方运行。
[软件测试与软件工程_测试报告.doc]软件工程与软件测试的联系 软件测试与软件工程_测试报告 软件测试和软件工程都是大家很熟悉的概念了,尤其对于那些从事软件测试的人来说, 软件测试已经成了大脑中挥之不去的一...
软件及软件工程中的概念: 软件工程的框架——软件工程的框架是由软件工程目标、软件工程活动和 软件工程原则三个方面的内容构成的。 软件工程的目标——生产具有正确性、可用性以及开销适宜的软件产 品。 也决定了...
服务器硬件故障应急预案 服务器故障应急预案 有关应急预案 1 服务器硬件故障应急预案 (1)核心服务器双机配置,配置好备用服务器,随时待命。 (2)发生服务器硬件故障后,相关人员应及时查找、确定故障原因,进行...
在当前国内高校计算机应用专业方面,尽管硬件课程的设置已与欧美等计算机发达国家的课程设置基本接轨,但教学知识体系和内容却不容乐观,不能适应时代的需求,与现实严重脱离,学生的学习积极性不高,学习效果差。...
vs的C++工程脱离.net
个人总结的所有快捷键,包括办公软件,当你看完了会用了,你就可以完全脱离鼠标,成为熟练使用电脑的高手
此外软件还兼容支持条码扫描枪,票据打印机,钱箱,顾客显示屏等硬件,让您的店面从此脱离繁重的手工账目,脱离管理无序及监管不严等状况,是用户实现专业服装连锁销售管理功能的好帮手。 Esale服装连锁销售管理...
一款真正脱离JRE环境,通过JNI调用自己的JAVA代码的可执行程序exe,可把jar打包进exe.
单个华为AP脱离AC升级调整软件
NTVDPU 是NT6000 DCS 系统分散处理单元的虚拟软件,该软件一方面可以使项目工程师在脱离真实DPU 的环境下进行逻辑组态和调试工作,同时也可在虚拟 DCS 仿真系统中代替真实DPU 进行工作,进行整个DCS 控制器及其网络...
另外由2d格斗游戏制作大师制作出来的游戏可以脱离程序母体单独运行,同时支持制作类似格斗之王的组队战模式的游戏,丰富的各种格斗判定设置,是国内外格斗游戏制作者最喜欢的格斗游戏制作软件。
有关服务器部署问题:脱离部署服务器怎么修改配置文件问题
中颖单片机的IDE开发软件,可以脱离硬件进行全软件模拟仿真,对了解和学习中颖单片机有用.