Re: [請益] Cambridge VM/XEN 是 Killer AP 嗎 ?

看板Programming作者時間18年前 (2007/05/24 12:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串4/22 (看更多)
==> 在 ggg12345.bbs@ptt.cc (ggg) 的文章中提到: > ※ 引述《mingchieh.bbs@bbs.cis.nctu.edu.tw (Bug J.)》之銘言: > : 這一段話就很怪了,intel推出的功能,不管是Xen、VMware...都可以用 > : 但都需要都需要重寫,而其實Intel所新加入的功能, > : 在以前的IBM的CPU就有了,實際上是來看由於CPU效能的提升沒處用, > : 加上近幾年就有很多paper是再討論VM的東西, > : 因此要走到VM的架構是一種相當可能的趨勢,Intel也才會跟進 > XEN 只對 Intel-VT 與 AMD-V 系列的 CPU 才會支援 MicroSoft OS 的 > virtualization. 應該是不改 MicroSoft OS 的核心. 沒錯,這是在HVM的架構下才可能不改source code、binary而支援, 但是XEN在初期的設計理念上,就是想利用「只」改hardware相關的 source code而讓提升傳統讓人詬病的效能問題, 所以要「不改code支援」這和最初的理念本來就不同 也才會有最初在「沒有開放WINDOWS SOURCE的狀況下」,windwos不能跑在 Xen上的的問題 如果當初XEN在設計上就是要full virtualization,那就不會有這樣的問題 > : XEN改binary code?VMWare才是吧,Xen是改source code, > 謝謝更正, XEN 只改 source code. > Vmware 會改所在宿主 os (下層)與寄居 os (上層)的核心, 改的方式可 這句話還是錯的,VMware提供了多種版本的Virtual machine, 你講的那一種,是他的Workstation系列, ESX系列的不用接host OS(你所謂的宿主),而是把ESX server直接裝在bare machine, (參考http://www.vmware.com/products/vi/esx/> 以透過 source , 若沒有 source 就用 binary code. MicroSoft 不公開 > 其 source code 因此對 Vmware 頗有意見, 也另買一家公司與之對抗. > XEN 提供其用 source 改過的 宿主 OS , 其宿主 OS 與寄居 OS 原來都 > 沒有 MicroSoft OS , 但若用 Intel-VT 與 AMD-V 的 CPU 就能支援寄居 > OS (上層) 逕自使用 MicroSoft OS. 你所謂的「宿主OS」,應該叫host OS,而寄居OS,應該叫「guest OS」 如果你的要求是「不改source code」,那目前VMWare已經做到了, 如果你要求還要加上「不改binary」,那麼的確在X86系統裡, 必須有VT或是V才行,理由很簡單,因為X86原本得設計就沒有考量到 virtualization的狀況,例如他有相當多的sentive instruction, 不是priviledge instruction,造成即使你是ghost OS, 還是可以直接抓到不應該知道的「實際資料」 > : 他把hardware相關的code改掉了,也因為他是「有OS支援」, > : 所以才會比VMWare快,而因為他改了OS的下層所以叫"para"-virtualization > : (這裡不討論HVM的架構),VMWare則是改runtime改binary,因此你在裝的時候, > : 不需要拿到「專門為VMWare改過的OS」,任何現存的OS可以直接RUN, > : 這樣是叫full virtualization,兩個優缺點很明顯可以從上面看出來 > : 而以現今intel和AMD對HVM的支援,要達到full virtualization的確相對簡單多, > : 但是不代表他速度會比para-virtualization快,實際上還是有paper提出, > : 以目前Intel/AMD所提供的能力,實際上你用軟體技術反而還有更好的效能 > : 請參考 > : Keith Adams and Ole Agesen在上年的ASPLOS '06所提出的論文 > : A COMPARISON OF SOFTWARE AND HARDWARE TECHNIQUES FOR X86 VIRTUALIZATION > 謝謝這個回應. > 透過 386 VM 硬體攔截敏感指令就會先跑到最底層的 VM Mornitor (BIOS ROM)或 VMM和BIOS ROM是不搭嘎的東西,為什麼會放在一起?不能理解.... > 宿主 OS 核心(最先掌控者), 再由之轉到 VMware 或 XEN 支援虛擬化的中轉層軟 > 體, 最後又轉到宿主請其做實體動作, 最後又回到寄居 OS 的核心. > ParaVirtualization 原來是更改宿主與寄居 OS 核心, 改寫寄居 os 敏感指令為 > 片段程式碼使之不必經過硬體攔截而是逕自銜接底層對應段來回. 軟體逕自銜接 > 當然是比多繞一圈的 VM386 硬體攔截速度快, 但 Intel-VT 與 AMD-V 是在 VM86 > 之外另提供一個額外的最底層攔截點, 概念上變成為可調整目的地的快速開關轉接 > 點, 雖不是最短的逕自銜接, 但能快速轉接. 主要的好處就是可以不必改寄居 OS > (最上層)的核心. > : 軟體引導硬體...我個人反倒覺得是市場趨勢影響,如果這算是軟體引導硬體, > : 那或許是吧。 > : 會不會是killer?感覺不會....,但是根據IDC和AFC這兩年的預測, > : 在2010年會有超過70%的server是用virtual machine或是grid的架構 > 這應該是純脆只就 VM (XEN/Vmware) 與 Intel-VT , AMD-V 帶來的遷移方便性 > 而言. 如果, Client/server 端都利用 異質CPU 與 VM 技術使得 X86 電腦能快 依據目前很多地方的統計,你講因該是他們最不需要的答案.... 由企業角度來看 很多台古老的實體機器 和 一台有很多VM同時在上面RUN的機器 成本上那個比較低? 那個管理比較方便?請以空間、耗電、散熱、管理等方面來看整體考量 又 如果企業裡給員工用的PC,實際上都有一個管理專用的VM在跑, 而另外一個VM才是真的給員工用的,這時如果員工發現電腦有問題, 打電話給管理員,管理員就可以直接透過管理用的VM遠端進來看狀況, 這樣以企業的角度來看,可以節省管理員的成本 > 速模擬執行異質 CPU 指令, 狀況就會因 X86 的用戶數量而改觀. 執行異質CPU現在也有,但是不是X86,隨便舉一個是PowerPC, 他就是可以執行X86指令,但是他本身的ISA卻不是X86的, 或是你可以查Trnasmeta的Crusoe CPU > > 這種技術可以用在 non-x86 cpu 嗎 ? 這需要硬體改甚麼 ? > : Why not? IBM早有了 > 486 CPU 支援硬體的 浮點運算器 FPU , 有掛與不掛都是全透通銜接, 不掛 > 會自動跑到對應的軟體做模擬, VM 裡的 Virtual I/O 就像可插拔的 FPU , > 可以動態的掛上去支援或拔除, 拔除時就跳轉到對應的軟體做虛擬 I/O , 如 > 果這不是 FPU 而是異質的 CPU, 會讓 PC 回生所有的老爺軟體(如電玩)嗎 ? 如果再不知道那個DEVICE的spec.的狀況下,那沒人可以模擬吧? 如果知道,軟體摸擬後直接把DATA PASS過去就好了,不是嗎? 另外,關於你的標題裡的"Kill AP",這裡的AP應該是「應用程式」吧? XEN算是AP嗎..... -- * Origin: ★ 交通大學資訊科學系 BBS ★ <bbs.cis.nctu.edu.tw: 140.113.23.3>
文章代碼(AID): #16LHL400 (Programming)
討論串 (同標題文章)
文章代碼(AID): #16LHL400 (Programming)