2012-01-22 35 views
9

Tôi đã cố gắng để tìm ra cách VMware làm việc (đặc biệt là khi Linux được cài đặt) và tôi có một vài câu hỏi:máy ảo

  1. gì xảy ra khi VMware gặp một lệnh như push cs? Cụ thể cs vì mức đặc quyền của nó là 0 và VMware chạy trên 1 mức đặc quyền, vì vậy tôi giả sử nó bằng cách nào đó phải dịch nó thành lệnh khác.

  2. Bộ nhớ ảo: Bộ nhớ ảo hoạt động như thế nào trên máy ảo? có 2 cấp độ dịch thuật - xử lý bộ nhớ ảo -> bộ nhớ vật lý máy ảo -> bộ nhớ vật lý thực của máy không? VMware sẽ được thông báo như thế nào khi một trang được hoán đổi bởi máy thật?

+1

Câu hỏi hay. –

+1

Câu hỏi hoàn toàn ngoài chủ đề. – bmargulies

+1

Câu hỏi hay. Tôi quan tâm đến câu trả lời. – alexy13

Trả lời

1
  • Hầu hết các hướng dẫn chạy trực tiếp trên CPU. Nhưng các hướng dẫn đặc quyền gây ra một ngoại lệ, trình xử lý mô phỏng chúng.
  • Bây giờ tôi thấy ý của bạn với ví dụ push cs. Bạn có nghĩa là các chỉ dẫn âm thầm hoạt động khác nhau ở các mức đặc quyền khác nhau. The wikipedia article on x86 virtualization cho biết chúng được dịch là nhị phân, tức là có một giai đoạn biên dịch lại trước khi chạy mã trên CPU chủ.
  • Trong x86 cũ hơn, vmware duy trì các bảng trang bóng. Bảng trang khách phải được mô phỏng, để cho phép vmware theo dõi chế độ xem mà hệ điều hành khách có các bảng trang. Mới hơn x86 có phần mở rộng ảo hóa cho phép một số cấp độ của các bảng trang một cách hiệu quả.
Các vấn đề liên quan