ওয়াইন কীভাবে এমুলেটর নয়?


23

যেমন আমি অনুকরণকারীকে বুঝতে পারি (একটি সহজ উপায়ে), তারা সিস্টেম এক্স এর ফাংশন ব্যবহার করে একটি সিস্টেমের ফাংশন কলগুলি সিস্টেম ওয়াই দ্বারা ব্যবহৃত ফাংশনগুলিতে অনুবাদ করে বা প্রতিস্থাপন করে যেখানে প্রোগ্রামটি চালানো হচ্ছে। ওয়াইন প্রকল্প দাবি করে যে ওয়াইন কোনও এমুলেটর নয়, কারণ:

কোনও ভার্চুয়াল মেশিন বা এমুলেটরের মতো অভ্যন্তরীণ উইন্ডোজ যুক্তিকে সিমুলেট করার পরিবর্তে ওয়াইন উইন্ডোজ এপিআই কলগুলি পসিক্স কলগুলিতে অন-ফ্লাইয়ে অনুবাদ করে, অন্যান্য পদ্ধতির কর্মক্ষমতা এবং মেমরির জরিমানা সরিয়ে দেয় এবং আপনাকে উইন্ডোজ অ্যাপ্লিকেশনগুলিকে পরিষ্কারভাবে আপনার ডেস্কটপে সংহত করতে দেয়।

ঠিক আছে, এমুলেটর এবং ভার্চুয়াল মেশিনগুলি হোস্ট নন-উইন্ডোজ সিস্টেমগুলিতে কীভাবে অভ্যন্তরীণ উইন্ডোজ লজিকের অনুকরণ করে? উইন্ডোজ সিস্টেম কলগুলি হোস্টের নিজস্ব কলগুলিতে অনুবাদ করে তা নয় কি? এমুলেটর এবং অ-ইমুলেটরগুলির মধ্যে (ওয়াইনের মতো) পার্থক্যটি হ'ল এমুলেটরগুলি একটি সম্পূর্ণ অপারেটিং সিস্টেম অনুকরণ করে তবে অ্যাপ্লিকেশনটি কোনও সিস্টেমের সাথে কথা বলছে তা জেনেও সেই সিস্টেমের এপিআইগুলি ব্যবহার করে, যখন অ-ইমুলেটরগুলি সরাসরি অ্যাপ্লিকেশনগুলির কলগুলি হোস্টের মধ্যে অনুবাদ করে ( এবং অ্যাপ্লিকেশনটিও এটি জানেন না)? অনুকরণের অতিরিক্ত স্তরটি কি অনুকরণকারী এবং ওয়াইনগুলির মধ্যে একমাত্র পৃথক?


7
সাধারণত যখন কম্পিউটার মনের লোকেরা "এমুলেটর" শব্দটি ব্যবহার করে, তখন তাদের অর্থ একটি হার্ডওয়্যার এমুলেটর, সফ্টওয়্যার যা হার্ডওয়্যারকে অনুকরণ করে। সেই অর্থে ওয়াইন কোনও এমুলেটর নয়। তবে শব্দটির অভিধানে ওয়াইন উইন্ডোজকে অনুকরণ করে এবং সেই অর্থে আপনি ওয়াইনকে উইন্ডোজ এমুলেটর বলতে পারেন।
ক্রিস্টোফার হামারস্ট্রিম

1
WINE হ'ল কিছুটা প্রসারিত ব্যাক্রোনিয়াম, এক ধরণের রসিকতা যা প্রথমে WINE তৈরি করার জন্য ব্যক্তিত্বের কাছে আবেদন করে।
আরবেরটিগ

উত্তর:


29

ঠিক আছে, এমুলেটর এবং ভার্চুয়াল মেশিনগুলি হোস্ট নন-উইন্ডোজ সিস্টেমগুলিতে কীভাবে অভ্যন্তরীণ উইন্ডোজ লজিকে অনুকরণ করে? উইন্ডোজ সিস্টেম কলগুলি হোস্টের নিজস্ব কলগুলিতে অনুবাদ করে তা নয় কি?

না, বা কমপক্ষে WINE যে অর্থে হয় তা নয় - আক্ষরিকভাবে অনুবাদ করে সিস্টেমটি ব্যবহারকারী স্পেসে একে একে কল করে। একটি এমুলেটর একটি আরও সার্কিটাস রুট দিয়ে বিমূর্তভাবে এটি করে; এটি সরাসরি সিস্টেম কলগুলি অনুবাদ করে না।

সত্যিকারের এমুলেটর একটি ভার্চুয়াল মেশিন তৈরি করে (উদাহরণস্বরূপ x86-64), ভার্চুয়াল অপারেটিং সিস্টেম নয় । এরপরে আপনি তাত্ত্বিকভাবে যেকোন অপারেটিং সিস্টেম চালাতে পারেন যে মেশিনের স্টাইলটিকে লক্ষ্য করে। সাধারণত একটি "এমুলেটর" অপারেটিং সিস্টেম অন্তর্ভুক্ত, কিন্তু এটি সত্যিই তা অনুকরণ করছে না; এটিতে যে ওএস অন্তর্ভুক্ত রয়েছে তা হ'ল আসল মেশিনে চালিত।

এমুলেটরগুলি কখনও কখনও হোস্টিং মেশিনের থেকে আলাদা হার্ডওয়্যার অনুকরণ করতে ব্যবহৃত হয়, তবে হার্ডওয়্যার যা অন্যের মধ্যে একটি ওএস চালানোর উদ্দেশ্যে একই রকম হয়।

WINE এটির থেকে আলাদা কারণ এটি আসলে উইন্ডো নয়। আপনি এর ভিতরে উইন্ডোজের আসল অনুলিপি সহ একটি x86-64 এমুলেটর চালাতে পারেন, তবে WINE কী তা নয়। তাদের দাবি যে এটি বাস্তবে কোনও এমুলেটর থেকে বোঝার চেয়ে আরও কার্যকরী - কেবলমাত্র সিস্টেম কল অনুবাদ করার জন্য ওভারহেড সম্ভবত কোনও ভিএম চালানোর চেয়ে কম। অসুবিধাটি হ'ল WINE কেবল উইন্ডো হতে পারে; আপনি অন্য কোনও ওএসের সাহায্যে এটি ব্যবহার করতে পারবেন না কারণ আপনি একটি সাধারণ ভিএম করতে পারেন ।


13

জাভা ভার্চুয়াল মেশিনগুলি বিবেচনা করুন। কোনও জেভিএম অন্য কোনওকে এমুলেট করে না, তারা সমস্তই একটি নির্দিষ্টকরণের বাস্তবায়ন। ওয়াইন win32 এপিআই অনুকরণ করে না, এটি এটি বাস্তবায়ন। মাইক্রোসফ্টের বাস্তবায়ন এবং ওয়াইন এর বাস্তবায়ন উভয়ই বগি কোডটিকে কার্যকরী করার জন্য মাইক্রোসফ্টের বাস্তবায়ন এবং ওয়াইন এর বাস্তবায়ন উভয়ই মিলে না Spec


4

ওয়াইন হ'ল শিম যা উইন্ডোজ এপিআই কলগুলিকে বাধা দেয় এবং এটিকে ফ্লাইতে সংশ্লিষ্ট লিনাক্স এপিআই কলগুলিতে রূপান্তর করে। একটি এমুলেটর বা ভার্চুয়াল মেশিন পরিবর্তে একটি শারীরিক মেশিন অনুকরণ করে। স্পষ্টতই একটি শিম আরও দক্ষ, তবে কাঙ্ক্ষিত কার্যকারিতা নকল করতে পুরোপুরি সক্ষম নাও হতে পারে।


0

এমুলেটরগুলি প্রসেসর এবং / অথবা ওএসকে ভার্চুয়ালাইজ করে যা সাধারণত অন্যটি ওএস / প্রসেসরের প্ল্যাটফর্মের শীর্ষে চলে আসে এমুলেটর অ্যাপ্লিকেশনটিতে ওএস / প্রসেসর প্ল্যাটফর্মের যুক্তি এবং আচরণ তৈরি করে একটি উইন্ডোজ অ্যাপ্লিকেশন চালায়। ওয়াইন উইন্ডোজ ওএস / প্রসেসরের আচরণটি ভার্চুয়ালাইজ করে না বরং উইন্ডোজ অ্যাপ্লিকেশনটিকে উইন্ডোজ ওএসের মতো বিমূর্ততার একই স্তরে চালায়। এটি ইউনিক্স-ভিত্তিক ওএস / প্রসেসর প্ল্যাটফর্মে সরাসরি চালানোর জন্য উইন্ডোজ এপিআই পুনরায় প্রয়োগ করে এটি করে। অর্থাৎ ওয়াইন হ'ল উইন্ডোজ ওএসের মূল উপাদানগুলির একটি পুনরায় বাস্তবায়ন, সংকলিত ডিএলএলগুলির একটি সেট যা সরাসরি উইন্ডোজ এপিআই কল কল অনুরোধগুলিকে সমতুল্য ইউনিক্স-ভিত্তিক কোডে অনুবাদ করে যা সরাসরি শারীরিক প্রসেসরের সাথে যোগাযোগ করে।

এর অর্থ এই যে কখনও কখনও রান-টাইম প্রসঙ্গ রয়েছে যা ওয়াইন + লিনাক্সকে উইন্ডোজের চেয়ে দ্রুত উইন্ডোজ অ্যাপ্লিকেশন চালানোর অনুমতি দেবে! কোনও এমুলেটর কখনই সেই সম্ভাবনা থাকতে পারে না কারণ এর কোডটি ইউনিক্স-ভিত্তিক প্ল্যাটফর্মের শীর্ষে বিমূর্ততার উচ্চ স্তরে সিপিইউ / উইনোএস প্ল্যাটফর্মের সিমুলেট করতে ব্যস্ত থাকবে। এই ক্ষেত্রে, উইন্ডোজ অ্যাপ্লিকেশনটি চালানোর জন্য আরও অনুবাদ এবং ইন্টারফেসের প্রয়োজন। (নীচের চিত্রটি দেখুন)

সংক্ষেপে, ওয়াইন উইন্ডোজের পুনরায় বাস্তবায়ন, উইন্ডোজের অনুকরণ নয়।

এখানে চিত্র বর্ণনা লিখুন

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.