转自:http://blog.csdn.net/littlehedgehog/archive/2010/10/13/5939461.aspx
我看UNIX与Windows的本质区别
文化,我首先想到的是文化。Unix和Windows从诞生之初的文化差异本质上划分了两者的界限。直观看来,一个装逼文化,一个傻逼文化。
Unix诞生在贝尔实验室的MULTICS项目之后。据说当时这个项目设计得十分复杂,功能设计也几乎是上天入地无所不能。虽说当时贝尔实验室是很牛,可以牛到不用装逼也能露逼一下的地步。但历史告诉我们这种项目最后绝对会死得很惨。当然,项目最终结果还是没有违背历史规律。当时一位MULTICS参与者Ken Thompson事后痛定思痛,准备重新自己开发一个多任务操作系统,摒弃了MULTICS过于复杂的系统设计,力求新系统的简洁紧凑。传闻时值Ken Thompson老婆带上孩子回娘家过日子去了,一时间Ken Thompson晚上无以为乐,只好天天以堆码为业。不到一个月,Ken Thompson用汇编把这套操作系统编写出来了,这就是后来流芳百世的UNIX。当然,当时的Ken Thompson根本没有意会到他这个业余时间的作品会改变整个计算机发展史。因此这个操作系统设计用户群只针对他预想的计算机科学家、黑客,再不济怎么也得算上个计算机科学技术本科生。Unix只面对政府、研究机构、大学等专业性很强的机构,简洁、高效、安全是Unix的文化哲学。同时结合到当时的硬件条件限制,也不难理解UNIX诞生之初就根深蒂固的文化:
1、 计算机庞大的占地面积、高额的购买维护费用使得普通用户根本无力支撑起一台计算机的各种资源消耗,当时更多的是计算机专家在通过终端在控制整个计算机运作逻辑。没有GUI、没有多媒体,字符界面,这对于这批靠计算机完成科学任务的黑客来说已经完全够用了。
2、 同时遵循简洁统一的输入输出接口,相比于GUI的事件驱动模型来说,更适合使用脚本将各种程序粘合起来,完成复杂多样的计算任务。
有人说起过UNIX正巧在当年GUI史前诞生,时运不济,所以只出了个字符怪胎,要是再踌躇几年,等到GUI日臻成熟,那诞生出的UNIX恐怕就是如今Windows的翻版了。对此我还是不太认可,UNIX的存在是计算机荒洪时代遗留的文化,即使现在丰富多彩的GUI也照样没有改变UNIX的基础设计恐怕就是一个极好的证据。目前大多数的服务器依然保持着当年UNIX诞生之初的风貌,依然CLI、依然Shell,因为我们需要把更多的资源让给使用服务器的客户,人类对计算机性能的榨取永远是贪婪的。这让我想起了几年前Windows渐入佳境PC,游戏刚大行其道,桌面游戏编写还不是那么方便时候,有人预言等几年之后,按照摩尔定律,编写星际争霸之类的游戏便不需要多牛逼的算法,甚至能用写脚本语言都能完成。这几年算是大致差不多算过来了吧,星际是有牛人用JavaScript完成了,不过现时最牛逼的游戏(如魔兽世界)还是会用很牛逼的算法,还是需要使用C/C++,还是需要精通图形学,还是需要熟悉图形硬件。所以不管硬件如何发展,UNIX文化中的简洁高效这些准则还是依然存在,因为我们会把最佳的性能留给我们服务器的客户,然后可以把敲打字符,玩弄指法的时间留给自己,在老板面前装逼一下。
Windows(以及其前任DOS)诞生在公司,公司不像学院,不会像UNIX一样如果能装逼就尽量装逼一下,公司直接面对客户,产品唯一使命就是取悦用户,只能把用户伺候好了,公司才能维系发展。所以Windows诞生之初就一直肩负比尔“让每一个家庭都有一台电脑”的使命,不装逼,不玩酷,一切功能照顾用户,就是用户是傻逼你也得当亲爹一样伺候。故而Windows一直就假定使用它的用户你就是一个傻逼,哪怕是删除文件这个小问题上,Windows也会想小娘们儿一样谨谨慎慎战战兢兢地一再向人确认"确实要删除****吗?""确实要删除只读文件****吗?"。当然,最终能够让大妈大叔阿公阿婆阿猫阿狗都能使用上计算机的Windows绝对占领了终端用户桌面,比尔也因此一夜暴富,摇身一变成为世界首富&慈善家。不得不承认,如果没有Windows,“让每一个家庭都有一台电脑”的崇高理想恐怕又得推迟几年才能够得以实现了。自然,微软技术是肯定不差的,而不是像一些Linux小菜鸟口中所言"微软技术很烂",相反微软技术是很牛的,牛到曾经豪言可以立马灭掉Google,试看如今还有谁可以发出这样傻逼的豪言。但是微软牛,不代表Windows就可以干过MULTICS,上天入地翻江倒海无所不能。Windows 在安全性、性能以及开源项目上与UNIX相比确实还是有一定差距,但这并不妨碍windows成为桌面第一大操作系统。
UNIX的黑客们,眼见着曾经引以为豪的计算机技术壁垒瞬间被Windows GUI冲击到荡然无存了,心中肯定是有落差的。不过这段技术演变技术普及已经成为了历史发展趋势。一个少数人才能驾驭的技术,哪怕就是敲一个ls这样简单的命令,你也可以把它吹破牛皮,扯虎皮拉大旗捧为艺术珍品,搞得善男甚广善女甚众。一旦技术被迫普及后,曾经视作的艺术瞬间就被廉价的工业化大生产所替代,现在满大街的廉价代码工就是计算机程序设计工业化后的结果。前段时间众人大骂Java程序员把自己的价位又拉低了。殊不知,拉低自己价位的非Java也,乃工业化大生产趋势。今不出Java,明儿准会出来个Bava,Cava,照样把你收拾成码农。时至如今,UNIX黑客们还在装逼,用CLI命令行跑出花花绿绿的文字,时不时感叹下曾经的软件英雄时代一去不复返,时不时像祥林嫂一般唠叨"当年哥可是写汇编的,没想到如今沦落到如此地步,人心不古,世风日下啊~",时不时还顾影自怜,想装逼下,可惜时光不再。
“妈逼的给老子回去写代码!这个月还想不想领工资了!?“
结语:
不管是UNIX的装逼文化,还是Windows的傻逼文化,最终在计算机产业工业化的历史滚滚长流中归于平庸,归于廉价。曾经的那批牛逼的、不牛逼的、风骚的、不风骚的UNIX文化精英们,如今早已是廉颇老矣,尚可喝粥。曾经被意淫为“计算机科学与艺术”如今也早已沦落为“软件码工”。软件英雄时代早已不再,编码也成为三百六十行中的一行,一种用以谋生的手段,一种混饭吃的活路。关键问题早已不在程序,不在编码:
“编程只是一个工具,关键在于你拿这个工具来实现别人的事业,还是自己的事业。”
分享到:
相关推荐
标题 "dos2unix for windows" 指的是一款在Windows操作系统上使用的工具,它能够帮助用户将原本在Windows环境下创建的文件格式转换成Linux或Unix系统兼容的格式。这个过程主要是处理文件中的换行符差异,因为Windows...
标题“Windows下的Unix”指的是在Windows操作系统中运行Unix或类Unix环境的一种技术,这通常涉及到使用像Cygwin这样的工具。Cygwin是一个开放源代码的软件开发环境,它为Windows提供了一个兼容层,允许用户在Windows...
### UNIX与Windows文本文件换行符差异详析 在探讨UNIX与Windows文本文件换行符差异之前,我们首先需要理解换行符的基本概念及其在不同操作系统中的实现方式。换行符,简而言之,是在文本文件中用于表示新行开始的...
4、强列注明该软件非LINUX/UNIX版本,是纯WINDOWS(XP ,98,VISTA,WIN7,win8 下均可使用) 5、如果内置到其它程序,可能通过批处理调用,因为其支持DOS命令运行调用。具体看如下描述 功能:DOS=>UNIX UNIX=>DOS ...
在Windows中使用Unix工具,可以为开发者提供一个与Unix/Linux环境更接近的工作环境,尤其对于跨平台开发和调试非常有用。这些工具通常以命令行形式存在,可以在Windows的CMD或PowerShell中运行,增加了Windows系统的...
### Linux、Unix与Windows系统的特点和区别 #### Linux的特点与优势 **自由度与源代码获取** - **源代码开放**:Linux作为一个开源项目,它的核心价值在于任何人都能够免费访问其源代码。这一特性鼓励了全球范围...
win32 port of Linux useful utility dos2unix. very useful to convert shell script or makefile with CR LF error.
这里主要关注的是Windows和UNIX/Linux系统之间的文件格式转换。这两种系统对文本文件的行结束符处理方式不同,Windows使用CRLF(回车换行)作为行结束符,而UNIX/Linux则只使用LF(换行)作为行结束符。这在跨平台...
unix2dos 操作环境:Microsoft桌面操作系统/dos下操作 使用方法:拖放要转换的文本文件至输入窗口中,选择要转换的方式...unix文本文件与dos文本文件相互转换 1、unix文本转DOS文本文件 2、dos文本转UNIX文本文件
Unix与Windows之间的文件和资源共享综合实验
Sybase数据库在UNIX、WINDOWS上的实施与管理
【标题】"000-731 DB2 9 DBA for Linux UNIX and Windows" 涉及的是IBM的一款数据库管理系统DB2的特定版本,针对Linux、UNIX和Windows平台的数据库管理员(DBA)认证考试。这个考试是IBM认证体系中的一个重要部分,...
标题中的“通过 Microsoft Services for UNIX 将 UNIX 应用程序迁移到 Windows”指的是将原本运行在 UNIX 操作系统上的应用程序转移到微软的 Windows Server 平台上,利用 Microsoft Services for UNIX (SFU) 这个...
《VC编程-UNIX与Windows移植》是一份详细指导文档,主要关注如何将UNIX应用程序的源代码转换为能在Microsoft Windows操作系统上编译和运行的代码。文档由一系列专业人员编写,适用于那些希望在不同操作系统间迁移...
资源名称:Sybase数据库在UNIX、Windows上的实施和管理内容简介:《Sybase数据库在UNIX、Windows上的实施和管理》内容简介:在15NIX平台,Oracle、Sybase、DB2是绝对主流的三大数据库系统。其中,Oracle具有极高的...
【标题】:Linux、Unix与Windows系统的特点和区别 【描述】:本文件详细阐述了Linux、Unix与Windows操作系统的特点和差异,强调了Linux作为开源软件的优势,以及Unix的成熟性和可扩展性。 【标签】:考试 【知识...
此软件包中还包含一个完整的称为 Interix 的 UNIX 系统环境,此系统环境在 Windows 上安装和运行,并且与 Windows 子系统并存。 此环境带有数百个 UNIX 实用程序(如 ksh、csh、awk 和 telnet)和一个用于开发 UNIX ...
These windows exe files provides the same functions as usual Unix command, we can use powerful Unix command (very useful for text hanlding) in Windows now.
### Unix和Windows XP之间使用FTP互传文件 在IT领域中,文件传输协议(File Transfer Protocol,简称FTP)是一种标准网络协议,用于在计算机网络之间传输文件。本文将详细介绍如何在Unix系统和Windows XP系统之间...
"LINUX_、Unix和windows系统特点和区别" Linux、Unix和Windows系统是当前三大操作系统平台,各有其特点和区别。本文将从Linux、Unix和Windows系统的历史发展、技术特点、应用场景、安全性等方面进行比较和分析。 ...