商业 v. s. 自由 ——W*ndows v. s. 现代UNIX

导读

“天下没有免费的午餐。”

这句话只说对了一半。对于软件业,或者更准确一点,自由软件业,这并不一直是对的。

商业软件公司正在控制着我们——普通计算机用户甚至专业的程序员——的大脑,在我们的潜意识里面,似乎只有大公司的东西才质量好。下面是几个场景:

  • 我倾向通过收费的网课、系列视频或者文章来学习技术,而不是阅读软件自带的免费文档或者是免费外语甚至中文标准,因为前者更容易。
  • 免费的东西都是劣质的。只有收费的东西才可以保证质量高。
  • 不会有人将优质资源公开免费,除非他们有着特殊目的。
  • 大公司的软件比一群只因为兴趣爱好的人写的软件更稳定、更值得信赖。

绝大多数普通用户都会认为这几条全都是正确的,甚至一些有着几年经验的高级程序员也是。他们宁愿买JetB****家的IDE来开发,而不是使用轻量级的、免费vimnano。后者毫无疑问是大多数UNIX程序员的必备。

这一切的一切,都是因为某些公司……

一、邪教组织

百度百科这样定义邪教

邪教大多是以传播宗教教义拯救人类为幌子,散布谣言,且通常有一个自称开悟的具有超自然力量的教主,以秘密结社的组织形式控制群众,一般以不择手段地敛取钱财为主要目的.。

没问题,老比难道在大多数普通人的眼里就是“超自然”的吗?反正我印象中,媒体“少年黑客”基本上就是一个衣衫整齐、后面挂着老比美照的小孩,后面是中文或者英文版的scratch

实际上,我就是个少年黑客,现在初一,但是当然我用UNIX 😃

再看最后一句,不择手段地索取钱财,真的像极了某些公司。想一下你在W*ndows上进行开发的历史,没人相信你一分钱也没有出。那个愚蠢的Vis*al St*dio不就是整天嚷嚷着要给你“更好的服务”吗?

然而对此,人们完全是心甘情愿,尽管我没见过被邪教洗脑的分子,但我想他们估计也差不多:花了一大堆钱,等头目被抓了之后,还是不相信这是邪教。

当然,软件是值得付钱的,连自由软件领袖理查德都没有否认这一点。但是,你真的确定那个糟糕的、动不动就“该应用程序无响应”的东西值得这么多钱吗?我反正觉得不是。

W*ndows还有一个十分神奇的地方。你肯定写过hello, world程序。这样看,它好像是支持POSIX的,毕竟设计NT系统的时候这不就是其中一个目标吗?(当然有的人会跟我说那应该是ISO C

实际上呢,好像它只支持了占比很少的几个系统调用,剩下的几乎都是标准库函数(strlen那样的),就连基本的POSIX风格的open都没有……老比是怎么好意思把这样糟糕的系统卖到半万钱的,咱也不知道,毕竟他也不能算是个严谨程序员,而是个商人,写的第一个程序以来就开始想dollar的事了。

再看看自由软件世界怎么样?由于我没用过BSD,所以不好说传统UNIX是什么样子的。就拿现代的GNU/Linux,他支持全套的POSIXstreams除外),性能测试也不错(当然,裸机W*ndows也不错。注意裸机),更令人骄傲的是优秀的进程创建以及文件系统。写N*FS的那个程序员,大概是从*BM的数据库计划挖过来的,搞得倒是十分的“优雅”。

我知道有些人又要说啥了:W*ndows的安全认证等级(A1那样的玩意儿)比你们高!

这里安全认证单单是指对文件的访问权限的丰富,W*ndows能设置XXX没法访问之类的

这是无法避免的了,传统UNIX的设计就从来没想过这一点,用户被抽象成了同组拥有者以及其他(当然,root总是有权限)。但就我个人的观点来说,这就足够了,毕竟我没见过有多少W*ndows用户会创建两个用户。

再来看看软件。

二、哲学 (当然不是

W*ndows家族的软件挺多,包括I*这样的令人头疼的浏览器、各种没人碰过的游戏以及一大堆更没人碰过的附件。这些是随着系统一块安装上去的,想卸载必须手动。还有类似P*wer P***t这样的有用的高级软件,单个软件就包含了数不尽的功能,并且十分的贵。

了解UNIX的同学大概已经知道我会说什么了。没错,我要说的就是不同系统下的设计哲学。

这更是一个差距,UNIX下面的每一个软件都平均不足10 MB,有着自己独特的分工。wc就是统计文本文件的、cat就是显示文件内容的(就是这么简单)、grep就是在文件里头查找的,类似这样的软件数不胜数。利用UNIX的设计哲学之一——管道就可以很方便的统计一个文件中含Linux这个词的行数(bash不算很精通,见谅)

$ grep "Linux" foo | wc -l 

而在那个操作系统呢?你应该需要用记事本先打开那个文件,复制到另一个.doc文档里头,然后再找一找’查找’键,然后按一下。或许你还需要划到最底下看一看有多少行……

那来个更难一点的呢,看一看当前目录下所有后缀名为.txt的文件里头有多少行包含Linux

UNIX来说小菜一碟(弱弱问一句,grep有查看统计行数的功能吗)

$ find ./ -name "*.txt" | xargs grep "Linux" | wc -l 

在另一个伟大的系统上呢?

我想不需要多举例,大家就能看出来这两个系统谁设计的更好了。

还是会有人说,那个系统本来就是给程序员用的,那个系统本来就是给普通用户用的。的确,那为什么你这个程序员还在用W*呢?

三、“真幼稚”

在一个复古的群聊中。有这样一个大佬。引用我对他的评价:

此人身长约七尺,自以为风度翩翩,以“京中美男子”自称。自以为其为尔等师,以“全栈大佬”自称,实则不知汇编、不知C为何物者也。
常曰:“仅学可令吾发家之事”,因不学C。遇人问事,常为省流量,仅回“…”二字,包含深意。
吾不与其为友,另有故:其人曰:“C为垃圾”,吾对曰:“尔乃垃圾中上等者也”,因把吾踢出群聊,回看,其信息早已撤回。

他还有一个口头禅,“真幼稚”。如同高雅的文言文里写的一样,他只是为了发家才学编程。所以对于开源、自由之类的……你可以想象到他的反应。

开源幼稚吗?

我想不是的。

理查德在演讲中说了的那样。

软件好像是菜谱。最开始,你从朋友家里拿到了一份,回到家你就开始琢磨了:是放点糖还是放点辣椒呢?都可以。愿意研究的人,可以将菜变得更好吃,更符合一部分人的口味,然后传给别人。所有人都能吃上美味的饭菜。

商业软件做了什么?

软件还是菜谱。一个大厨对你说:“菜谱保密”,你就只能吃他给你做的菜。饭店的饭好吃,没错。但是几天前的315曝光的是什么?没人知道菜里头还有什么,味精鸡精算好的,头发丝也凑合。如果你想要把菜谱给别人,他们就把你扔到监狱里把你叫做贼。这是现实。

更过分的呢?

大厨把菜谱给你了,里面还塞着一个闹钟。你能照着菜谱做30遍,满了限额之后,他们就要求你付钱。不付?那菜谱就会自动销毁。

软件是值得付钱的,我再三强调,一个优秀好用的软件是值得我们高兴地为他付钱的,甚至更优秀的软件会让我们为他捐款。然而,我从没见过有值得五千块钱的软件,没有理由为一个设计落后的微内核,整个系统靠着速度毫秒级的IPC来工作的系统付上这么多钱。如果说UNIX值得5000,我觉得无可厚非,因为UNIX是这个星球上设计最好的系统。

“最好的系统”不是乱说的。拿UNIX其中一个影响力最大的实现——Linux来比较,就比较日常用户的体验。启动最慢、内存最大的firefox也只需要几秒钟时间,按一下鼠标就可以。对于W*ndows,还需要我说吗?

四、这到底是系统的原因吗

前面的所有内容都在说UNIXW*ndows。抛开金钱,这两个都可以算得上星球上优秀的操作系统。而W*ndows的裸机性能测试也十分不错。这是我必须承认的客观事实。这一章,我们要讨论的是,到底是什么使得W*ndows系统在日常生活中如此的慢。

设计

首先我要说的就是设计。

W*ndows的微内核设计我们无法反驳,那是十分优雅的。然而,它却好像并没有为内核减轻多少开销,毫秒级的IPC到处都是。它的内核太小了,就连系统调用都放在了动态库里,导致正常应用的启动要进行多次重链接。

它的窗口框架也不尽人意。回调一直是POSIX所极力避免的东西,标准中几乎没有关于回调的内容,而是异步、pollselect这样更符合人类逻辑的东西。

而它呢,窗口框架的所有消息(就是那个Msg)都靠回调来处理,正这样导致了响应速度的不尽人意。一个小小的窗口点击、移动都成为了事件。

转过来看UNIX,与它的窗口框架类似的是signal。传统信号通过signal()设置而现代的则通过sigaction(),无论接口怎么不一样,都有着“默认操作”,即SIG_DFL。所以如果让我给W*ndows提一个修改意见,我首先会说:“请加一个RegisterMsgs调用,为每一个msg都提供一个handler,并支持设置默认以及忽略操作吧!”

自作聪明的用户

你可以看到一系列’XXX 安全管家’的应用程序。在XP时代,这是必不可少的。然而,现在都……2202年了,还是有数不胜数的自作聪明的用户(甚至程序员)安装他们。我曾经在我的W*ndows 8.1以及 W*ndows 10上重装系统并且不安装任何电脑管家,结果性能提升了至少两倍。

当然,我没有说管家没有用。实际上他们是非常有用的,·无数的安全人员编写了他们,但是现代内核不再需要如此严格的保护了,所以说到底,这还是早期W*ndows太差劲的原因。

然而XXX安全极速浏览器的性质就截然不同了,从来没有人需要过这种应用,而实际上它们就是个套壳。编写这种应用的人和诈骗、邪教完全一样,将他们闭源并且加上几个ad,就变成了自己的国产浏览器。

五、自封后路

综上所述,W*ndows就是被各种daemon以及糟糕的后台程序搅黄了,而它们总是喜欢位于后台的原因,根本上就是商业原因——看看你右下角那一个个小图标,它们应该比桌面上显眼吧。

也就是说,商业的W*ndows自己告别了原来属于自己的——无穷尽的自由软件开发人员。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值