C.mmp
C.mmp ایک ابتدائی ملٹی پل انسٹرکشن، ملٹی پل ڈیٹا (MIMD) ملٹی پروسیسر سسٹم تھا جسے ولیم وولف (1971) نے کارنیگی میلن یونیورسٹی (CMU) میں تیار کیا تھا۔ نوٹیشن C.mmp گورڈن بیل اور ایلن نیویل کے پی ایم ایس نوٹیشن سے آیا، جہاں ایک سنٹرل پروسیسنگ یونٹ (سی پی یو) کو سی کے طور پر نامزد کیا گیا تھا، ایک قسم کو ڈاٹ نوٹیشن کے ذریعے نوٹ کیا گیا تھا، اور ایم ایم پی ملٹی منی پروسیسر کے لیے کھڑا تھا۔ یہ مشین نویں منزل پر وین ہال میں سی ایم یو میں نمائش کے لیے رکھی گئی ہے۔ ساخت سولہ ڈیجیٹل آلات کارپوریشن پی ڈی پی-11 منی کمپیوٹرز کو پروسیسنگ عناصر کے طور پر استعمال کیا گیا، جسے نظام میں کمپیوٹ ماڈیولز (سی ایم) کہا جاتا ہے۔ ہر سی ایم کے پاس 8K کی مقامی میموری اور پردیی آلات کا ایک مقامی سیٹ تھا۔ چیلنجوں میں سے ایک یہ تھا کہ ایک ڈیوائس صرف اپنے منفرد منسلک پروسیسر کے ذریعے دستیاب تھی، اس لیے ان پٹ/آؤٹ پٹ (I/O) سسٹم (جسے رائے لیوین نے ڈیزائن کیا تھا) نے ڈیوائسز کی کنیکٹوٹی کو چھپایا اور درخواستوں کو ہوسٹنگ پروسیسر تک پہنچایا۔ اگر کوئی پروسیسر نیچے چلا گیا تو اس کے یونیبس سے منسلک آلات دستیاب نہیں ہو سکے، جو مجموعی طور پر سسٹم کی وشوسنییتا میں ایک مسئلہ بن گیا۔ پروسیسر 0 (بوٹ پروسیسر) میں ڈسک ڈرائیوز منسلک تھیں۔ کمپیوٹ ماڈیولز میں سے ہر ایک نے ان مواصلاتی راستوں کا اشتراک کیا: ایک انٹر پروسیسر بس-جو سی ایم کے اے 16x16 کراس بار سوئچ کے درمیان سسٹم وائڈ کلاک، انٹرپٹ، اور پروسیس کنٹرول میسجنگ کو تقسیم کرنے کے لیے استعمال ہوتی ہے-جو ایک طرف 16 سی ایم اور دوسری طرف شیئرڈ میموری کے 16 بینکوں کو جوڑنے کے لیے استعمال ہوتی ہے۔ اگر تمام 16 پروسیسرز میموری کے مختلف بینکوں تک رسائی حاصل کر رہے تھے، تو میموری تک رسائی حاصل کرنے والے تمام بیک وقت ہوں گے۔ اگر دو یا دو سے زیادہ پروسیسرز میموری کے ایک ہی بینک تک رسائی حاصل کرنے کی کوشش کر رہے تھے، تو ان میں سے ایک کو ایک سائیکل پر رسائی دی جائے گی اور باقی کو بعد کے میموری سائیکلوں پر بات چیت کی جائے گی۔ چونکہ پی ڈی پی-11 میں 16 بٹس کا منطقی ایڈریس اسپیس تھا، اس لیے مشترکہ میموری اسپیس کے لیے ایڈریس اسپیس کو 25 بٹس تک بڑھانے کے لیے ایک اور ایڈریس ٹرانسلیشن یونٹ شامل کیا گیا۔ یونیبس فن تعمیر نے جسمانی ایڈریس کے 18 بٹس فراہم کیے، اور دو ہائی آرڈر بٹس کو چار نقل مکانی کے رجسٹروں میں سے ایک کو منتخب کرنے کے لیے استعمال کیا گیا جس نے میموری کا ایک بینک منتخب کیا۔ ان رجسٹروں کا مناسب انتظام کرنا آپریٹنگ سسٹم (او ایس) کرنل کی پروگرامنگ کے چیلنجوں میں سے ایک تھا۔ اصل C.mmp ڈیزائن میں مقناطیسی کور میموری کا استعمال کیا گیا تھا، لیکن اس کی زندگی کے دوران، اعلی کارکردگی والی متحرک بے ترتیب رسائی میموری (رام) دستیاب ہو گئی اور سسٹم کو اپ گریڈ کیا گیا۔ اصل پروسیسرز پی ڈی پی-11/20 پروسیسرز تھے، لیکن حتمی نظام میں، ان میں سے صرف پانچ استعمال کیے گئے تھے۔ باقی 11 پی ڈی پی-11/40 پروسیسرز تھے، جن میں اضافی لکھنے کے قابل مائیکرو کوڈ کی جگہ کے ذریعے ترمیم کی گئی تھی۔ ان مشینوں میں تمام ترامیم سی ایم یو میں ڈیزائن اور بنائی گئی تھیں۔ زیادہ تر 11/20 تبدیلیاں تار سے لپٹے ہوئے بیکپلین میں اپنی مرضی کے مطابق تبدیلیاں تھیں، لیکن چونکہ پی ڈی پی-11/40 کو مائیکرو کوڈ میں لاگو کیا گیا تھا، اس لیے ایک علیحدہ پروک موڈ بورڈ ڈیزائن کیا گیا تھا جس نے کچھ ہدایات کو روکا اور محفوظ آپریٹنگ سسٹم کی ضروریات کو نافذ کیا۔ مثال کے طور پر، آپریٹنگ سسٹم کی سالمیت کے لیے یہ ضروری تھا کہ اسٹیک پوائنٹر رجسٹر کبھی بھی عجیب نہ ہو۔ 11/20 پر، یہ اسٹیک رجسٹر کے لو آرڈر بٹ پر لیڈ کو کلپ کرکے کیا گیا تھا۔ 11/40 پر، اسٹیک تک کسی بھی رسائی کو پروک موڈ بورڈ کے ذریعے روکا گیا اور اگر لو آرڈر بٹ 1 تھا تو ڈیٹا تک رسائی کا غیر قانونی جال بنایا گیا۔ آپریٹنگ سسٹم (او ایس) کو ہائیڈرا کا نام دیا گیا۔ یہ صلاحیت پر مبنی، آبجیکٹ پر مبنی، کثیر صارف، اور ایک مائیکرو کرنل تھا۔ نظام کے وسائل کو اشیاء کے طور پر پیش کیا گیا اور صلاحیتوں کے ذریعے محفوظ کیا گیا۔ او ایس اور زیادہ تر ایپلیکیشن سافٹ ویئر پروگرامنگ زبان BLISS-11 میں لکھا گیا تھا، جس کے لیے پی ڈی پی-10 پر کراس کمپائلنگ کی ضرورت ہوتی تھی۔ او ایس نے اسمبلی کی زبان بہت کم استعمال کی۔ سسٹم پر دستیاب پروگرامنگ زبانوں میں ایک ALGOL 68 ورژن تھا جس میں C.mmp کا اچھا استعمال کرنے کے لیے متوازی کمپیوٹنگ کی حمایت کرنے والی ایکسٹینشنز شامل تھیں۔ ALGOL مرتب کرنے والا مقامی طور پر ہائیڈرا او ایس پر چلتا تھا۔ وشوسنییتا کیونکہ مجموعی طور پر نظام کی وشوسنییتا کا انحصار تمام 16 سی پی یوز کے چلنے پر تھا، مجموعی طور پر ہارڈ ویئر کی وشوسنییتا کے ساتھ سنگین مسائل تھے۔ اگر ایک پروسیسر کی ناکامیوں (ایم ٹی بی ایف) کے درمیان اوسط وقت 24 گھنٹے تھا، تو مجموعی طور پر سسٹم کی وشوسنییتا 16/24 گھنٹے، یا تقریبا 40 منٹ تھی۔ مجموعی طور پر یہ نظام عام طور پر دو سے چھ گھنٹے تک چلتا تھا۔ ان میں سے بہت سی ناکامیاں پروسیسرز میں شامل کیے گئے بہت سے کسٹم سرکٹس میں وقت کی خرابیوں کی وجہ سے تھیں۔ ہارڈ ویئر کی وشوسنییتا کو بہتر بنانے کے لیے بہت کوشش کی گئی، اور جب کوئی پروسیسر نمایاں طور پر ناکام ہو رہا تھا، تو اسے تقسیم کر دیا گیا، اور کئی گھنٹوں تک تشخیص چلتی تھی۔ جب اس نے تشخیص کا پہلا سیٹ پاس کیا تھا، تو اسے I/O پروسیسر کے طور پر دوبارہ تقسیم کیا گیا تھا اور یہ ایپلیکیشن کوڈ نہیں چلائے گا (لیکن اس کے پردیی آلات اب دستیاب تھے) ؛ اس نے تشخیص کو چلانا جاری رکھا۔ اگر یہ مزید کئی گھنٹوں کے بعد گزر گیا تو اسے پروسیسر سیٹ کے مکمل رکن کے طور پر بحال کر دیا گیا۔ اسی طرح، اگر میموری کا ایک بلاک (ایک صفحہ) ناقص پایا گیا، تو اسے دستیاب صفحات کے پول سے ہٹا دیا گیا، اور جب تک دوسری صورت میں مطلع نہیں کیا جاتا، او ایس اس صفحے کو نظر انداز کر دے گا۔ اس طرح، او ایس غلطی برداشت کرنے والے نظام کی ابتدائی مثال بن گیا، جو ہارڈ ویئر کے مسائل سے نمٹنے کے قابل تھا، جو لامحالہ پیدا ہوئے۔ حوالہ جات) قابلیت کے نظام متوازی کمپیوٹنگ کی تاریخ