【摘要】在高校中應用開源軟件能節省投資、增強知識產權意識和促進知識創新。文章按照應用的層次和類別對開源軟件予以劃分,列出了一些有代表性且應用廣泛的開源軟件作為實踐參考。
【關鍵詞】開源軟件;高校;知識產權
【中圖分類號】G40-057 【文獻標識碼】B 【論文編號】1009—8097 (2008) 10—0110—04
引言
“開源”是指編寫軟件的一套規則和實踐,其中最重要的一個特點便是軟件源代碼是開放的,[1]每個人都可以獲取,并且能夠有權使用軟件。它是自由軟件和共享軟件進一步發展的結果。近年來,開源運動蔚然成風,開源項目和軟件也越來越豐富。截至筆者下筆之時,最大的開源社區sourceforge.net已入駐170945個項目,[2]專注于Linux下的應用的開源社區freshmeat.net已入駐44190個項目,[3]專注于微軟技術的開源社區codeplex.com已入駐3774個項目,[4]面向開發人員的中間件開源社區objectweb.org已入駐了63個項目。[5]面對如此風起云涌的開源運動,作為知識創造的重鎮——大學更有理由參與其中。
一 高校中應用開源軟件的意義
1 降低信息化成本,增強節約意識
教育信息化一直都是高校財政的一項大宗支出,資金短缺一直是困擾教育信息化的一個大問題。近年來,隨著硬件投資的基本落實,各個學校的信息化建設的重點已漸漸轉移到應用系統建設上來,用于計算機軟件的支出占的比重越來越大。硬件上的投資難以避免,而通過使用優秀的開源軟件這種方式能在很大的程度上節省軟件投資。
2 緩解盜版問題,增強知識產權意識
盜版在中國一直是一個“公開的秘密”,就法律意義上來說:軟件盜版其本質和偷竊、強盜沒有什么區別。而作為知識創新源頭的高校來說,本應不該盜版,因為盜版一方面損害廠商利益,同時也會影響高校自身的知識創新的動力和高校整體形象。另外,由于大多數開源軟件都可以自由修改源代碼再發布,所以我們不用受版權的嚴格限制,可以在一些開源軟件的基礎上進行深度開發,研發出適合我國國情的軟件。
3 促進自身研發工作和國際文化交流
目前大多數高校的業務系統大都通過外包的形式實現,高校內部IT人員大多只是進行需求分析和后期維護,時間一長,便習慣于做這種比較簡單的工作;同時,目前國內的軟件外包商的軟件又難以滿足高品質的需求。而很多優秀的開源軟件的設計架構、編程思想、開發技術很先進,我們完全可以通過閱讀其源代碼等方式來學習,加快高校IT人才的培養和促進他們的學習意識。很多開源軟件都是由發達國家的一些大學研發的,如果我們自身通過努力,可以參與到項目中,進行國際合作,學習先進的項目管理模式(開源項目管理也是未來軟件研發的一大趨勢),同時也促進了文化交流。
4 增強人力成本意識和共享共贏意識
開源軟件為什么在發達國家很流行?一個比較重要的原因是發達國家產品的人力成本較高(尤其是像軟件這種知識產品),于是,在一定程度上,大家“被迫而又甘愿地”將自己的成果與他人分享,各取所需,互惠互利。隨著我國經濟的發展和社會的變革,人力成本也必然越來越高,職場對大學生的團隊協作、共享共贏等意識的要求也越來越顯著。在高校中應用開源軟件對此將有一定的促進作用。
二 高校中開源軟件應用參考
我們可以根據軟件應用的層級和類別對開源軟件在高校中的應用做一個歸納,如圖1:

下面對各層次開源軟件的實際應用作參考性的闡述。
1 操作系統
操作系統由于其規模龐大,技術最復雜,所以在此領域沒有太多的選擇,只有Linux、BSD、Open Solaris,其中Linux和BSD又細分為多個發行版。根據社區用戶反饋和筆者的使用經驗,建議高校優先考慮表1所示的開源操作系統。

以上三種開源操作系統都是源于貝爾實驗室的研發的Unix,它們的操作方式大同小異;內核架構上雖然不一樣,但運行于其上的應用程序大部分是兼容通用的。
另外,需要提一下硬件資源虛擬化開源軟件Xen,它也是一個基于Linux的操作系統。它能將單臺硬件服務器虛擬化成多臺相互獨立的服務器,各臺虛擬服務器的操作系統及其應用互相獨立,這對于硬件資源緊張的高校有很大意義。
2 基礎性網絡服務
基礎性網絡服務主要是指網絡中的一些軟件服務基礎設施,如:DHCP服務、DNS服務、Email服務、FTP服務、Web服務器、時間服務、路由服務、VPN服務、防火墻等。如表2:

3 基礎性應用服務
基礎性應用服務主要是指為業務應用系統開發和運行提供支持的一些服務,如:數據庫、目錄協議等。這方面的選擇余地不是很多。前者主要是MySQL和PostgreSQL,后者則有OpenLDAP。
4 業務系統和桌面應用軟件
業務系統中我們可以分為通用性的業務系統和高校專用業務系統。前者是可以用于多種場合的,當然我們選擇的標準也是盡可能地適用于高等教育場合,具體如表3,可供參考的高校專用業務系統則如表4所示:

5 開發支持
開發支持類開源軟件眾多,主要面向程序員。可以大致分為語言編譯器、算法、軟件工程工具、具體語言開發框架、中間件等。如表6:

以上開源軟件主要是針對我國高校信息化中最常用的一些服務而列出的,未能詳盡。其中絕大部分軟件應用成熟,社區支持活躍,相對比較適合我國國情。
三 高校中選擇應用開源軟件應注意的幾個問題
1 是否符合自身的需求。
國外高校同行開發的,相對來說比較合適一些。
2 所應用的軟件的許可協議應適合需要。
開源軟件的許可協議多種多樣,[11]常見的有GPL、LGPL、BSD和MIT。前兩者對商業應用有很大限制,尤其是二次開發后仍應開源,不允許商業銷售;而后兩者基本上沒限制。
3 社區支持活躍度。
和商業軟件相比,開源軟件最大的欠缺就是沒有售后支持,所以它們的社區支持就尤為重要。而且,有些開源軟件是商業公司開發的,但它的服務是收費的。所以我們特別需要注意開源軟件的社區支持力度。
4 要注意開源軟件是否支持中文處理。
四 結束語
在信息化建設資金短缺的大環境下,作為知識創新重鎮的高校有條件也有義務大力推廣應用開源軟件,為高校信息化建設和國內的開源軟件事業做出應有的貢獻。
參考文獻
[1] OSI.The Open Source Definitions [EB/OL].
[2] SF.net.Statistics [EB/OL].
[3] Freshmeat.net. Statistics [EB/OL].
[4] Codeplex.com.Project Directory [EB/OL].
[5] OW2.org. .About us [EB/OL].
[6] Linux以及各大發行版介紹[EB/OL].
[7] Linux郵件服務器軟件比較[EB/OL].
[8][9] 黃永中,趙國棟,張捷.美國大學開源軟件項目概述[J].中國遠程教育,2007,(4):68.
[10] SF.net.Computer Aided Instruction (CAI) projects Search Result[EB/OL].
[11] OSI. Open Source Licenses by Category [EB/OL].