鐵甲堡開發記
首頁 向上 愛好自然 崇尚科學 熱愛人文 心情故事 最新消息 訪客留言

 

刊於1992/7宏瞻人

   黏上了最後一張籤,終於完成了一千片鐵甲堡的生產工作,心情有著說不出的愉快。屈指一數,也快一年了,從當初提Proposal,規劃設計、到付諸實行,望著她一天天的成長茁壯。從一個實驗性的軟體、到商品化的產品,內心有如一待嫁兒女的父母,喜悅中攙著一絲絲的憂慮,畢竟他們終究要脫離雙親的羽翼、接受市場嚴酷的考驗。現在我們所能做的,只是重拾那斷簡殘篇的記憶,敘述一下產品發展過程中的喜怒哀樂,或許可以提供給您做個參考。


  其實鐵甲堡應該算是我提出第二個IB案子。記得第一個提的是有關於記憶體管理的東西,能夠將一般的程式一TSR及Device Driver「掛』到EMS或Upper Memory的空間裡,如此不就打破DOS 640K的記憶體限制了。當時想到這個點子時,自以為是-一個創新的突破,也迫不及待的寫了一個原型程式。後來才想到要查閱資料,看看國內外是否已經有了類似的產品?待我翻遍了當時最新的產品,其中QEMM386更在後來連奪了數屆的軟體銷售冠軍。這件事給了我一個啟示:「沒有想像力和良好的技術,固然不容易創造一個新的產品。就算是想到好的主意,也先別得意的太早,也許有人比你快了一步,而誰先搶占市場,誰就是大贏家。」


  大概在去年的年初吧!有感於個人電腦日趨普級,價格日益低廉,但是DOS作業系統並沒有提供任何資料安全的管理,無法滿足廣大使用者的需求。因此提出一個關於個人電腦整體保全的proposal。有了前車之鑑,這回一開始就先到國科會資訊圖書館查閱資料,看看是不是已經有了類似產品。當時只發現國外只有少數的產品,而且功能沒有比我構想的還多,也沒有發現有產品命名為PC Guard,於是我就暫定此名為產地的名稱。不過後來才發現資訊圖書館的資料並非最新,而PC Guard的名字也被別的廠商用了。

  感謝Richard和ken的支持,從去年七月開始,正式在部門內發展鐵甲堡;。由於這項產品和一般的應用軟體不同,很多的功能必須切入作業系統核心部份才能達成。因此為了要縮短研發時間,也為了避免構想了太多的功能,又不知是否能夠實現的困擾,於是我採用了一種和傳統不同的發展模式,一面做從上到下的設計,同時一面從下到上寫程式,做實驗來探討功能的可行性。等到下層的功能一個個被突破完成時,再配合上層整個的下拉式視窗架構,兜起來就是鐵甲堡了。


  話說起來是輕鬆愉快,但實際的發展卻充滿著各種困難和挑戰。首先是用了半個多用的時間,自行發展一套下拉式的視窗資料結構。接著就開始找一些比較困難而沒有把握的功能下手。其中有二個發展過程最富戲劇性,在那兩個星期間,一會兒是喜上眉梢,一會兒又是垂胸頓足,只可惜最後是以悲劇收場。話說那個功能就是希望能做到透通性(transparent)的編解碼,也就是當使用者用任何軟體讀取或寫入資料到磁碟機的時候,會自動的作亂碼或還原成明碼的處理。經過我評估之後,決定截取BIOS I/0動作,一次處理512 bytes是最省時且保密效果最佳的方法,而借用DOS的Cache buffer是最佳的處理捷徑。此時就要判斷I/O的動作是屬於使用者的,還是系統的,而做不同的處理…。當我一關關的破解系統內部資料結構後,眼看成功在望,卻發現在最後關頭,DOS竟然故意mask一些資料,害我不能做判斷處理,只記得當時一陣天旋地轉,差點昏倒在地!


   其中花了最長時間,才改良完成的要算是A、B driver的控制了,原先最早使用的方法,很容易造成當機的現象.過了好幾個月才發現一個可以隔絕A、B,又不會造成任何影響的方法。雖然才區區數行的程式,卻耗費了不少的心力。如果按照一般Line of code來衡量績效的話,我就要喊冤了。

   開機型密碼功能,算是比較困難的部份,但它所發揮的功能相當地多。除了提供25組開機密碼外,還可以防止開機型病毒的感染,記錄前5個使用者的名字及進入電腦的時間。發展困難的地方是它必須用組合語言撰寫,所做的動作又是在電腦開機的時候才執行,無法利用各種工具來debug。所以在寫程式的時候必須格外的注意小心,測試的時候則必須是真槍實彈的披掛上陣,運氣不好的時候,一開機電腦就當在那裡,不動了!


   時間就在這樣時而歡天喜地,時而痛哭流涕中渡過。經過四個月的掙扎,鐵甲堡的雛型產品終於在去年十月甫誕生了。除了辦一場說明會外,還徵求各路「不怕死」的英雄好漢前來試用。當然此時產品仍不甚穩定,於是John阮可憐的PC XT成了第一個犧牲品,原因是我沒有考慮到IBM XT的電腦處理硬碟的方式與眾不多。按著是Steven林正式接手測試的工作,一個多月的時間,幫我抓到不少的bug。


   最近則是Andy的加入,他不僅做功能的測試,還從一個電腦玩家的角度嘗試著破解鐵甲堡的功能。感謝他們前仆後繼,犧牲努力,讓鐵甲堡的城牆更加的堅固耐用。

 
Hosted by www.Geocities.ws

1