"কোনও মোড বিট নয়" এর ডেটা জেনারেল এমভি / 8000 গুণাবলী


10

আমি ট্রেসি কিডারের "একটি নতুন মেশিনের সোল" পড়ছি যেখানে ডেটা জেনারেলের একটি দল একটি নতুন মেশিন ডিজাইন করে ("agগল" নামে পরিচিত, যার নাম এমভি / 8000 রাখা হয়েছে)। এটি পূর্ববর্তী স্থাপত্যের 32-বিট এক্সটেনশন (16-বিট Eclipse)। ঘূর্ণায়মান থিমগুলির মধ্যে একটি মনে হয়, তারা একটি মোড বিট দিয়ে কোনও মেশিন তৈরি করতে চায় না এবং তারা এতে সফল হয়েছিল।

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

এটি কীভাবে অর্জিত হয়েছিল তার বর্ণনাটি আমি পেয়েছি:

http://people.cs.clemson.edu/~mark/330/kidder/no_mode_bit.txt

এটি মূলত নতুন নির্দেশাবলীর জন্য অপকোড জায়গার আগের অব্যবহৃত অংশটি ব্যবহার করার বিষয়ে বলে মনে হচ্ছে। আমি অবশ্যই স্বীকার করতে পারি যে আমি "হতাশ" তাই কিছুটা হতাশ ছিলাম। এছাড়াও আমি মনে করি এটি এখনও কিছু প্রশ্ন উত্তরহীন রেখে গেছে:

প্রথমত, 16-বিট প্রক্রিয়াগুলি 32-বিট ঠিকানার জায়গায় কীভাবে বাস করে? কারণ আমি মনে করি এটি "মোড বিট ছাড়াই" 32-বিট এক্সটেনশন করার মূল চ্যালেঞ্জ। অন্যদিকে, নির্দেশের সেটটি প্রসারিত করা একটি তুলনামূলক সাধারণ উদ্যোগ aking যেহেতু এটি কীভাবে ঘটেছিল তার কোনও বর্ণনা নেই বলে ধরে নেওয়া যেতে পারে যে 16-বিট কোডটি সর্বদা মেমরির অ্যাক্সেসের অ্যাক্সেস করে, সম্ভবত এটি মেমরির কিছু ধরণের ভার্চুয়ালাইজড / ব্যাঙ্কড ভিউ দেখে (নতুন সিপিইউ নিবন্ধগুলি যেখানে প্রথম ঠিকানাটি নিয়ন্ত্রণ করে সেখানে) বা এরকম কিছু. তবে এর থেকেও আরও কিছু আছে কিনা আমি জানি না। সেক্ষেত্রে যে কেউ তর্ক করতে পারে এটি একটি "মোড বিট" সমাধান sort 16-বিট মোড প্রক্রিয়াগুলি সিপিইউতে যুক্ত বিশেষ বৈশিষ্ট্যগুলির কারণে অন্যান্য প্রক্রিয়াগুলির পাশাপাশি চলতে পারে।

দ্বিতীয়ত, মোড বিট ছাড়াই মেশিন তৈরি করার পক্ষে কেন এত আবেদন করা হয়েছিল? বইটিতে উল্লেখ করা অনেক সুবিধা হ'ল গ্রাহকরা পুরানো সফ্টওয়্যার চালাতে চেয়েছিলেন। তবে এটি কোনও মোড বিটের বিপরীতে কথা বলে মনে হচ্ছে না, যেহেতু মোড বিট ব্যবহারের পুরো উদ্দেশ্যটি পিছনের দিকের সামঞ্জস্যতা। যখন এএমডি x86 কে 64-বিটগুলিতে প্রসারিত করেছিল, কমপক্ষে "মোড বিট" শব্দটি সম্পর্কে আমার বোঝার অনুসারে তারা যা করেছে তা ছিল মোড বিট যুক্ত করার জন্য। একটি বিশেষ বিট যা U৪-বিট মোডে সিপিইউ তৈরি করবে। এবং আরেকটি বিট যা একটি প্রক্রিয়াটিকে sub৪-বিট মোডের "উপ-মোড" এ চালিত করে তোলে (৩২-বিট অ্যাপ্লিকেশনগুলির সাথে সামঞ্জস্য সক্ষম করতে)। সাবমোডের সারমর্মটি হ'ল সিপিইউ নির্দেশনা প্রবাহটিকে পুরাতন 32-বিট নির্দেশাবলী হিসাবে ব্যাখ্যা করে তবে তৈরি 32-বিট মেমরি অ্যাক্সেসগুলি নতুন পৃষ্ঠা সারণী বিন্যাস (64-বিট সচেতন অপারেটিং সিস্টেমের সেটআপ) ব্যবহার করে সমাধান করা হয় এবং অবশেষে পূর্ণ শারীরিক ঠিকানা স্পেসে ম্যাপ করা। এছাড়াও, 32-বিট কোডটি 64-বিট কোড দ্বারা প্রিম্প্ট করা যেতে পারে। ডেটা জেনারেল সলিউশনের মতো এটিও 32-বিট প্রোগ্রামটি 64-বিট প্রোগ্রামের অধীনে চলতে দেয় (ডিজি ক্ষেত্রে 16 বিট বনাম 32-বিট)। সুতরাং গ্রাহক দৃষ্টিকোণ থেকে দেখা যায় যে কোনও পার্থক্য নেই। সুতরাং একমাত্র উপকারটি বাস্তবায়নের ক্ষেত্রে, নকশাটিকে সহজতর করে তোলা যেতে পারে, তবে বইটি এটি উদ্বেগের মতো বলে মনে হচ্ছে না, যেহেতু মোড বিটটি তখনকার সময়েও সাধারণ বলে মনে হয়েছিল (এবং পরবর্তীকালে আর্কিটেকচারগুলিও এটিকে মনে হয়েছে এটি x64 কেস শো হিসাবে নিয়োগ করেছে)।

আমি নিশ্চিত যে আমি এখানে কিছু মিস করেছি, সুতরাং কেউ যদি এই "ন মোড-বিট" ডিজাইনের প্রযুক্তিগত বিবরণ এবং গুণাবলী সম্পর্কে আরও আলোচনা করতে পারে তবে দুর্দান্ত হবে।


সেই দিনগুলিতে - সাধারণ শব্দের আকার 16-বিট থেকে 32-বিটগুলিতে স্থানান্তরিত করার দিনগুলি - নতুন 32-বিট আর্কিটেকচারের বেশিরভাগেরই একই এমফআর এর 16-বিট লাইন থেকে সম্পূর্ণ আলাদা আলাদা নির্দেশাবলী ছিল - এমনকি তারা কার্যকর করতে পারত এমন কি "মোড বিট" সহ 16-বিট নির্দেশিকা সেট করে। এটি বিপণন অনিশ্চয়তার দিকে নিয়ে যায় কারণ লোকেরা নতুন 32-বিট মেশিনগুলিতে প্রকল্পগুলি আপগ্রেড করে একই এমফ্রির সাথে থাকার কোনও কারণ দেখেনি - যতক্ষণ না এটি একটি নতুন আর্কিটেকচার ছিল কেন যে পরিমাণে এমফআর থেকে নতুন মেশিনগুলির মধ্যে সেরাটি বেছে নিচ্ছেন না। "মোড বিট" এর অভাব একটি সহজ "ইনক্রিমেন্টাল" ট্রানজিশনের পরামর্শ দিয়েছে: অতএব, ডিজির সাথে থাকুন।
ডেভিডবাক

উত্তর:


8

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


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

6

তত্ত্ব অনুসারে "নো মোড বিট" আপনাকে পুরানো, ১--বিট, একেবারে কোনও পরিবর্তন ছাড়াই অপারেটিং সিস্টেম ব্যবহার করার অনুমতি দেয় এবং ওএস 32-বিট অ্যাপ্লিকেশন চালু করতে সক্ষম হবে, যদিও নতুন 32-বিট অ্যাপস আটকে থাকবে ভার্চুয়াল ঠিকানার 16 বিট, তাই 32 বিট রেজিস্টার করুন এবং নতুন নির্দেশাবলী ব্যবহার করতে সক্ষম হতে পারে, কিন্তু যদি তারা চেয়ে বড় ভার্চুয়াল অ্যাড্রেস অ্যাক্সেস অসদাচরণ হবে ।216

একটি মোড বিটের সাহায্যে প্রোগ্রামটি 16-বিট বা 32-বিট কিনা তা নির্ধারণের জন্য পুরানো 16-বিট ওএসটি সংশোধন করতে হবে এবং প্রোগ্রামটি চালু করার আগে মোড বিটটি যথাযথভাবে সেট করতে হবে।

অনুশীলনে, মনে হয় এমভি / 8000 আসলে কিছুটা মোড ছিল। ক্লেমসনে মার্ক স্মোথারম্যানের ওয়েব পৃষ্ঠায় অন্য কোথাও তিনি ডেটা জেনারেল, ইসিআইপিআইএসএসআই এমভি / ৮০০০ এর অপারেশনস অফ অপারেশন , ১৯৮০ পোস্ট করেছেন । আপনি যদি পরিশিষ্ট E তে সন্ধান করেন (পৃষ্ঠা 369 থেকে শুরু করে) আপনি দেখতে পাবেন যে এমভি / 8000 এর দুটি সম্পূর্ণ পৃথক পৃষ্ঠার টেবিল প্রক্রিয়া ছিল। এমভি / 8000 নির্দিষ্ট মেশিনটি সি / 350 এর সাথে পিছনের দিকে সামঞ্জস্যপূর্ণ ছিল এবং সি / 350 এর একটি নির্দিষ্ট 16-বিট মেমরি বরাদ্দ এবং সুরক্ষা ইউনিট ছিল, সেই ইউনিটটি নিয়ন্ত্রণের নির্দিষ্ট উপায়গুলির সাথে। শারীরিক ক্রিয়াকলাপের 32-বিট যৌক্তিকর জন্য আপনি পরিবর্তে ঠিকানা অনুবাদ ইউনিটটি চালু করবেন (31 নং পৃষ্ঠায় শুরু করে অধ্যায় 3 এ বর্ণিত)।

অনুশীলনে এর অর্থ হ'ল আপনি যখন 32-বিট মোডে 16-বিট নির্দেশনাটি প্রয়োগ করেন তখন এটি নির্দিষ্ট করা হয় যে লজিকাল ঠিকানার উচ্চ 16-বিট 0 এ সেট হয় get উচ্চটি কী হয় সে সম্পর্কেও কিছু স্পেসিফিকেশন থাকতে হবে আপনি যখন 16-বিট মোডে 32-বিট নির্দেশনাটি প্রয়োগ করেন তখন কোনও ঠিকানার 16-বিটস, তবে ম্যানুয়ালটি সম্পর্কে আমার সংক্ষিপ্ত উপলব্ধি করার সময় আমি এটি খুঁজে পাইনি।

সুতরাং এটি একটি মোড বিট একটি ভাল বা খারাপ জিনিস কিনা তা কম প্রশ্ন। এটি আরও বেশি যে 16-বিট এবং 32-বিট নির্দেশাবলীর মধ্যে পার্থক্য করার জন্য একটি মোড-বিট ব্যবহার করার কোনও বিশেষ কারণ নেই। 16-বিট নির্দেশাবলী 16-বিট যৌক্তিক ঠিকানা ব্যবহার করে (উচ্চে 16 বিট 0 তে সেট করা থাকে) এবং 16-বিট রেজিস্টার এবং 32-বিট নির্দেশাবলী 32-বিট লজিকাল ঠিকানা এবং 32-বিট রেজিস্টার ব্যবহার করে। পুরানো ওএস নতুন মেশিনে "কেবলমাত্র কাজ করে" তবে আপনি পুরানো ওএসের অধীনে একটি নতুন প্রোগ্রাম চালিয়ে নতুন নির্দেশাবলীর চেষ্টাও করতে পারেন।


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

... "সত্য" 32-বিট সুরক্ষিত মোডে প্রবেশের জন্য মোড বিট (যা পেজিংয়েরও অনুমতি দেয়)। একটি পার্থক্য যদিও 32-বিট মোডে 32-বিট নির্দেশাবলীর এনকোডিংটি 16-বিট মোডে 32-বিট নির্দেশাবলীর এনকোডিং থেকে আলাদা (যেহেতু "ডিফল্ট" পৃথক), তবে ক্ষমতা একই। অন্যদিকে, x86 রূপান্তরটি 64-বিটে নির্দেশের এনকোডিং সম্পূর্ণরূপে পরিবর্তিত হয়েছিল, সুতরাং একটি 32-বিট প্রোগ্রাম (বা 16-বিট প্রোগ্রাম) 64-বিট রেজিস্টারগুলি ব্যবহার করতে পারে না ইত্যাদি জন্য এটি আপডেট হওয়া দরকার / গুলি প্রক্রিয়াটি -৪-বিট মোডে প্রবর্তন করছে ("লং মোড")।
মর্তি

যাইহোক, কেউ এই "নো মোড বিট" নকশাকে চাপ দেওয়ার যোগ্যতা সম্পর্কে প্রশ্ন তুলতে পারেন কারণ প্রথমদিকে একটি মোড বিট রয়েছে এবং এটি খুব কোণার ক্ষেত্রে ("পুরানো ওএস চালানো, এবং নতুন অ্যাপ্লিকেশন") মনে হচ্ছে যেখানে এটি যে কোনও প্রস্তাব দেয় সুবিধা - বেশিরভাগ গ্রাহকরা নতুন ওএস চালাতে চান না যা হার্ডওয়ারটির পুরো সুবিধা নিতে পারে? এখানে গুরুত্বপূর্ণ বৈশিষ্ট্যটি হ'ল নতুন ওএস পুরানো অ্যাপগুলি চালাতে পারে! তবে আমি যে লিঙ্কটি উল্লেখ করেছি, এটি এমনকি সম্ভব নয়, প্রোগ্রামগুলি পুনঃসংযোগ এবং এমনকি পুনরায় সংকলন প্রয়োজন (ও / গুলি পরিবর্তনের কারণে) সিপিইউ কম্প্যাট রেন্ডার করে। মোটা দিক!
মর্তি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.