2009年10月6日 星期二

平台科技(一)

牛頓曾以嘲笑的語氣說我們祗是站在巨人的肩膀上。這是甚麼意思呢?其實他就是點出了現代科技的一個重要特質,這就是‘累積性’。

行為主義創始人Skinner便從另一角度,很形象化的傳釋這個概念,大意就是今天沒有人會再去看亞理士多德的科學理論,但我們仍會視孔子、蘇格拉底、拍拉圖、耶穌、佛祖等的言論為極有啟發性。Skinner就是認為人文學科從來都沒有進步過。

近三十年,電腦科技突飛猛進,便更彰顯了這個道理,我們或可把這稱為‘平台科技’(platform technology)。簡單來說,電腦的發展就像一個個的‘平台’。舉一個例子,電腦是如何把資料寫進硬盤的呢?我都算是個極資深的程序員,但我就祗可告訴你:天曉得!

廿多年前,我便曾對蘋果二號(Apple II)的軟碟作了深入的研究,一般人就是難以想像就是讀寫一筆資料是如何的複雜!但當年的軟碟與今天的硬盤相比,就可以說是玩具和轟炸機之比,一般人想也想不了硬盤的操作是何等的複雜!

但九成九九以上的人都不用了解這些細節,你在一個應用程式,如Word打開一個檔案,其實可能已使用多個‘平台’,編寫Word的程序員,其實是會叫用一個微軟內部的程式去開啟檔案,他們祗要學懂叫用的方法便可以了,這個程式的內部做些甚麼,根本完全無需理會。但這個程式,也不是直接指揮硬盤的,它亦祗會叫用編程語言的服務,經過多層的叫用後,最後便會叫用視窗系統的硬碟讀寫服務,但這還不是故事的終結,視窗系統還需叫用所謂‘驅動程式’(Driver),這些是由硬件生產商提供的程式,專門去操控她們生產的設備。

‘平台’就成了這幾十年,電腦科技突飛猛進的重要原因之一。例如,應用程序員再不用理會複雜的硬件操作,甚至不用理會完成工作的很多細節。我經常打一個比喻,微波爐其實是個高科技的設備,但很多‘微波爐專家’實在對微波一無所知,他們是烹飪專家而不是物理學家,若‘製作微波爐’成了烹飪課程的必修課,可能便永遠沒有人能畢業!

同樣因為電腦有個‘電’字,很多人便會以為‘電腦專家’必定懂‘電學’,現實上,當然不是這回事!

但‘平台’背後,亦有極大的問題,廿多年前的第一次海灣戰爭,從CNN的片段可以看到,伊拉克的防空炮火就有如‘放烟花’一般,或更簡單的說,就是在‘盲射’!今天的防空炮火,實在是個極為複雜的電腦、雷達以至各種不同偵察儀器的組合。出現‘盲射’必然是這系統出現了嚴重問題,而戰後的記錄片,便強調聯軍是如何轟炸伊拉克的雷達系統,但就是有一永遠都不可證實或否定的江湖傳聞,說是蘇聯把伊拉克的防空系統的‘後門’給了美軍。

所謂‘後門’(backdoor),就是系統內故意放置的‘漏洞’,在有需要時,知道‘後門’的人便可影響或操控這系統,《三國演義》內的 ‘木牛流馬’ 便是有‘後門’的,這當然是小說家之言,以當時的技術,這樣的‘後門’接近是不可能的。但現代軍備背後就是電腦,要加進這些‘後門’,可以說是易如反掌!

想想,若發生緊急情況(如戰爭),電腦突然全部停頓,這會是多嚴重的後果,更加不要說武器失控,掉轉槍頭,反攻擊己方!有關問題,下文再續。

沒有留言: