一、前言及背景
華能福州電廠二期2*350MW機(jī)組采用西門子EPERMXP系統(tǒng),在TerminalBus上有8臺OT、4臺PU以及2臺SU。配置情況如下:硬件采用了當(dāng)時西門子利多富的PC,CPU為Pentium166,操作系統(tǒng)為SCOUNIX5.0.4,應(yīng)用系統(tǒng)為西門子的OM650控制系統(tǒng)軟件。
這幾年來,計算機(jī)技術(shù)的發(fā)展越來越快,硬件的更新也非常的快,計算機(jī)的性能也得到了更大的提高?,F(xiàn)有的西門子P166微機(jī),是1997年的主流,但是現(xiàn)在已經(jīng)即將成為淘汰的產(chǎn)品,而且如果發(fā)生損壞,硬件的更換也很困難。在運(yùn)行當(dāng)中,曾經(jīng)發(fā)現(xiàn)系統(tǒng)響應(yīng)緩慢的問題,這就是P166計算機(jī)本身固有的局限。雖然我們也從西門子購買了新的備品計算機(jī),但是其價格昂貴而且沒有安裝好可以使用的OM650系統(tǒng),如果要將之投入運(yùn)行還需要做進(jìn)一步的配置和安裝上作,甚至還需要請西門子專家到現(xiàn)場才能夠解決?;谌缟系囊恍┣闆r,我們著手進(jìn)行系統(tǒng)移植方法的探討。
二、系統(tǒng)情況以及解決方法
西門子的OM650系統(tǒng)采取了比較可靠的軟件保護(hù)措施,除了擁有安裝介質(zhì)以及西門子提供的許可證外,無法進(jìn)行系統(tǒng)的重新安裝工作,因此現(xiàn)有的OM650的系統(tǒng)備份磁帶就成了手頭*的一個可以利用的資源。
OM650系統(tǒng)屬于上位系統(tǒng),其中OT為操作終端、PU為處理單元(PROCESSINGUNIT)、SU為服務(wù)器單元(SERVERUNIT)、ES為工程師系統(tǒng),如下圖所示:
其中OT、PU、SU上的操作系統(tǒng)為SCO5.04,ES上的為HPUNIXB.10.20而且ES的硬件為惠普的HP9000/715工作站,因此我們的系統(tǒng)移植以及硬件升級的目標(biāo)就是安裝于PC機(jī)上的OT、PU以及SU系統(tǒng)。而且從網(wǎng)絡(luò)圖可以看到,PU還有與下位系統(tǒng)的連接,因此,還將牽涉到特定硬件的配置和安裝問題,因?yàn)镻U上和下位系統(tǒng)連接的網(wǎng)卡是西門子*的網(wǎng)卡CPl413,普通的網(wǎng)卡是不能夠使用的。
要完成如上的目標(biāo),首先需要比較深入地了解SCOUNIX,其啟動方式、硬件管理以及文件系統(tǒng)管理方式等都應(yīng)該能深入的理解和體會,并且對TXP系統(tǒng)也應(yīng)有相當(dāng)?shù)牧私?。如下就是詳?xì)的升級改造的過程。
SCOUNIX的啟動方式如下:
ROMbios中的指令將硬盤O道O扇區(qū)上的主引導(dǎo)塊(masterboot)裝入內(nèi)存。
由已裝入內(nèi)存的主引導(dǎo)塊把活動分區(qū)的引導(dǎo)塊(bootblock)boot0裝入內(nèi)存。
Booto把UNIX分區(qū)上1KB處開始的bootl裝入內(nèi)存。
Bootl將UNIX文件系統(tǒng)中的/boot文件裝入內(nèi)存,boot程序被啟動。
然后啟動UNIX:
boot程序引導(dǎo)UNIX核心程序/stand/unix。
UNIX被引導(dǎo)后,啟動init進(jìn)程,
該進(jìn)程啟動/etc/inittab文件中所列的進(jìn)程。
整個系統(tǒng)被啟動
一般而言,我們都采用的是SCSI硬盤,那么在自舉階段能否正確識別SCSI卡成了關(guān)鍵的問題。
SCOUNIX的工作方式:啟動讀入BOOT信息,其中包含了內(nèi)核的加載以及對SCSI卡的識別,然后在啟動連接在SCSI卡上的硬盤中的ROOT文件系統(tǒng),接下來才能繼續(xù)加載上其他的應(yīng)用和文件系統(tǒng)。應(yīng)該說BOOT過程是對硬件的識別過程,特別是對SCSI的識別,只要正確地識別了SCSI,系統(tǒng)就能正常啟動。換句話而言,只要系統(tǒng)在BOOT的過程中能夠正確識別到SCSI卡的類型,那么ROOT中SCSI的信息是怎么樣的,其實(shí)并不是很重要。
我們的思路是:采用故障恢復(fù)方式,將系統(tǒng)當(dāng)作故障系統(tǒng)來對待,用新的系統(tǒng)的內(nèi)核和啟動程序來替換舊系統(tǒng)的內(nèi)核和啟動程序,這樣就能將系統(tǒng)引導(dǎo)并啟動。然后,修改SCSI卡的配置后重新編譯內(nèi)核,此時生成的新內(nèi)核就成了包含有新的計算機(jī)上的SCSI卡配置的系統(tǒng)。
我們認(rèn)為倒入新計算機(jī)的系統(tǒng)是損壞的系統(tǒng),這樣就需要通過系統(tǒng)恢復(fù)來使之正常。
具體過程說明如下:
(1)新的機(jī)器上(我們用了研華的PIII工控機(jī))安裝SCOUNIX(即使用新的SCSI卡,新的硬盤),在我們安裝的是SCOUNIX5.0.5。
(2)安裝成功之后,制作緊急盤(BOOT和ROOT盤),具體方法如下:
在超級用戶提示符#下敲入mkdevfd,回車,屏幕上將出現(xiàn)如r選項:
Choicesforcontentsofthefloppyfilesystems
i.Filesystem
iiEmergencyBootandRootfloppyfllesystems
因?yàn)閯?chuàng)建的就是緊急盤,所以就選2。然后出現(xiàn)如下畫面:
Choicesfortypeoffloppyfllesystems:
1)96tpi,doublesided,15sectorspertrack(12Mb5.25inch)
2)135tpi,doublesided,18sectorspertrack(1.44Mb3.5inch)
3)135tpi,doublesided,36sectorspertrack(2.88Mb3.5inch)
因?yàn)橐话阄覀冇?.44MB的軟盤來制作緊急恢復(fù)盤,選擇2。
然后出現(xiàn)如下的畫面:
Pleasechoosethetypeoffllesystem:
1)ootfllesystem
2)ootfilesystem
3)SinglefloppyBootandRootfllesystem(288Mbonly)
Ifyouhavehighdensity(1.44M)disks,youmustcreateseparaterootandbootfilesystemfloppies.Therootfloppymustbepreparedfirst.
這樣依據(jù)提示,就可以順利地創(chuàng)建出所需要的BOOT和ROOT盤
(3)用BOOT和ROOT盤啟動,用dd命令將舊系統(tǒng)(無論是OT、PU或者SU)的磁帶備份倒入到新的硬盤中
(4)BOOT盤啟動,fd(64)/unix.Z即從軟盤啟動,使用硬盤的ROOT
(5)裝以建立文件系統(tǒng)的軟盤到硬盤的空目錄下
mount/dev/fd0135dsl8/mnt
將軟盤上的boot和unix.Z文件復(fù)制到硬盤的/stand目錄下(stand文件系統(tǒng)包含了系統(tǒng)引導(dǎo)時所需要的信息、引導(dǎo)程序,例如/stand/boot、/stand/boots等文件)
(6)后用SCSI卡所帶的支持SCO安裝的驅(qū)動盤升級安裝SCSI卡,修改/etc/conf/cf.d/mscsi文件,重新對一些新的硬件進(jìn)行配置(如顯卡和網(wǎng)卡)
(7)生成新內(nèi)核/etc/conf/cf.d/Link-unix
(8)reboot重新啟動系統(tǒng)這樣,新的系統(tǒng)的移植就算真正完成了。對于PU的CPl413的網(wǎng)卡的配置,后來發(fā)現(xiàn)在PU上帶有該程序包,因此也節(jié)省了很多尋求的時間,只需要在內(nèi)存的配置上做了一些修改后,系統(tǒng)也啟動成功。經(jīng)過升級改造后的系統(tǒng)包括PU、SU和OT都經(jīng)過了在線的測試,完夠符合實(shí)際的需要,并且在性能上有了相當(dāng)?shù)奶岣摺?br />
這樣我廠的西門子終端總線上的計算機(jī)的備品*可以用價格便宜,性能更好的微機(jī)來替換,不但節(jié)約了資金也在一定程度上提高了系統(tǒng)的性能。目前國內(nèi)幾十臺西門子TXP控制系統(tǒng)都面臨相似的計算機(jī)備品問題,本移植方法對同類電廠TXPOM650系統(tǒng)的全系統(tǒng)移植具有一定的借鑒作用,可廣泛推廣應(yīng)用。