GPU Virtualization

Last year, Nvidia provides GRID K1 and GRID K2 GPUs for GPU virtualization. One could run multiple VM sharing the same graphic card to render complex applications. It takes the similar solution of SR-IOV but different approach. VMWare utilizes this GPU virtualization on their products and make the GPU performance in VM almost the same performance on bare-metal machine. Even without vGPU, VMWare’s Fusion still has about 90% of bare-metal performance.

Continue reading

Build Your ARM Image for QEMU

Hello there! I’ve been using QEMU for a while. Recently, I updated my ARM image and found that it has some difficulties to make an ARM image and could be an impossible job for those who are not familiar with embedded systems. I decided to write a comprehensive post to share some knowledge and how to build you own ARM image. This post could be very useful for those who want to know how Linux works with minimum requirements (root file system, in short rootfs). I use Vexpress as the target board in the tutorial.

Continue reading

Kernel Mode 與 User Mode 的概念

為什麼要有 Kernel Mode 與 User Mode?

首先我們先從為什麼要有 Kernel Mode 與 User Mode 談起。大家桌機或者是筆電用的作業系統,不論是 Windows 或者是 Linux,都可以 在同一個時間執行很多程式。 然而,當我們可以執行多個程式,我們如何確保二個程式不會相互干 擾?我們如何確保 A 使用者的程式不會更動 B 使用者程式的變數? 我們如何確保一個使用者不會佔著資源不放手(CPU、RAM…)?我們如何確保一個使用者的程式不會惡意的更動作業系統內部的資料結構以竊取更多的資源?我們如何確保硬體可以被正確地操作? Continue reading