在介绍AS/400之前,先简单回顾一下AS/400的发展历史。IBM
AS/400的创始人Frank G.Soltis 博士认为“历史”对设计新型计算机系统的影响力远胜于其他因素。同样,在设计一个新型计算机系统时,开发的场所和先前的产品也有着相当大的影响力。60年代,位于美国东部(the
EastCoast)的许多计算机公司,例如Digital,Data General页以及IBM的NewYork Lab. 等,占尽地利,不仅分享了诸如MIT等名校和研究所的研究成果,而且雇佣了大批东部高校的高材生。MIT当时曾为美国国防部开发了一个名为MULTICS的项目。东部的公司在设计计算机的结构和操作系统时,大量借鉴了MULTICS的思想。
然而AS/400的发展历史却是另一番光景。AS/400的诞生地位于美国中西部明尼苏达州(Minnesota)的Rochester,当时要想从发达的东部高校中招聘毕业生到偏远的Rochester工作是相当困难的。因此,AS/400的创始人都是中西部的,他们与东部的计算机公司并没有什么密切的联系,这也使他们设计的AS/400与别的计算机相比在很多方面都显得与众不同。
在这里,我们可以比较一下IBM AS/400和大多数其他计算机系统的寻址结构(Adressing
Structure)。60年代中后期,许多计算机被设计成分时共享(time-sharing)的结构。当时time-sharing之所以如此流行,是因为它允许不同的商业用户在同一台中央主机上租用系统时间。当时,许多商业用户负担不起独立拥有一台计算机的开销,time-sharing能为他们提供大型机的资源,而昂贵的费用则由大家分担。在这种环境下,每一个用户都认为他(她)所用的计算机是专用于他(她)的任务的,通常他们并不知道系统中其他用户的情况。当初的设计并没有考虑到在用户间直接共享数据的问题。例如,在MUL
TICS中即采用了这样一种硬件寻址结构,即隔离每一个用户且不支持共享。随着计算机硬件技术的飞速发展,其价格也不断下降,许多商业用户都拥有自己的计算机,数据共享的要求更为迫切。
AS/400的单级存储结构(Single-Level Store)支持多用户共享数据和程序。在后面,我们将详细介绍这种结构。值得一提的很重要的一点是,AS/400的体系结构是一个全新的结构,一个崭新的世界,没有背上任何历史包袱。
明尼苏达州(Minnesota)的Rochester Lab.开始时并不生产计算机,而是生产一种打孔机。到了60年代中期,Rochester
Lab.有一些人预测商用小型机将会有很大的市场。但IBM的总部并不这样认为,当时IBM公司刚刚发布System/360系列。在这种背景下,Rochester
Lab.不敢告诉公司总部它正在研制一种新计算机;相反,Rochester Lab.声称它正在研制一种新型的单元记录机(Unit Record Machine)。
1969年6月,IBM公司发布了System/3。这种新机器是一个批处理机器(Batch
Machine),即每一次只能读入一个作业(Job)到机器中进行处理。IBM的System/3,System/32,System/34,System/36 是一个系列的。所有这些系统都是基于System/3的结构,尽管它们不断地有所改进,但底层还是System/3。举例而言,System/3只有16位地址线,这使得程序空间被限定为64KB.
IBM在1970年提出的System/38在设计时克服了System/3技术依赖(Technology
Dependencies)的缺点。这种思想旨在创建一种新的结构。另外,为了保护用户的投资,用户自然而然会有这样一种要求,即操作系统内核的改变(升级)不影响用户的应用程序,亦即应用程序独立于操作系统。那么,能不能做到操作系统独立于底层硬件技术呢?如果那些和底层硬件相关的操作系统功能被分离到一个“技术独立的机器界面”TIMI(Technology
Independent Machine Interface)的下方,那么操作系统剩余的部分都是与硬件无关的功能,这一部分功能就独立于硬件,使硬件的改变不影响这种功能的实施。关于TIMI的详细介绍见后面的章节。
IBM本来计划在1975年推出技术独立(Technology Independent)结构的系统来替代System/3。但System/3在1972年时实在是太成功了,以致IBM决定继续推出该系列的计算机,而暂缓推出技术独立结构的系统。在1975年,IBM推出了一个用于小型商务办公环境的低端System/3,内部称之为System/3
Model 2,但在正式发布时又更名为System/32.1977年发布的System/34则集中了System/3和 System/32的优点。在System/34上实现了一种新技术之后,IBM又将其更名为System/36
,这是在1983 年发布的,并取得了很大的成功。所有这些系统都是基于同一结构的。
在IBM决定继续推出System/3系列计算机的同时,一个新的完全独立的开发机构在Rochester成立来研制技术独立结构的计算机。该机构在1978年推出了System/38。System/38和System/3系列的计算机完全不同,它一点也没有继承System/3的设计思想。因此,System/38并非System/3的改进机型,它们是由位于Rochester的两个完全独立的开发机构开发的,这两个机构相互之间没有一点联系。
在随后的日子里,Rochester Lab.一直都保持着这两个完全独立的开发机构,直到System/36和
System/38两个开发机构合并来生产AS/400。这两个机构的合并并非易事,因为他们都对自己的结构情有独钟。System/36开发组不能理解System/38怎么要用那么大的内存才能满足小型客户的需要。他们指出,System38用了几M(兆)内存而System/36只需用几百K(千)的内存。尽管最后还是决定采用System/38的结构,但System/36开发组还是认为Rochester
Lab.不可能生产出成本低廉的机器来吸引基于SyStem/36的用户。SyStem/36开发组的预测是正确的,在AS/400上支持System/36环境所需的硬件开销是巨大的,远远超过当初的估算。IBM最终不得不另加
从1988年6月推出AS/400之后的6年中,全世界300 000个System/36的用户中只有不到三分之一的用户
转移到AS/400平台。为此,IBM不得不于1994年10月推出了Advanced 36来满足那些固执的System/36用户的需求,尽管Advanced
36采用了与AS/400同样的硬件技术。事实上,System/36对许多商业机构而言仍然是一个极佳的选择。新的Advanced 36保留了System/
另一方面,System/38开发组又看不起System/36。在他们眼中,System/38的结构是唯一能引导Rochester
Lab.走向未来的希望之星。此外,他们认为硬件的价格已在下降,即使在个人机PC中也有相当大的内存,几M(兆)内存的开销不应成为问题。Rochester
Lab.的机器将来会支持GB(gigabytes)级别的内存,因此,System/38的结构并不庞大。
幸运的是,争吵归争吵,他们还是走到了一起。他们发现了各自的优缺点,对这两种机型进行了优化组合,将各自系统中最好的特性加到了AS/400中。例如,System/36的用户界面较System/38好,而System/38的应用开发环境却优于System/36。此外,System/36采用独立智能处理器来处理I/O操作的设计,要比采用I/O通道的System/38更好。
AS/400最新的一些型号是90年代前期开发的。这些型号的AS/400同早先的AS/400相比是一个全新的结构。历史还在不断地推动这些结构的发展。最新的AS/400是采用RISC结构的。
自八十年代末起,AS/400一直是小型机服务器的先驱,凭借其庞大的用户基础、强大的应用支持,为IBM及其商业伙伴带来的丰厚利润,尽管它正面临着Unix以及NT的威胁,AS/400已经进入了第三代,IBM正在继续为它进行投资,至少从现在来看,这套系统仍保持着相当的实力,能够成为网络时代服务器的主流。实际上,对注重打包的应用、可靠性、管理能力以及全球服务与支持的企业来说,AS/400早已成为首选的系统。
第一代AS/400
AS/400前身诞生于七十年代末,当时的名字叫做S/38。S/38是个创新性的系统,在许多技术领域实现了突破,如集成的关系数据库、单级存储(single-level
storage)、虚拟存贮和面向对象的设计等。很快,一批用户喜欢上了它独特的技术,成为S/38的忠实追随者。尽管S/38对于众多的小型企业来说过于庞杂,因此一直没有形成市场,但S/36却在小企业中迅速获得了成功。S/36在许多方面与S/38正好相反:它的技术创新性与灵活性不高,但它的价值在于结构简单和使用方便。
第二代AS/400
IBM看到了将这两种系统的优点合二为一的前景,在1988年推出了AS/400的第二代,融合了S/38的基本技术与S/36的用户界面。S/38的用户们看到在菜单的背后仍然是他们喜爱的技术,于是很快地迁移到新的机器上来。而S/36的用户则认为系统变得复杂了,因此不太愿意改变。虽然如此,在以后的八年中,仍有不少S/36的用户进行了迁移。AS/400的重要之处在于它为中小型企业用户敞开了大门。它在与Wang
Laboratories、HP的HP3000、DEC的VAX/VMS以及小型主机系统的激烈竞争中占据了上风。应用开发商们争先恐后地为这个新系统进行开发,产生了数以千计使用简便和用途广泛的应用软件,这些软件中的大多数现在仍存在于市场中。
九十年代初期的市场变化使AS/400处于防守状态。Unix已成为一个流行的商用计算机系统,造成了HP9000、Sun的SPARCserver以及IBM自已的RS/6000都来与AS/400争夺市场的态势。Unix和走向开放系统的趋势影响了AS/400的销售,造成了1992年与1993年收入的锐减。许多业界权威宣布
AS/400即将寿终正寝,而另一些看到了S/38架构的力量与灵活性的人士则关心着IBM公司的态度,注视着IBM的管理层是否在RS/6000中看到了更大的潜力。
第三代AS/400
IBM选择了向AS/400大量投资,其结果是重新点燃了这个系统的竞争力之火。借助新的打包、将软件重新定位于多样化环境中的客户机/服务器模式、服务器系统以及RISC处理器,AS/400经历的不止是一个整容手术,而是进入了它的第三代。最为重要的是,IBM在原有体系结构的基础上进行了提高与改进,保护了客户与企业合作伙伴在应用软件上的投资,这就是AS/400的独到之处。其结果是AS/400在1994年与1995年创造了创记录的增长速度。现在,在全球范围内,有超过40万套的AS/400系统安装于15万多家企业中,而且每年20%的销售对象是新用户。IBM公司在AS/400上的收入已占公司总利润的15%,而且这个数字中已经刨除了在硬件、软件、维护和服务方面的利润。
进入第三代的AS/400面临着新的挑战,其宠大的用户基础意味着IBM及其用户都已下了巨大的赌注, 尽管处理器技术保持着其性能每18个月翻一番的速度,但开发这些技术的成本却以指数级的速度飞 升;尽管Unix在普通用户中已成为流行的系统架构,但许多企业用户也注意到了Unix有着120种不同 的方言或变种,并且在Unix系统与客户机/服务器计算方面发现了更大的总体开支。AS/400最大的威胁来自携带NT进入服务器操作系统行业的Microsoft,因为NT这种基于商品的服务器操作系统有着巨大的市场号召力与广泛的软件支持。
第三代AS/400面临新挑战。AS/400的的确确面临着新的挑战。与许多基于Unix的竞争不同,IBM不能仅仅将重点转移至基于NT的系统。AS/400必须找到一个远离NT竞争的避风港,或全面与NT展开竞争, 或找到一个与Microsoft合作的商业模式。AS/400的未来将由IBM在以下四方面的举动所决定,即技术、 软件商的支持、策略和商业模式。
在IBM正式发布AS/400之前,它的代号被称为“Silverlake”。IBM公司在开始研制AS/400的下一代系统时,为之取了一个名字为“Superior”的代号。许多人认为在正式公布这一代新系统时,不会再叫AS/400了。在计算机业界有这么一种看法,任何一种计算机系统都只有6年左右的生命期,从1950年至今,只有极个别例外,包括AS/400。这种看法的依据是,计算技术的发展日新月异,一个历经6年的系统将不可能再合时宜。这对那些依赖于硬件技术的系统也许是正确的。
到了1993年,业界有许多专家预言IBM的AS/400将消亡,取而代之的将是AS/
AS/400这一名字的由来也颇具戏剧性。早在1988年,IBM本可将AS/400命名为System/38,因为那时的AS/400只不过是在System/38的基础上增加了许多新功能,完全可以视其为System/38的升级版本。
但IBM其实已厌倦使用“System/3x”的名称,他们要想创出一点新意。恰好当时IBM内部正在制定一 套新的产品命名规则。IBM有一个项目叫作SAA(SystemApplication
Architecture),SAA旨在建立一种通用的应用软件,能运行于IBM所有主流系统上。相似的系统名能更好地体现这种通用性,因此IBM的几种主流系统都带有“System”这一单词,如Enterprise
System/9000(ES/9000),Personal System/2(PS)等,所不同的只是第一个单词。对AS/400第一个单词的选择Rochester
Lab.还引发了一场争论,有人建议用“Advanced”,有人则要用“Application”。最后争论的结果选择了后者。但随后在介绍AS/400的先进系列时,IBM又缓用了“Advanced”。
那么在选择数字时为什么选择了“400”呢?由于AS/400是源于System/36和System/38的,Rochester
Lab.首先想到的是“37”和“39”,但马上决定用“40”。“Application System/
目前,世界上共有超过45万台的AS/400正在运转,其中大多数在美国以外。AS/400已成为最流行的国际商用机器。采用最新的AS/400先进系列,既便是那些要求最苛刻的软件也能完美地运行。比如一向只在Unix下才有的SAP记帐系统,就可以在AS/400上顺利工作。
AS/400继承了IBM的一贯宗旨:制造通用型商用机器。这一传统甚至可以追溯到SYSTEM
38和System 36.与大型主机系统不同的是:AS/400更倾向于提供一体化的服务。它自已就带有一套业务软件,包括管理、电子邮件和通信等。AS/400的核心是OS/400操作系统。最新版本的OS/400是64位系统,而以前则是48位系统,而令IBM引以自豪的是:AS/400上所有用户的应用程序可以不经任何修改直接升级到高版本。例如,AS/400能把以前的48位应用程序不经重新编译正确转换为64
位程序。这一工作是由AS/400内部运行的应用程序实时解释机制完成的。
OS/400最新升级版本是V5R1(Version
5,Release 1)。它包括一个内置的DB2
for AS/400数据库系统。同System 370中相应部份一样,DB2 for AS/400也是一个类SQL数据库,它可以用做典型的DBMS;能存放RPG程序源代码或把一个文件系统定义为集成文件系统(IFS)的一部分。DB2
for AS/400和IFS非常灵活好用,可以仿真包括PC在内的几乎所有平台上的文件系统。
在硬件方面,AS/400使用了两种基本体系结构:旧的CISC(复杂指令集芯片)IMPI(内部微程序接口)和新的RISC(精简指令集芯片)PowerPC
AS。正是PowerPC使AS/400达到了64位的处理能力。
AS/400和OS/400在技术方面最引人瞩目的是:AS/400和OS/400正在向开放结构转变。以往5250终端通过双同轴电缆与AS/400互联,或用令牌环网与AS/400连接。但这样的话,你不得不使用IBM的系统级主机网络协议——SNA(系统网络结构)和LU6.2
APPC(高级程序对程序通信接口)。值得庆幸的是,IBM已大大简化了AS/400与PC局域网的连接。使用IBM的多协议传输网络(MPTN)就能把AS/400同那些支持常见PC协议如TCP/IP和IPX的令牌环网或以太网连接起来。
AS/400的技术诞生十几年来,用户的需求已经完全改变,AS/400根据市场需求快速应变的能力也受到了巨大的考验。新用户购买AS/400的原因主要是考虑到其应用套件的广度与深度,而现今应用方面的领先地位已逐渐向Unix和NT转移,IBM必须改变这种趋势,否则它的应用套件将不能成为吸引新用户的原因。