热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

windows和linux--商品和作品

网上经常看到有人拿windows和linux比较,如果说仅仅比较内核,纯粹从技术上比较,那么这种比较是可行的,也是很好的,这样可以促进双方的发展最终受益的是用户,但是如果比较功能就不应该了,非常的不应

网上经常看到有人拿windows和linux比较,如果说仅仅比较内核,纯粹从技术上比较,那么这种比较是可行的,也是很好的,这样可以促进双方的发展最终受益的是用户,但是如果比较功能就不应该了,非常的不应该。

      windows从某种意义上说是一种商品,是商品的话就应该有自己的卖点,这个卖点就是这个商品可炫耀的地方,当然不是唯一可炫耀的地方;而linux从 相同的意义上来讲更像是一个作品,是作品的话就应该有一个看点,注意这个看点不是用来获得利润的,而是用来欣赏的,这个看点当然也是该作品的可炫耀的地 方。用一种不太一定的话来讲,商品的作者制作这个商品的目的是为了利润,对于一般人,比如微软的员工,他们的目的是获得薪水,而作品的作者的目的一定程度 上是为了得到一种快感,不会在乎这个作品会不会有利可图,当然上述观点是一般意义上的,不能保证百分之百都正确。

既然有了上述的理解,那么拿windows和linux比较有什么意义呢?即使有人说了,linux不好看,可是linux的作者并不会认为自己输了,因 为他们不会认为这是错误,因为这不是他们追求的,既然linux已经形成了一个社区,一个庞大的社区,试想,如果这一拨人把精力放到性能上而不在乎界面如 何如何,那么必然有另一拨人将注重界面的美观而不太注重性能,比如KDE,Gnome等等,这也许就是开源的力量吧。

开源的作品很大部分都成了商品,但是商品却很多都没有达到作品的级别。开源的东西很多都是首先是一个作品,作者不图回报的作品,然后才会有人发现其商业价 值使之成为商品。如果作者一开始就图利润的话它就很难成为一件作品。在这个世界上给多少钱干多大事的观点可能是对的,但是每个时代总是不乏一些狂热的激情 人士,不要一分钱,但是为了自己的追求会不惜生命,我们伟大的祖国实际上就是这么一帮人创造的。狂热的力量总比金钱的诱惑来的更猛烈,这就是我为何认为商 品达不到作品的级别的原因。

开源的东西不会出现百事通而只会出现一事精,因为狂热的人都是把精力放到一件事情之上,而不会全盘兼顾,全盘兼顾只有一种可能,那就是有目的,或者上级逼 得紧,如果狂热志士将精力放到了一个地方那么瞬间局部的爆发力会大得惊人,因此你千万不要怀疑linux为何短时间的力量这么大,敢于和unix和 windows挑战,这并不是初生牛犊不怕虎的冲动,而是出门不带钥匙的勇气,是大炼钢铁的激情。至于商业产品,你会发现其设计非常糟糕,几乎没有什么逻 辑,因为商品注重的用户的需求,注重的是功能的实现,当然商品也要注重设计,甚至十分注重设计理念,但是这种注重不会比生命更重要,内涵的诱惑是巨大的利 润,而不是发自原始本能的本能冲动,这就是区别。所以当你研究windows的时候你会发现system32目录里面很乱,当你研究linux的时候,你 会发现不管是内核还是发行版用户应用,每一个设计的都是井井有条,这种秩序不是由机制强制形成的,而是自发形成的,为啥会自发形成,就是因为开发者都把精 力放到了自己专注的那一方面二十分不想和别的模块交互,于是设计者就设计出了最简单的接口来与别的模块通信,而这种设计恰恰是最美的,印证了一个道理,发 自肺腑的东西都是美的,简单即是美丽。产生这种效应正是由于设计者的懒惰而不是设计者的苦思冥想,苦思冥想可能能产生一个好的设计,但是往往更加真实的更 加直接的东西来的更加美丽,不用冥想直接由本能得到结果的东西更加美丽。实际上真的是这样的,我们现在不是正是从linux高度的低耦合模块化中得到不少 的实惠吗?一个好的调音师虽然精通各种音响设备,但是他肯定最精通一种,甚至一个牌子的,你让他去学习另外一种他会认为那纯粹在耽误时间,同样的,一个写 内存管理的人不会过分关注进程管理,于是需要和进程管理接口的时候,他总是本能地用最简单的方式最直接的方式解决之。在商业产品中,每个人虽然也有自己独 有的任务,但是任务之间的彼此联系会更加紧密,这种紧密体现在设计标书上,体现在惹人讨厌的用户需求上,你会被要求更加在意别人的实现。
开源的协作是自发的,毫无约束力的,商业化的产品的协作是靠制度约束的,比如会不定期甚至定期的招开会议来商榷下一步事宜以及如何协作等等。这就是区别,因此windows和linux的开发大环境不同,纯粹从功能上比较毫无意义。


推荐阅读
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
  • 解决github访问慢的问题的方法集锦
    本文总结了国内用户在访问github网站时可能遇到的加载慢的问题,并提供了解决方法,其中包括修改hosts文件来加速访问。 ... [详细]
  • 2016 linux发行版排行_灵越7590 安装 linux (manjarognome)
    RT之前做了一次灵越7590黑苹果炒作业的文章,希望能够分享给更多不想折腾的人。kawauso:教你如何给灵越7590黑苹果抄作业​zhuanlan.z ... [详细]
  • 恶意软件分析的最佳编程语言及其应用
    本文介绍了学习恶意软件分析和逆向工程领域时最适合的编程语言,并重点讨论了Python的优点。Python是一种解释型、多用途的语言,具有可读性高、可快速开发、易于学习的特点。作者分享了在本地恶意软件分析中使用Python的经验,包括快速复制恶意软件组件以更好地理解其工作。此外,作者还提到了Python的跨平台优势,使得在不同操作系统上运行代码变得更加方便。 ... [详细]
  • Windows 10系统的自动更新功能在修复系统漏洞、提升用户体验方面具有重要作用。然而,由于系统更新会占用大量系统资源,打扰当前任务环境,且更新频繁,很多人选择关闭自动更新功能。本文介绍了关闭win10自动更新的步骤,并探讨了其他更好的关闭方法。欢迎留言讨论。 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • IT方面的论坛太多了,有综合,有专业,有行业,在各个论坛里混了几年,体会颇深,以前是论坛哪里人多 ... [详细]
  • 如何用JNI技术调用Java接口以及提高Java性能的详解
    本文介绍了如何使用JNI技术调用Java接口,并详细解析了如何通过JNI技术提高Java的性能。同时还讨论了JNI调用Java的private方法、Java开发中使用JNI技术的情况以及使用Java的JNI技术调用C++时的运行效率问题。文章还介绍了JNIEnv类型的使用方法,包括创建Java对象、调用Java对象的方法、获取Java对象的属性等操作。 ... [详细]
  • 本文介绍了操作系统的定义和功能,包括操作系统的本质、用户界面以及系统调用的分类。同时还介绍了进程和线程的区别,包括进程和线程的定义和作用。 ... [详细]
  • 本文介绍了pack布局管理器在Perl/Tk中的使用方法及注意事项。通过调用pack()方法,可以控制部件在显示窗口中的位置和大小。同时,本文还提到了在使用pack布局管理器时,应注意将部件分组以便在水平和垂直方向上进行堆放。此外,还介绍了使用Frame部件或Toplevel部件来组织部件在窗口内的方法。最后,本文强调了在使用pack布局管理器时,应避免在中间切换到grid布局管理器,以免造成混乱。 ... [详细]
  • Linux下安装免费杀毒软件ClamAV及使用方法
    本文介绍了在Linux系统下安装免费杀毒软件ClamAV的方法,并提供了使用该软件更新病毒库和进行病毒扫描的指令参数。同时还提供了官方安装文档和下载地址。 ... [详细]
  • PHP引用的概念和用法详解
    本文详细介绍了PHP中引用的概念和用法。引用是指不同的变量名访问同一个变量内容,类似于Unix文件系统中的hardlink。文章从引用的定义、作用、语法和注意事项等方面进行了解释和示例。同时还介绍了对未定义变量使用引用的情况,以及在函数和new运算符中使用引用的注意事项。 ... [详细]
  • 本文介绍了解决mysql 5.1启动问题的方法,通过修改my.ini文件中的相关配置,包括innodb_data_home_dir和skip-innodb等,可以解决启动问题。同时还介绍了如何调整内存池来存储metadata信息。 ... [详细]
author-avatar
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有