劉曉華黑龍江省計算機軟件研究中心
基于網絡技術研制計算機軟件老化趨勢的研究
劉曉華
黑龍江省計算機軟件研究中心
摘要:現今社會通過網絡技術開發的軟件系統應用在生活的各個角落,應用軟件經過長期不間斷的運行,產生的系統內存泄露、舍入誤差的累積、未釋放的文件鎖、大量的存儲空間碎片等原因會導致軟件性能衰退,在很多領域都可能會造成巨大的經濟損失,甚至在特殊的國防領域可能會造成設施損毀和人員的傷亡。本文對軟件的老化趨勢進行深入研究,研究軟件運行狀態監測方法,預測出網絡軟件老化的趨勢,研究軟件失效之前及時采取相應的恢復策略。
關鍵詞:軟件老化;趨勢預測;恢復策略
隨著計算機技術的迅速發展,計算機系統被廣泛的應用在人們的生產生活中,計算機軟件做為重要的功能載體也越來復雜,隨著社會應用軟件所做的工作越來越多,對應用軟件的功能要求也越來越強大,系統功能日趨復雜。對應用軟件的維護變得越來越困難,隨之而來的系統可靠性問題變得日益突出。軟件經過長期不間斷的運行,產生的系統內存泄露、舍入誤差的累積、未釋放的文件鎖、大量的存儲空間碎片等原因會導致軟件性能衰退,這種現象成為軟件老化[1]。軟件的老化問題,不單單存在于硬件系統包括網絡服務器和存儲等其他服務器中,也存在于軟件系統當中,在一些具有較高可靠性和應用性的系統軟件中也存在著軟件老化的問題。無論是電子政務領域、商用領域、行業應用領域,軟件老化問題都有可能會給用戶帶來很大問題或者造成巨大的經濟損失,在國防領域,甚至可能會造成國防設施的損害和人員的傷亡。在當今社會激烈的市場競爭中,如果為客戶提供的軟件性能低下,經常出現系統宕機情況,可能會失去商機,甚至是失去客戶,給企業帶來無法估量的經濟損失。據統計,企業由于服務器突然宕機造成的經濟損失每分鐘達2.7萬美元。據GnarterGruop估算,40%的服務器出現故障是由軟件老化引起的[2]。
本文所研究的目標是盡量避免系統硬件資源的過度消耗引起軟件老化情況,避免因為軟件老化而造成的計算機軟件失靈。研究軟件抗衰策略,通過多種方式來減少軟件老化給用戶帶來的損失,能夠較大成都的提供應用系統軟件的可靠,盡量減少軟件抗衰的成本。
趨勢預測是設備維護的一種手段,該項技術原理是對設備和工藝過程中發生的各種信息進行識別和預測,根據設備工作狀態的歷史和現狀,推測未來設備工作狀態的發展趨勢,預計維護日期和未來故障發生的時間。也就是根據特征向量的數據進行預測分析,從而預測故障發生的時間和頻率。
小波分析是應用數學和工程學科中全新的領域,并且發展迅速,這種分析方法是一種新的函數逼近工具和時間—尺度、時間—頻率的分析方法,它是對Fourier分析理論的繼承和發展。小波分析具有伸縮、平移和放大功能,能夠將強度不同的信號的任何特征清晰的表露出來,不管是在什么時域和頻域里,對信號的分析可以采用不同尺度,能夠較好的提取信號中有用信息??梢越鉀Q許多單從時域或者單從頻域不能夠解決的問題。根據小波分析的優勢特點,在軟件老化的趨勢預測中可以應用該方法來進行有效的分析。利用小波分析將含有噪聲的系統性能數據進行分解、重構,利用降噪函數進行平滑處理;將平滑后的數據分解到不同尺度上,利用其它預測方法對各層系數分別進行預測,進而重構各層預測系數得到預測結果。
人工神經網絡是一種是一種模仿人類神經網絡行為特征,進行分布式并行信息處理的算法數學模型。它可以效仿人類大腦的處理過程,能夠適應非結構性、非精確性規律,并且能夠記憶信息、自主學習、根據知識庫進行推理和計算優化,該方法計算能力強大、具有較強的記憶能力、同時兼備容錯能力及各種智能處理能力。表現突出的是自主學習和自適應功能。
SVM(支持向量機)方法是在統計學習理論基礎上產生的一種全新的通用機器學習方法。它是通過學習樣本的方式完成分析的,這種方式的學習,通過有限的樣本,能夠較大程度的減少結構風險,這種方法具有較好的泛用能力,它能夠尋求逼近函數的復雜度和準確度之間的平衡點,并可以解決人工神經網絡方法中的一些弊端,例如局部值的問題,具有較好的全局性,并且通過核函數解決維數災難問題。
這幾種建模方法都有各自的優缺點,可以將其中的方法組合使用,通過這組合使用達到取長補短的效果,從而使得到的預測結果更加具有準確性。
將含有噪聲的系統性能數據進行分解、重構,可以達到降噪的目的,可以更準確的對收集的數據進行分析,建立合理的軟件預測模型,通過大量數據驗證模型,對模型的合理性、準確性等進行評測并修改模型直至得出最優的軟件老化趨勢預測模型。
(1)從總體上把握軟件系統性能的波動特征,很好地利用歷史數據對軟件老化進行預測。
(2)能夠對反應軟件老化的資源參數的變化趨勢進行精確度高的短期預測。
使用網絡技術開發的軟件應用在社會的各個領域,軟件的使用者都希望能夠便捷的使用軟件的同時系統能夠長期穩定高效的工作。編寫高可靠性的軟件也是軟件開發者的一個目標。通過對系統狀態的監測對軟件的狀態進行有效地評估,在系統出錯前采取有效的再生策略,從而大大減少系統停機損耗和停機時間。在未來的幾年中,隨著預測技術發展迅猛,軟件老化預測精度將有很大的提高,影響軟件老化的參數性能會被有效地進行評估,在技術上必將取得長足的進步和發展,并且最終出現大規模的應用。
參考文獻:
[1]Y.Huang,C.Kintala,N.Kolettis,and N.D.Funton.Software Reju?venation:Analysis,Module and Application.25th IEEE Int’l Symp.On Fault Tolerant Computing,IEEE Computer Society Press,Los Alamitos, CA,1995:381-390
[2]萬群麗,楊群,李正,許滿武.一種基于Agent適用于Web應用的軟件抗衰方法.計算機應用研究,2004,8:18-21