瀏覽單個文章
jasonyang
Major Member
 

加入日期: Sep 2004
您的住址: 木柵動物園
文章: 293
引用:
作者kkcity59
X86-64的Long Mode在相容模式跟64bit切換,確實多少會減損
只是當他跟IA64的狀況比,當然效能減損是變得微不足道
"放 system call parameters 的 stack,這裡有些是跟 register (像是 PC 與 SP) 有關"
這裡聽不是很懂,您可以解釋一下關聯嗎?
處理器有太多動作,都跟sp或pc有關
我看不清楚這裡您要強調的用意

"data alignment 與 pointer 轉換"
data alignment 在這之間要轉換嗎?
還是您的意思是"確保他們產生相同的data alignment?
模式一變都要處理不同的data alignment...這....

CMS意思是transmeta的code morphing software
所以他算是一套"軟體"...因為原文是software....他就是軟體
這點大概是您跟小弟對"軟體"的認知,還是有些許不同
例如我跟x說..喂,CMS給我一下,他丟了一顆Crusoe給我說..
CMS在裡面,自己想辦法吧......那也...


WOW 負責主要 OS kernel system call 的轉換(並不是只有硬體介面,主要還是軟體介面),這點要讀過 OS 的人才曉得,system call 通常使用軟體中斷或是 trap 達到,但在此之前 WOW 會先做一次轉換,才切入 64bit kernel,使得 Application 能由 32/64bit user mode 切到 64bit kernel mode 執行 kernel 提供的服務,由於 windows x64 與 x86-32 的 system call 介面不同,system call 通常帶有軟體需要的"參數"與少數的硬體的 register(PC,SP),所以才需要 WOW 的轉換,另外一提 AP 如果沒有呼叫 system call,性能是不會有損失的,就算有的話,性能損失比起真正要做的事也是為微乎其微的轉換而已。
你把 WOW 想像成一個硬體轉換層是錯誤的,其實 WOW 主要是軟體介面轉換層。
system call 就是 OS kernel 提供給 AP 的服務,舉例來說就像:file I/O (create,read,and write, etc), synchronization control (event, semaphore), process/thread control, IPC(interprocessor communication) 等等。

http://www.transmeta.com/crusoe/codemorphing.html
CMS 的確是一套軟體或說是韌體,是你對 CMS 的認知有誤,Crusoe 一開始會執行 CMS (位於一顆 serial interface 的 flash 中),建立起模擬 x86 (甚至其他 cpu)的環境,並把 CMS 搬到 memory 做 shadow 以加速執行,然後才開始由 flash/rom 執行 BIOS 的第一道 x86 指令,CMS 像 BIOS 一樣是可以被更新的。

至於 amd 沒想到會賣那麼好的話,我想是你自己猜的,以我的觀點,就是設計的 trade-off,就算沒有 cpu hot swap,還是有其他的方式做到 fault tolerance。若以你的想法,我也可以說 intel 沒想到 xeon 會賣那麼好,也沒考慮到 cpu hot-swap,但 chipset 與系統廠商,像 unisys 還做出 128-way high-end server 來,intel 最後還得搞出 PAE 來,不然實體記憶體只有不到 4GB 怎麼分。不能說少了某個 feature 就是因為沒想到會賣那麼好,這實在是本末倒置。
舊 2005-09-05, 02:17 PM #218
回應時引用此文章
jasonyang離線中