Win32 與 x64 app 的優缺點

優點:


  1. 有更多的 general purpose register,在某些情況下可以節省 CPU 使用 cache 及 memory 的 cycle
  2. CPU register 變成 64 bits,一些 encoder/decoder/encryption application 可以跑得更有效能

  3. 可 access 的 memory space 更大

缺點:



  1. 同樣的 data 需要耗更多的空間 (64 bits)
  2. 無法 load 32 bits 元件 (如 DLL, COM component)

簡單的來說,如果我們不是做超大量的數學運算,並且需要用到 64 bits 的整數,那麼其實也沒必要將 app 轉成 64 bits 的。在 64 bits OS 下跑 32 bits app,便可以存取到全部 4G memory space (假如我們有那麼大的 RAM),醬子也不錯…


附帶一提,在 32 bits OS,int 與 pointer 的大小都是 32 bits,但是在 64 bits OS (MS Windows):




  • int - 32 bits

  • long - 32 bits

  • long long - 64 bits

  • pointer - 64 bits

其實這要看 64 bits compiler 是用哪種 data model。上面的是 MS Windows…


留言

熱門文章