一、前言及背景
?华能福州电厂二期2*350MW机组采用西门子TELEPERM XP系统,在Terminal Bus上有8台OT、4台PU以及2台SU。配置情况如下:硬件采用了当时西门子利多富的PC,CPU为Pentium166,操作系统为SCO UNIX5.0.4,应用系统为西门子的OM650控制系统软件。
?这几年来,计算机技术的发展越来越快,硬件的更新也非常的快,计算机的性能也得到了更大的提高。现有的西门子P166微机,是1997年的主流,但是现在已经即将成为淘汰的产品,而且如果发生损坏,硬件的更换也很困难。在运行当中,曾经发现系统响应缓慢的问题,这就是P166计算机本身固有的局限。虽然我们也从西门子购买了新的备品计算机,但是其价格昂贵而且没有安装好可以使用的OM650系统,如果要将之投入运行还需要做进一步的配置和安装上作,甚至还需要请西门子专家到现场才能够解决。基于如上的一些情况,我们着手进行系统移植方法的探讨。
二、系统情况以及解决方法
?西门子的OM650系统采取了比较可靠的软件保护措施,除了拥有安装介质以及西门子提供的许可证外,无法进行系统的重新安装工作,因此现有的OM650的系统备份磁带就成了手头唯一的一个可以利用的资源。
?OM650系统属于上位系统,其中OT为操作终端、PU为处理单元(PROCESSINGUNIT)、SU为服务器单元(SERVER UNIT)、ES为工程师系统,如下图所示:
?其中OT、PU、SU上的操作系统为SCO5.04,ES上的为HP UNIX B.10.20而且ES的硬件为惠普的HP9000/715工作站,因此我们的系统移植以及硬件升级的目标就是安装于PC机上的OT、PU以及SU系统。而且从网络图可以看到,PU还有与下位系统的连接,因此,还将牵涉到特定硬件的配置和安装问题,因为PU上和下位系统连接的网卡是西门子特有的网卡CPl413,普通的网卡是不能够使用的。
?要完成如上的目标,首先需要比较深入地了解SCOUNIX,其启动方式、硬件管理以及文件系统管理方式等都应该能深入的理解和体会,并且对TXP系统也应有相当的了解。如下就是详细的升级改造的过程。
?SCO UNIX的启动方式如下:
?ROM bios中的指令将硬盘O道O扇区上的主引导块(masterboot)装入内存。
?由已装入内存的主引导块把活动分区的引导块(boot block)boot0装入内存。
?Booto把UNIX分区上1KB处开始的bootl装入内存。
?Bootl将UNIX文件系统中的/boot文件装入内存,boot程序被启动。
?然后启动UNIX:
?boot程序引导UNIX核心程序/stand/unix。
?UNIX被引导后,启动init进程,
?该进程启动/etc/inittab文件中所列的进程。
?整个系统被启动
?一般而言,我们都采用的是SCSI硬盘,那么在自举阶段能否正确识别SCSI卡成了关键的问题。
?SCO UNIX的工作方式:启动读入BOOT信息,其中包含了内核的加载以及对SCSI卡的识别,然后在启动连接在SCSI卡上的硬盘中的ROOT文件系统,接下来才能继续加载上其他的应用和文件系统。应该说BOOT过程是对硬件的识别过程,特别是对SCSI的识别,只要正确地识别了SCSI,系统就能正常启动。换句话而言,只要系统在BOOT的过程中能够正确识别到SCSI卡的类型,那么ROOT中SCSI的信息是怎么样的,其实并不是很重要。
?我们的思路是:采用故障恢复方式,将系统当作故障系统来对待,用新的系统的内核和启动程序来替换旧系统的内核和启动程序,这样就能将系统引导并启动。然后,修改SCSI卡的配置后重新编译内核,此时生成的新内核就成了包含有新的计算机上的SCSI卡配置的系统 。
我们认为倒入新计算机的系统是损坏的系统,这样就需要通过系统恢复来使之正常。
?具体过程说明如下:
?(1)新的机器上(我们用了研华的PIII工控机)安装SCO UNIX(即使用新的SCSI卡,新的硬盘),在我们安装的是SCO UNIX5.0.5。
?(2)安装成功之后,制作紧急盘(BOOT和ROOT盘),具体方法如下:
?在超级用户提示符#下敲入mkdev fd,回车,屏幕上将出现如r选项:
?Choices for contents of the floppy filesystems
?i.Filesystem
?ii?Emergency Boot and Rootf loppy fllesystems
?因为创建的就是紧急盘,所以就选2。然后出现如下画面:
?Choices for type off loppy fllesystems:
?1)96tpi,double sided,15sectors pertrack(12Mb5.25inch)
?2)135tpi,double sided,18sectors pertrack(1.44Mb3.5inch)
?3)135tpi,double sided,36sectors per track(2.88Mb3.5inch)
?因为一般我们用1.44MB的软盘来制作紧急恢复盘,选择2。
?然后出现如下的画面:
?Please choose the typeof fllesystem:
?1)oot fllesystem
?2)oot filesystem
?3)Single floppy Boot and Root fllesystem(288Mbonly)
?If you have high density(1.44M)disks,you must create separate rootand boo t filesystem floppies.Theroot floppy must beprepared first.
?这样依据提示,就可以顺利地创建出所需要的BOOT和ROOT盘
?(3)用BOOT和ROOT盘启动,用dd命令将旧系统(无论是OT、PU或者SU)的磁带备份倒入到新的硬盘中
?(4)BOOT盘启动,fd(64)/unix.Z即从软盘启动,使用硬盘的ROOT
?(5)装以建立文件系统的软盘到硬盘的空目录下
?mount/dev/fd0135dsl8/mnt
?将软盘上的boot和unix.Z文件复制到硬盘的/stand目录下(stand文件系统包含了系统引导时所需要的信息、引导程序,例如/stand/boot、/stand/boots等文 件)
?(6)后用SCSI卡所带的支持SCO安装的驱动盘升级安装SCSI卡,修改/etc/conf/cf.d/ mscsi文件,重新对一些新的硬件进行配置(如显卡和网卡)
?(7)生成新内核/etc/conf/cf.d/Link-unix
?(8)reboot重新启动系统这样,新的系统的移植就算真正完成了。对于PU的CPl413的网卡的配置,后来发现在PU上带有该程序包,因此也节省了很多寻求技术支持的时间,只需要在内存的配置上做了一些修改后,系统也启动成功。经过升级改造后的系统包括PU、SU和OT都经过了在线的测试,完全能够符合实际的需要,并且在性能上有了相当的提高。
?这样我厂的西门子终端总线上的计算机的备品完全可以用价格便宜,性能更好的微机来替换,不但节约了资金也在一定程度上提高了系统的性能。目前国内几十台西门子TXP控制系统都面临相似的计算机备品问题,本移植方法对同类电厂TXPOM650系统的全系统移植具有一定的借鉴作用,可广泛推广应用。?