由Linux到Xbox-游戏主机与操作系统

文:杰特

OS。对于电脑用户来说,这是一个必不可少而且极之挑剔的部份,因为如果操作系统不好或只不过是不够好的话那对于用户的工作、游戏以至其他地方的应用都会事倍功半。但对于电视游戏玩家来说这却是他们最不在意的地方,笔者敢保证八成以上的玩家不知道家中的主机是使用那一个OS的,但实际上OS的重要性绝比一般所知的重要得多。

事前教育:什么是OS?

或许笔者是长气了些,但在开始讨论时仍想向一些读友们解释一下OS是用来干什么的。

操作系统Operation System,简称OS。可说是任何以电脑所必需的部份,简单来说就是电脑的管家,用户操作各种电脑软件,但如没有一个“管家”去将各种软件作出最有效的编排万一打起架来用户岂不是害惨了?所以OS就充当起管家的职责,“它”的职责可重了:要责起管理各式各样程式让它们正常正作的任务,也要担任程式和电脑硬件之间的沟通桥梁,亦是用户和各软硬件的中介人。假如某一个软件在运作中途失灵(即当机)的话更要将这个已经没有的用程式关掉免得使整个系统都受伤害。你说OS有多重要?至于家用游戏的OS则负起游戏软件和硬件之间沟通桥梁,使开发者不必直接去控制硬件作出各种动作而可简单的交由OS去控制,而OS制作公司更会为OS加上强化控制硬件的程式码以应付游游戏所需,最有名的自然是Direct X了。

至于家用电脑的OS最为人所熟知的自然是Microsoft的Windows系列,还有以Unix为基础的Linux系列及也是UNIX派的FreeBSD,IBM以前推出过的OS/2等等(未听过OS/2 ?没关系,反正IBM现在也希望你未听过,就像任天堂努力地忘记自己曾出过Virtua Boy一样),而在麦金塔(Macintosh)电脑则是Mac OS系列。到了大型电脑除了又是Windows NT之外最老字号的当然是Unix家族。

而今次的主角之一正正是上面提到的两大流派:Windows家族和Linux家族在家用游戏主机上的新兄弟:Linux for PS2和Microsoft的Windows CE&2000。 (由于任天堂的OS是独家制作,没有足够资料所以这似暂且不谈。)

PS2与Linux:为什么SCE要用Linux?
最初当SCE公布PS2将会采用Linux作为主机的OS时,笔者身边的一位Linux支持者朋友不禁高呼:『Open Source又一次得到胜利! (注1)』,但既不是Windows派也不是Linux派的笔者(笔者是MAC人)而言却没有太大的惊喜,即时的反应是想:为什么SCE要选Linux作为嵌入式OS? (注2)

关于这个问题笔者曾经求教编辑福田兄,他的意见是SCE希望PS2能够成为家庭娱乐的中端机,以一部PS2控制家中大大小小的影音产品,并连接网路扩大其娱乐性。对于因为这种原因而采用Linux笔者实在不以为然,因为如果是为了这种原因就更不应该以Linux作为OS!首先就是Linux究竟好在那里?就是1:由于是Open Source,所以一众软件开发者可以轻易找出系统或软件的问题提出甚至自行解决。2:是自由度大,任何会写程式的人都可以因应自己的需求而加入各种程式甚至改变程式(但要将更改后的原始码交回Linux组织),3:这是免费的!

但除了免费这点之外笔者找不到Linux对PS2有任何好处。首先是连接网路这一点其实Linux不见得就比MS的Windows或者Apple的MAC OS更方便,而只要加入TCP/IP理论上任何OS都可以连上网路,不见得一定要使用Linux不可,而和其他家用影音产品连接更不必用上Linux也可以可做到,甚至可能做得更好,因为Linux本身最初由Linus Torvalds开发时只不过是想用X86跑UNIX而已,而不是用来将家中大大小小电器连成一系统。与其采用外边的OS还不如针对家电的特性设计一OS还来得有效和方便。

至于Linux的长处到了PS2却一点用都没有,首先是Open Scoures方便软件公司在OS有问题时可以维修,但“理论”上为PS2度身订做的PS2版Linux那会有可能因为硬件不兼容而有问题?甚至不应该有任何问题(如果只是单单用来玩游戏、硬件固定的封闭系统都有毛病SCE的开发部应集体拉出毙了)!至于各游戏厂商理论上可以利用Open Scoures的优点加入对他们有利的开发模组,但这样一搞就变成每家公司都有自己一套的开发模组(游戏公司才不会免费的将这些心血公开哩!),不但互不相通并且对新公司而言不能使用现成的开发模组而必需自行开发,成本当然高了。不过最惨的还是Linux本来就不是一个容易开发游戏的OS,开发公司面对着这个本来就不是为了玩游戏而开发的系统,要将之变成适合开发游戏的系统,光是想像也觉得累吧?所以不但是三上真司小岛秀夫等开发者不断抱怨,就连强如SEGA也无法像当年在DC般一个月出两三只游戏,至于游戏水准降低更是不在话下,而由于老游戏本身已经有一套开发系统,游戏公司为了减省成本而采用旧系统、推出游戏的续集而不是新游戏这点就可以理解了。

说到底笔者以为SCE会使用Linux只有两个原因:第一点自然是免费,只是将一个现成的系统修改为适合PS2的设计“理论”上当然比重新写一个成本较轻,但这种不愿负担OS开发成本的结果却是将开发成本变相加到游戏公司头上,简直是搬石头打自己的脚。而第二点肯定是斗气,看到MS加入战场而故意采用在电脑市场对MS威胁日大的Linux打对台,但在商场斗气是没有好处的,只是为了在OS上和MS一拼而采用了一个本身不宜作为游戏主机平台的OS更是不智的决定。除了这笔者也真想不到还有其他理由要选用Linux作为PS2的OS的理由,特别是像出井伸之和久多良木健这种人不管怎样看都不像是会支持开放原始码运动的传统大企业家,他们会为了这种伟大的理想而采用Linux吗?别傻了!

MS和Windows:大企业的统合策略成功范例
比起Linux,Windows作为家用主机的OS实在有很强的优势:首先是不论是DC的Win CE或者是XBox的Win 2000,他们都是由MS为了主机度身订做的系统,因此在电脑上最为人所垢病的“篮画面”问题理论是不可能发生于家用主机上的,而MS长年经营Windows的经验以至庞大的开发组,要建一套完整的开发系统简单毫无难度,更何况早在Win 95推出时因为要将Win打入家用游戏市场而制造了近年MS最成功的程式:DirectX!全靠DirectX使游戏公司轻易的使用硬件各种特效来设计游戏,这套优点不但成功搬到DC上,也成功地在XBox开花结果。

怎样成功?先看DC,对于SEGA这种等级的大公司自然不必靠MS的开发系统而自行设计,但小公司却显然受惠于完整而支援充足的Win CE,使他们能够轻松的作游戏,并且在适当时候将游戏移殖到电脑版上,反之也可以轻易的将电脑版游戏往家用主机上推,这种一鸡多吃的做法深受中小型厂商的欢迎,尤其是现时DC正正是靠一些由电脑移殖过来的美少女游戏而支持下来,一部宣布停产近两年的主机现在仍有游戏推出简直是神绩,这种神绩为何会出现?正是因为同样采用Win,所以小厂商只要将一些儿童不宜的元素删掉(现更有游戏公司宣布推出十八禁游戏,连修改都省了)就可以在DC上再赚一次钱,就算卖得不多但因为是旧游戏移殖而成本低,一样有钱赚。到了XBox由于开发公司能够借完整的开发环境旳方便作出更好的游戏,所以高品质的游戏不断出现,如《铁骑》那种可以和CG匹敌的画面水准又或者《Dead or Alive3》般追贴《 VF4》的惊人画面,而且开发公司因为DirectX之助而不需要花时间和硬件搏斗而可以将资源放到游戏上,成本降低那卖得少都会有钱赚,甚至可轻易将XBox游戏移殖到电脑上又赚一次钱,一鸡多吃又一次发挥威力。 (至于Xbox卖得不好是另一课题,有机会再谈)

而这些优点也只有像MS这种有着庞大开发人材和资源的公司才作得出来,因为要作出一个完整的游戏开发环境以及完善的支援不可能由以Hacker组成的Linux组织可以做到的,但大公司就是有这种势,只要B.Gates一声令下数百位顶尖程式开发者立即要为一部家用主机制造一个完美的游戏主机OS和开发系统,而钱多得花不完的B.Gates也不在乎以成本价甚至低于成本提供他们的心血给游戏开发公司(反正游戏好卖就收得回),这种优秀的环境之下各大小公司也较愿意为Xbox作游戏,即使卖得不多也没关系,始终没多少开发者喜欢自讨苦吃地花一堆时间和主机的硬件搏斗而不是在作更好的游戏(但游戏公司为了赚钱自然不会同意这种想法)。而完整的技术支援更是游戏开发者的福音,所以虽然主机卖得少仍然有不少公司愿意为XBox作游戏:这正是大公司如MS才有的优势。

结语:Linux非仙丹,大企业不倒
自从Linux出现之后很多反MS的人都将Linux视为打倒MS魔鬼帝国的最强武器,事实上Linux的确以其开放架构打进原以为被MS稳稳拿在手中的家用以至大型电脑市场,而开放原始玛运动更是一发不可收拾,仿佛像MS这种大公司早晚会被这波运动推倒而消失。

但从游戏主机市场来看却证明了大公司因为资源充足以及“独裁式”的决策下因而能在一些嵌入式OS市场中表现出极佳的实力、效率和统一性,而针对一般人的亲和力更非以Hacker主导的开放原始码运动可比,这也是大公司才有的强大优势。

多种多样的选择才是自由社会的优点,而不是Win或者Linux独霸的时代。

注1:开放原始码Open Source:原始码是软件运作时的程式码,即软件公司将程式的原始码随软件发布而公开,好处是如果用户会编写程式的话万一程式有问题可以自行参考原始码找出毛病向开发者提供,甚至自行修订,而这类软件差不多都是免费的,代表自然是Linux,还有Mozilla。

注2:嵌入式OS:即一些封闭的硬件操作系统,由于这些硬件功能和数量是固定的,所以电脑OS上很多无关的功能都会删掉以减轻负担和更稳定,例子如手提电话的OS以至PS2的OS。