SAP 的Kernel主要用C语言编写,构成了SAP的基础技术平台,Kernel向下面对特定的操作系统、数据库,向上架构起ABAP运行平台。Kernel作为底层与业务层之间的支撑平台,它抹平各操作系统、数据库之间的差异,所以ABAP程序可在某一SAP服务器平台上编写,在所有平台上运行,这种特性类似于JAVA。
Kernel版本信息可在在GUI中查看(参见《查看系统状态》),或在后台中查看(参见《SAP 服务的启动与停止(Windows版)》)。版本信息由基础的发布版本(Release)及支持包等级(Supper Package Patch,以下简称Patch)构成。例如ECC 6 SR3初始安装完成的Release版本为700(或称7.00),而Patch则为144。
SAP针对不同的底层环境创建了不同的Kernel软件包,更新需要选择符合服务器需求的,否则系统将崩溃。图1是在SAP官网中版本(Release)为7.00的64位Unicode字符集的Kernel目录,在其下的一级目录中显示支持多种操作系统;本例选择Windows x64位的,在其下的二级目录中可见到支持的多种数据库。
一套完整的Kernel包含两大部分,其中Kernel Part I为与数据库无关的(图1中的“#database independent”);Kernel Part II为特定数据库的。图2 显示Part I的,以集成包的形式下载,注意区分里面的版本,一般选最高版就可以了;图3显示Part II的,本例是Oracle数据版的,与图2中的版本一一对应。在图2的界面中,还有一些独立的工具软件未显示出来,它们其实都在集成包中只是版本不同,一般独立的比集成包中的版本高。
获取“SAPEXE_310-20001354.SAR”和“SAPEXEDB_310-20001356.SAR”文件后,还需将其解压(参见《SAPCAR的简易使用方法》),注意前者中含有SAPCAR.EXE文件,所以解压输出的目录不要与存放SAPCAR.EXE的相同。
更新Kernel需要停止服务器,最好将原有的Kernel备份以防不测。Kernel存放的目录格式是usr/sap/<sid>/SYS/EXE/<字符集>/<操作系统>,本服务器的操作系统是Windows Server 2003 64位,SID是FP1,Unicode字符集,SAP安装在D盘,所以具体的目录就是“D:usrsapFP1SYSexeucNTAMD64”,将解压缩的众多文件拷贝至此目录并覆盖原有文件既可。
Kernel的更新与组件、支持包的不一样,前者可以回退,而后两者不行。如出现差错或反悔,可将原有Kernel再次拷贝并覆盖就可以了。重新启动SAP服务,进系统可以查看更新后的Kernel版本。
图1 Kernel下载目录树(Release 700 64位 Unicode)
图2 与数据数据库无关的文件包
图3 与数据库有关的文件包(本例为Oracle版)