Rượu là một trình giả lập hoặc lớp tương thích?


8

Hôm qua, tôi đã có một cuộc thảo luận sôi nổi với một trong những người bạn của tôi (người dùng Windows). Ông nói Wine chỉ là một trình giả lập. Tôi đã nói không có Rượu nào được đọc là "Rượu không phải là trình giả lập". Sau đó anh ấy đưa cho tôi nhiều liên kết bao gồm trang wiki của WineHQ . "Rượu không phải là loại giả lập" được viết ở đó.

Vì vậy, tôi muốn hỏi nếu Wine là một trình giả lập tại sao nó tự gọi mình là "Wine không phải là một trình giả lập"?


7
Wine là viết tắt của " W ine I s N ot a E mulator".

1
Làm cho anh ta đọc những gì dưới tiêu đề "Rượu không phải là loại giả lập".
Oxwivi

Nó được viết rõ ràng 'Wine không thực hiện bất kỳ mô phỏng CPU nào - do đó tên "Wine không phải là trình giả lập."'
Oxwivi

Rượu không phải là loại giả lập nhưng vẫn là phần mềm giả lập ?? Wine không thực hiện bất kỳ mô phỏng CPU nào sau đó Wine mô phỏng gì?
chơi chữ

nó chỉ mô phỏng các thư viện windows . Vì vậy, các lệnh gọi API từ một phần mềm được mô phỏng, phần còn lại của mã phần mềm thì không, nó chạy một cách tự nhiên.
MestreLion

Câu trả lời:


14

Một chương trình trong Windows sử dụng rộng rãi các thư viện tiêu chuẩn thuộc về Microsoft Windows. Các thư viện này được viết lại và triển khai trong Wine để chúng hoạt động giống nhau. Càng nhiều chương trình được viết tốt và các thư viện tiêu chuẩn, cơ hội chương trình đó sẽ hoạt động trong Wine càng lớn.

Mã của một chương trình được kiểm tra trước tiên để gọi các thư viện Windows. Các cuộc gọi này được dịch để các thư viện của Wine được gọi. Sau đó, mã của chương trình thực hiện ở tốc độ tối đa. Không có mã mô phỏng, nhưng chỉ có các cuộc gọi đến thư viện được dịch.

Do đó, trên lý thuyết. một chương trình sẽ hoạt động nhanh như Microsoft Windows. Trong thực tế, chương trình có thể chậm hơn, vì bản dịch được thực hiện. Nhưng có khả năng một chương trình hoạt động nhanh hơn vì các thư viện của Wine đơn giản hơn và vì truy cập đĩa thường nhanh hơn trong Linux.

Vì Linux sử dụng OpenGL, các chương trình Windows sử dụng OpenGL thường hoạt động tốt trong Wine. Linux không sử dụng DirectX - tuy nhiên, các trò chơi DirectX hoạt động trong Wine vì các cuộc gọi DirectX có thể được dịch bởi các cuộc gọi Wine sang OpenGL.


4
Trong concl bỏng: Wine là một lớp tương thích, không phải là một trình giả lập.
Marco Ceppi

4

Từ cùng một liên kết như liên kết mà bạn đã chỉ ra "Wine không thực hiện bất kỳ mô phỏng CPU nào" Đó là những gì trình giả lập thường làm (wii, psx, n64, v.v.)

Để có câu trả lời đầy đủ hơn, bạn có thể đọc đoạn đầu tiên của liên kết bạn đã cung cấp - tôi không nghĩ rằng ai đó có thể giải thích nó theo cách tốt hơn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.