基於LAN的資源共享

2021-04-12 22:47:24 字數 1388 閱讀 3955

最近在積極思考final year project的內容, 一方面想做點和實際相關的內容,一方面又想接觸技術層面多些。這幾周不能說整天查資料在找題目,至少經常brain storm一下。

真的把這個題目做好也不錯,不過神經網路不是我的長項,甚至只是耳聞,沒做過一點細緻接觸。所以我又想到另乙個題目。

基於lan的資源共享

這兒的資源共享不包括資料共享,主要是計算資源共享。比如乙個有2臺電腦的最基本lan網路,如何使他們執行大多數東西的效率達到最高。說白了,就是集群。一台電腦的cpu占用超過90%時候可不可以借用另一台計算機的cpu進行運算而提高使用效率。

我現在想到現存的問題有以下:

1. 如果在乙個超過2臺計算機的lan網路,1臺計算機需要「借用」資源的時候應該向哪台計算機借用,或是同時向哪幾台計算機借用。

這裡的有乙個演算法問題,比如乙個10m網路,計算機之間溝通速度差不多是1m/s,硬碟<->記憶體之間的傳輸是50m-80m/s不等。使用者外部輸入資料是1m,輸出資料為2m,處理器為了計算,生成的中間資料為50m,純計算時間為30秒。

若本地計算機cpu的計算量已經達到極限,那麼通過網路向另一台計算機輸入1m的資料,然後接受2m的輸出資料是非常划算的。如果輸入資料巨大如1g,那光從一台計算機傳輸這些資料到另一台就需要很多時間,不划算。

另外,不是每一台計算機都完全空閒,可能會有一些計算機在處理高強度運算,有些在進行低強度運算卻在進行持續的硬碟讀寫等等。

若這些計算機有個人所有權,如何分配好資源又保障擁有者的合理使用權是很重要的。

2. 隱私問題

這不用多解釋吧,不但需要隱藏自己的輸入資料,有些情況下使用者還希望保證自己正在執行的程式不為他人所知。

3. 效率問題

2個人合力做一件事情,提高的效率肯定不是100%,差的話甚至比乙個人做還慢。現在的雙核/多核處理器都有這樣的問題,別說是集群了。從軟體層面上說也需要改進,需要把乙個程式分為很多塊進行處理。

對於這些難題目前能想到的:

由soa(http://en.wikipedia.org/wiki/service-oriented_architecture)來實現,不同節點(peer)提供不同的服務(service),把這些服務加起來就成了乙個完整的軟體程式。對於現存不基於soa設計的程式,可不可以把他就認為是一種service來服務。

這裡的研究應該主要是放在soa上,soa不光是本地計算服務共享,還包括遠端服務共享。我個人認為做好這麼乙個題目已經很需要時間了。至於安全,版權,隱私等等問題固然重要,確是不同方向的兩個題目。

不想把研究基於windows平台的現有程式,這些大多已經定型,也不開源,做了研究也奈何不了,做個外部程式效率一定不夠理想。比較理想的基於開源平台,把非系統服務放在乙個lan當中來研究。可行的話也可以把系統服務來共享,這個我不太了解。

說了這麼多,其實只是brain storm的一點點設想,歡迎提反對意見

vue資源共享

ui框架 適用pc端 elementui 支援vue2.x,餓了麼前端團隊打造 iview 支援vue2.x vue antd 支援vue1.x,據說不再有人維護 n3支援vue2.x alitelecom ui 支援vue2.x,阿里通訊技術團隊打造 vue blu 基於vuejs和bulma開發...

程序的資源共享

程序是放到記憶體中的,程序中所有的計算過程都是需要在cpu處理的。當有多個程序都需要使用共享資源的時候就需要借助乙個中間過程 臨界區 臨界區的使用原則 空則讓進,忙則等待,等則有限,等則讓權 當共享資源沒有被使用的時候就將某個需要使用的程序放到臨界區中,在這段時間中只能是臨界區中的程序可以使用共享資...

NLP資源共享盛宴

科技創新,方法先行 為響應科技部 十二五 關於加強科技資源共享的號召,中科院自動化所 自動化學科創新思想與科學方法研究 課題編號 2009im020300 課題 與國內專業的科研資料共享平台 資料堂 展開全面合作,將 自動化學科數位化知服務網路平台 的部分後台資料,以及專案中的一些其他資料資源,免費...