Re: [請益] Cambridge VM/XEN 是 Killer AP 嗎 ?
※ 引述《queen8 (一日步兵、終身步兵)》之銘言:
: 1. 把CP/67扯進來說是 Cambridge University 做的,
: 其實是IBM Cambridge Scientific Center做的,該中心位於
: Cambridge, Massachusetts,跟研發XEN的Cambridge一點都沒關係。
: 2. 想講MMU講到MMX去,人家在講virtualization,卻把VM86拿出來講,
: 又不是有VM兩個字就是 virtualization
: 3. 講的甚麼"隔離/保護/虛擬"完全看不懂在講甚麼,當初Popek & Goldberg
: 提的virtualizable requirements就有提到要玩 virtualization 至少要有
: 2-level ring 和 relocation-bounds register 的機制,也就是說虛擬的前提
: 在architecture能提供一套記憶體保護的機制
: mingchieh大的觀念都還蠻正確的,跟小弟最近看的資料都蠻符合的....
=====
謝謝指教. 獲益良多.
不過, 必須提醒 386 CPU 原設計就是要能支持 Virtual Machine Architecture,
這是從 286 時代就有此企圖, 只是一直做不全, 所以是有缺陷. 多數就是拿來做
8086 的相容這種用途, 所以沒有 MMU (虛擬記憶體, 謝謝提醒)這個硬體裝置虛
擬化的完整支援.
通常老式的機器有 console , processor , memory , I/O & device 四個項目.
全虛擬最嚴謹的就是要讓下層硬體能完全 "如假包換" 的提供出來也都能使用,
這是發展原硬體建新 OS 的一種理論上的要求, 當然可以不必完全提供, 甚至是
Logic Level support 就好, 但這就不是將上層發展好的 OS 就可以直接移到硬
體上就能少改就可使用.
IBM 的 VM (這種提法可免除爭議, 畢竟這是人造物) 最早期就是在 IBM 360/370
上模擬了 7xxx 機器的指令也跑其上的 OS , 她的關鍵就是碰到 illegal
instruction (現在稱為 sensitive instruction) 會產生 trap 到 VMM 檢視再
做處理, 這是模擬異質的環境. 但因為 IBM 370 OS 難產, 所以 CP/67 是進一步
先使用其他 OS , 但也要模擬 IBM 370 環境也供其新 OS 於其上使用, 這就是下
層硬體的全模擬. 指令的全模擬可以用 qemu 採用的 binary translation , 但
就會有效率的問題, 通常軟硬混著用, 再加一些不公布的 binary modification
與 "跨級串通".
XEN 就是會找 Intel , AMD 甚至 MicroSoft 做軟硬互補結合, 這是值得參考的
策略.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.5.5
討論串 (同標題文章)
Programming 近期熱門文章
PTT數位生活區 即時熱門文章