Ảo hóa kiến trúc X86

Kiến trúc x86 đã được chứng minh là nền tảng thông trị trong điện toán doanh nghiệp, khởi đầu khiêm tốn của nó là trong các hệ thống máy tính để bàn tới nay, tạo ra lượng lớn ứng dụng doanh nghiệp trên toàn cầu.

Tuy nhiên, một số yếu tố từ kiến trúc ban đầu bị đe dọa để hạn chế tốc độ tăng trưởng của nền tảng x86, quan trọng nhất trong số đó là các không gian địa chỉ vật lý được giới hạn 32 bit. Vào năm 2003 Intel và AMD thêm phần mở rộng 64bit để giải quyết sự hạn chế và ngày nay x86_64 gia đình của bộ vi xử lý từ Intel và AMD đã phổ biến từ máy tính xách tay và máy tính để bàn đến các máy chủ cao cấp hỗ trợ hệ thống đa đối xứng quy mô lớn.

Đầu tiên, chúng ta xem qua kiến trúc x86 với thuật ngữ Ring.

RING

Để cung cấp một môi trường hoạt động an toàn, kiến trúc x86 cung cấp một cơ chế để cách ly ứng dụng người dùng từ hệ điều hành bằng cách sử dụng khái niệm về cấp đặc quyền (privilege levels).

Công nghệ ảo hóa phần cứng

Trong mô hình này, bộ vi xử lý (processor) cung cấp 4 cấp đặc quyền hay còn gọi là ring, bắt đầu từ Ring 0 đến Ring 3. Ring 0 có đặc quyền cao nhất, cho phép truy cập đầy đủ phần cứng. Ring 1,2,3 có đặc quyền thấp hơn Ring 0. Trong thực tế, hệ điều hành Linux, window … chạy ở ring 0, các ứng dụng của người sử dụng chạy ở ring 3.

Để hiểu Hypervisor (hay còn gọi là VMM – Virtual Machine Monitor) hoạt động như thế nào, đầu tiên chúng ta cần hiểu mô hình làm việc của OS. Hầu hết mô hình hoạt động của hệ điều hành làm việc với 2 chế độ:

  • User mode: Chỉ cho phép những lệnh cần thiết để tính toán và xử lý dữ liệu. Các ứng dụng chạy ở mode này và chỉ sử dụng phần cứng bằng cách thông qua kernel bằng lời gọi hệ thống (system call).
  • Kernel mode: Cho phép chạy đầy đủ tập lệnh CPU, bao gồm cả các lệnh đặc quyền. Điều tất nhiên là mode này chỉ dành cho hệ điều hành chạy.

Với ảo hóa x86, có một lớp ảo hóa (virtualization layer) nằm giữa phần cứng vật lý và hệ điều hành. Lớp ảo hóa này cho phép nhiều máy ảo chạy nhiều hệ điều hành khác nhau trên 1 máy tính vật lý. Tự động phân vùng và chia sẻ tài nguyên vật lý như CPU, storage, memory và các thiết bị vào ra (I/O).

 

Bài viết liên quan

Hotline tư vấn miễn phí
Sale & Support 24/7

HÀ NỘI

TP HCM