Chạy hệ điều hành ảo hóa trên host hiện có là ý tưởng tuyệt vời. Vui, cool, cho phép thử phần mềm trước khi cam kết nền tảng thật, cho làm điều bạn bình thường không dám,给予灵活性巨大, và giảm chi phí triển khai đáng kể.
Nhưng điều mà hầu hết phần mềm ảo hóa thiếu là tăng tốc 3D cho hệ điều hành khách. Hoặc là "đã từng thiếu"... Tăng tốc 3D trong máy ảo đã thành hiện thực.

Giới thiệu
Trong loạt bài này, tôi sẽ chỉ cho bạn các hack đơn giản để bật tăng tốc 3D trong hệ điều hành khách! Nghĩa là máy ảo của bạn không còn giới hạn ở ứng dụng 2D. Bạn sẽ tận hưởng desktop phong phú, tương tác. Tốt nhất, bạn sẽ chơi game bên trong máy ảo!
Trong bài đầu, chúng ta học cách bật hỗ trợ DirectX trong VMware Server. Giải pháp cũng áp dụng cho VMware Player hoặc VMware Workstation. Lựa chọn host OS không quan trọng. Guest phải là Windows.
Trong bài thứ hai, chúng ta dùng hỗ trợ OpenGL trong VirtualBox. Lại nữa, lựa chọn host OS không quan trọng (Windows hoặc Linux đều được), nhưng guest phải chạy Windows. Như bạn thấy, cả hai giải pháp đều giới hạn ở guest Windows. Vì vậy, bài thứ ba, chúng ta sẽ thử VMGL, giải pháp cho tăng tốc 3D cho guest Linux trên host Linux.
Một lời cảnh báo...
Lưu ý tất cả tính năng (và do đó giải pháp) hiện đang thử nghiệm. Nghĩa là setup có thể chạy cho bạn – hoặc không. Nó cũng nghĩa là tích hợp và hiệu suất chưa hoàn hảo.
Ảo hóa 3D vẫn còn non trẻ, nhưng đang tốt hơn mỗi ngày. Trong tương lai gần, chúng ta sẽ có hỗ trợ đồ họa 3D hoàn hảo, đầy đủ như mong muốn. Hiện tại, hãy xem chúng ta có thể làm gì. OK, let's rock.
Đợi! Tôi biết rất ít về ảo hóa!
À, đúng, xin lỗi. Nếu bạn mới với ảo hóa, bài này (hay loạt bài) có thể hơi nâng cao. Do đó, tôi khuyên bạn dành thời gian đọc các bài trong section ảo hóa của tôi cho đến khi thoải mái. Đặc biệt, bài bạn nên chú ý:
How to install VMware Tools - Tutorial
Installing Windows XP - Full tutorial - Bài khác có thể giúp; hướng dẫn cài Windows XP, quy trình giống hệt cho cả host thật và máy ảo. Tuy nhiên, như luôn, tôi cố gắng làm hướng dẫn dễ và chi tiết nhất, để ai cũng làm theo được.
VMware Server & DirectX
Chúng ta cần gì?
Bạn cần sản phẩm VMware – Player, Server, Workstation, một trong số đó. Chúng loại trừ lẫn nhau, nên chỉ cài được một tại một thời điểm. Cho hướng dẫn này, tôi chọn:
- VMware Server 1.0.5 trên host Windows XP3 (ví dụ host Windows)
- VMware Server 1.0.8 trên host openSUSE 11.0 (ví dụ host Linux)
- Windows XP SP3 làm guest OS trong cả hai trường hợp
- VMware Tools cài trong guest OS
- Một chút tinh chỉnh file cấu hình máy ảo
- Game yêu cầu DirectX để test
Lưu ý: Nếu bạn định dùng VMware Player, đảm bảo máy ảo Windows đã cài VMware Tools.
Giả sử bạn đã sẵn sàng mọi thứ (bước 1-4), hãy tinh chỉnh file cấu hình máy ảo. Nếu không chắc làm sao hoàn thành bước 1-4, xem section ảo hóa của tôi.
Bật tăng tốc 3D cho máy ảo
Máy ảo có file cấu hình. Nhận diện bằng đuôi .vmx. File .vmx là file text đơn giản chứa chỉ thị, viết bằng cú pháp VMware hiểu và dùng. Trong file cấu hình, chúng ta định nghĩa guest dùng bao nhiêu CPU, RAM, ổ cứng, v.v.
Chỉ thay đổi file cấu hình khi máy ảo TẮT! Mở thư mục chứa máy ảo (và file cấu hình), tìm file .vmx liên quan và mở trong trình soạn thảo text.
Bây giờ, chúng ta cần thêm section bật tăng tốc 3D.
Dòng đầu tiên cần thiết:
mks.enable3d = TRUE
Dòng này bật tăng tốc 3D.
Dòng thứ hai, tùy chọn:
svga.vramSize = 67108864
Chỉ định dung lượng bộ nhớ dành cho GPU ảo. Ví dụ tôi dùng 64MB. Nếu muốn chính xác 32MB, tính: 32 x 1024 x 1024, vì 1KB = 1024 byte. Tối đa 128MB.
Dòng thứ ba, tùy chọn. Tắt tích hợp chuột. Quan trọng cho một số game, như FPS real-time toàn màn hình.
vmmouse.present = FALSE
Cùng với tùy chọn thứ ba, tắt "motion grabbing" cho máy ảo. Trong menu chính console VMware (sản phẩm), nhấn Edit > Preferences, chọn tab Input, dưới Cursor, bỏ tick "Ungrab when cursor leaves window".
Nếu bạn thắc mắc điều này làm gì, nó ngăn game nhớ chuyển động chuột khi chuột rời máy ảo. Vì vậy nếu bạn "bỏ chuột" bằng cách di chuyển ra khỏi màn hình ảo, ví dụ bên phải, game sẽ không tiếp tục đẩy sang phải. Trong game dùng chuột cuộn bản đồ, bản đồ không tự cuộn. Trong game dùng chuột cho chuyển động và nhắm bắn, như FPS, nhân vật không quay vòng như đĩa. Bài hát này ca sĩ nào? Dead or Alive hay Youthquake?
Cuối cùng, file nên chứa section như sau:
Chúng ta sẵn sàng, boot và test.
Host Windows, guest Windows
Khởi động máy ảo
Sau khi boot, đảm bảo VMware Tools cài và chạy. Bạn biết bằng cách tìm icon VMware trong system tray.
Tiếp, chạy dxdiag để lấy chẩn đoán màn hình (Start > Run > dxdiag):
Chú ý DirectX Features. Chúng ta có DirectDraw và Direct3D bật. AGP Texture Acceleration không có, tuy nhiên. Đủ tốt. Không phải tốt nhất, nhưng đủ tốt. Phần Device, thấy driver VMware cài và có 64MB RAM.
Test game
Ứng cử viên: Max Payne và Scorched3D:
Chạy ổn. Hiệu suất hợp lý. Không mượt hay nhanh như nền tảng native, nhưng bước đúng hướng.
Host Linux, guest Windows
Tương tự, chạy được trên máy Linux. Không chỉ đó, tôi kết nối từ xa đến máy Windows, nơi máy ảo đặt, và chạy từ đó, dùng kết nối Wireless!
Kết luận
Setup đơn giản. Tăng tốc 3D chạy. Hiện tại, nó tương đương khoảng card GeForce 2/4. Có thể chút hơn. Nhưng hãy coi đây như đứa trẻ, lớn lên thành "3D bully". Đây là bước tiến khổng lồ và quan trọng cho fan ảo hóa hardcore. Trong bài tiếp, chúng ta sẽ thấy điều tương tự dùng VirtualBox và ứng dụng OpenGL.
Thưởng thức!