AS/400教程完整版第一章AS/400系统概况1.1 AS/400发展历史1.1.1 AS/400发展历史Figure 1-1. AS/400的发展历史为了深入了解一个系统,必须熟悉它发展的历史和背景。
多数的计算机系统是从原有的系统基础上发展起来的。
AS/400的发展历史:◇ 1969年6月发布System/3(Batch machine)◇ 1975年1月发布System/32 (用于小型商务办公环境)◇ 1977年4月发布System/34◇ 1978年10月发布System/38(第一代AS/400,商业上失败,技术上成功)◇ 1983年5月发布System/36(商业上非常成功)◇ 1988年6月发布AS/400 B型号(Application System/400,第二代AS/400)◇ 1994年5月发布AS/400先进系列/服务器(Advanced System/400,第三代AS/400)◇ 1995年6月发布AS/400 Power PC 先进系列/服务器◇ 1997年8月发布AS/400e系列◇ 1999年2月发布AS/400 e 服务器170、7XX◇ 1999年7月发布AS/400e Domino 专用服务器(莲花宝箱)◇ 2000年10月发布iSeries 400,包括270、820、830、840及IBM莲花宝箱(DSD)1.2 iSeries 400的特点1.2.1 iSeries 400的特点Figure 1-2. iSeries400iSeries 400通过紧密集成硬件、软件、中间件和操作系统提供能够满足不同业务需求的高性能、可靠和易于使用特性。
从e系列开始,在电子商务大舞台上开始扮演更为重要的角色。
它可以提供扩展业务确保电子商务优势所需的技术和工具。
它的突出特点有:● 卓越的性能,不断获得各种荣誉和认可,全面实现64位处理,先进的体系结构,最领先的SOI芯片技术;● 卓越的可靠性和可用性,系统可提供99.97%的可用性,使iSeries成为商业关键事务处理的首选服务器平台;● 高度集成的系统环境,使用户不需要太多的系统管理员就能保证其应用平稳地运行;● 严密的安全防范系统,荣获美国联邦政府定义的商业计算机最高安全性级别C2级认证,堪称世界上"最安全"的计算机系统。
从来没有发现过病毒。
● 开放标准兼容性,使用户把运行在不同平台上的业务系统和数据平滑地连接在一起;● 简单易用,使用户(尤其是新用户)很快就能掌握它的系统管理和应用程序开发。
● 允许在一台服务器上安装Linux、Java、Windows2000和Domino等多种应用。
● 在系统中可以配备16台PC服务器Netfinity,可以运行多种不同的操作系统,并公享主机系统的资源。
● 是唯一一种能直接(固有)支持多种不同文件结构,如PC文件、Unix文件、Netware文件、Domino文件、ASCII文件、EDBCID文件的系统。
1.3 AS/400先进的体系结构1.3.1 TIMI结构Figure 1-3. AS/400的先进体系结构面向处理机的体系结构面向处理机的体系结构Figure 1-5. 面向处理机的体系结构面向处理器的体系结构(Processor-Centric Architecture)如上图所示,程序员可以直接地访问硬件界面来编写应用程序。
比如HP的PA-RISC和Digital的Alpha结构。
这种体系结构的缺点是一旦硬件有所修改,几乎所有的应用程序都必须重写。
面向API的体系结构面向API的体系结构Figure 1-6. 面向API的体系结构由于在面向处理机的体系结构中应用程序过分地依赖硬件,而硬件技术的发展非常之快,就使应用程序的编写相当的复杂,需要随硬件的升级不断地改写。
因此,许多软硬件开发商和标准化组织联合起来创建了面向API(Application Programming Interface)的结构。
该结构(如上图所示)定义了一个通信界面,所有的应用程序都可以通过(但不是必须)这个界面访问操作系统提供的各种服务。
这样程序员在编写应用程序时就可以避开直接访问特定的硬件。
操作系统的功能简单而言就是管理系统的资源并提供编写应用程序的基本环境。
这些基本的操作系统的功能可以通过API提供给程序员。
一个API可以通过对操作系统的调用来执行某一项功能。
如应用程序可以通过调用API来要求操作系统执行一个I/O操作,磁盘读操作。
显然,应用程序不需要了解I/O设备内部是如何工作的,只要应用程序是通过API来完成I/O操作的,就可以保证应用程序独立于底层的硬件结构。
如果不同的计算机生产商能够提供相同的API集,那么任何一个使用这些API集来编写的应用程序便可以很方便地从一种机器移植到另一种机器上。
一个比较著名的API集是POSIX(a portable operating system interface based on Unix),这是一个UNIX风格的操作系统界面。
由于API还没有完全标准化,且不完整,在许多情况下应用程序需绕过API界面直接访问系统硬件界面。
一旦出现这种情况,则应用程序就不再是与底层的硬件与软件无关的了。
高级机器的体系结构:如果在定义API集时不仅仅是针对某些特定的应用程序,而是为所有的应用程序定义一个通用的API界面,并且保持这个界面的充分可扩展性,这样则可以真正地实现应用程序对于硬件的独立。
这就是高级机器的体系结构(High-Level Machine Architecture) ,AS/400就是采用这种先进应用体系结构,在系统中为应用程序定义了完整的API集合,这个集可以不断的扩充,并且不允许应用程序绕过这个API界面去访问硬件界面,将这个API集称为TIMI(Technology-Independent Machine Interface),或简称为MI。
在八十年代初,AS/400的研制者,设计师们就预见到计算机技术的发展将会一日千里,用户对计算机需求也将永无止境,因此设计出来的计算机不是功能应如何齐全,实际上也不可能设计这样一个可永远满足用户需求的计算机,而是应设计一个无限灵活的计算机,它可以随时跟上计算机前沿的发展,容易接纳计算机领域的新技术,同时又不会丢掉老用户已有的投资,使升级后的计算机系统真正做到百分之百地兼容在旧系统上已开发的应用程序。
这样的计算机才会经久不衰,具有生命力、竞争力。
什么样的计算机才能达到这个要求呢,那就是满足这种要求的计算机,应该有一种高级的接口,这种接口既独立于硬件,又独立于软件,是一个逻辑上的(而不是物理上的)系统接口。
任何新技术的添加,只是这种接口的延伸和接口内部实现的改变,而不会对使用这种接口的程序产生什么影响,这就是AS/400体系结构的设计初衷。
TIMI技术就是这个高级接口的具体实现。
从上图可以看出TIMI层(以下简称MI层)是一个真正的独立层,它将OS/400,应用程序与MI层下方的硬件以及与硬件有关的软件(LIC层)完全隔离开来。
底层硬件技术的更新完全被MI层下方的软件所吸收,不会对MI层上方软件产生影响,MI层上方软件可以不加任何改变,就可受益于MI层下方更新的硬件新技术。
MI层面实际上是为AS/400中所有应用程序和OS/400系统软件的接口作了一种形式化的定义,提供了一个完整的API集(APIs),所谓"完整"体现在任何一个MI层上方的应用程序或系统程序都不可能绕过这个APIs直接去访问MI层下方的软件和硬件。
另外这个APIs是可以扩充的,可随时加入一些标准化组织(例如POSIX)指定的API,并且这种扩充是没有限制的。
例如,在OS/400 V3R1中加入了支持Single UNIX Specification API的功能,这样一些UNIX的应用程序就可以被移植到AS/400上。
当AS/400采用一些先进的硬件技术时,可能要修改或增加一些相关的API,修改也只是在MI层下方的实现。
在MI层从不执行删除API这一操作,旧的API被完整的保留下来,正因为如此,一些十年前开发的应用程序可以不加任何修改地运行在当今AS/400系列计算机上,TIMI技术使得AS/400成为当今计算机领域中保护用户投资的典范。
MI层提供的APIs,我们称为MI指令。
这些MI指令是不能直接执行的,要先将它们编译成机器指令,也不能将MI指令集算成一种高级语言,而应看做是高级语言编译之后生成的中间结果,如下图所示。
Figure 1-4. MI指令MI指令的操作数有两类:立即数和对象(Object)。
立即数即传统的位和字节操作数,对象是一种数据结构,是一个封闭的整体。
在使用对象时,只有将对象视为一个整体进行操作的指令才是有效的。
因此应用程序和MI上方的系统软件完全不必了解对象的内部细节(这些细节都被封装在对象内部,对外界透明),对象的内部细节有任何改变也不会影响到那些对其进行操作的MI上方软件,这就使得这些软件独立于底层的数据结构。
与常规的机器界面指令不同,在MI指令的操作数中虽保留了立即数,但却没有了寄存器,物理内存空间,I/O空间等概念,倒是多了对象这个些概念。
在MI中定义了许多种对象类型,其中大部分都是一些结构复杂的数据结构。
一个最重要的MI对象类型称为Space,Space可以简单的理解为一组与硬件无关的字节序列。
当一个AS/400程序要使用内存时,它可以使用Space。
例如,AS/400的编译器(Compiler)在创建一个程序模板(Program template)时,必须要把这个程序模板放在某一个地方,这时就把它放在一个Space中。
正是有了这种TIMI技术,使得AS/400可以最及时地采用计算机业界的先进技术,成为IBM 公司展示自己新技术的橱窗。
例如,AS/400是第一个采用4M位﹑16M位内存芯片,第一个采用N-Way处理器技术,第一个采用RAID-5磁盘保护技术,第一个采用光纤连结等。
从CISC到PowerPC RISC处理器,寻址能力从48位到64位,不久的将来会扩展到128位,处理器芯片从Gobra到Apache到Northstar,处理器数量从1路到12路,几年来AS/400历经了几次大的硬件更新换代,但对原来的AS/400用户并没有带来什么冲击,相反却感觉到了AS/400新技术带来的性能上的巨大飞跃,用户一旦投资AS/400,就可以终身享受信息产业的新技术。
在这一点上,同其它行业同类产品相比,AS/400是最具竞争力的。
因为其它公司许多应用程序并没有完全独立于硬件,因此在硬件升级,尤其是芯片从CISC过渡到RISC结构时,这些程序需要重新改写,代价十分昂贵。