Burroughs Medium Systems
بروس B2500 تھرو بروس B4900 مین فریم کمپیوٹرز کا ایک سلسلہ تھا جسے بروس کارپوریشن نے پاساڈینا، کیلیفورنیا، ریاستہائے متحدہ میں 1966 سے 1991 تک تیار اور تیار کیا تھا۔ ان کا مقصد کاروباری دنیا کے لیے ایک انسٹرکشن سیٹ تھا جسے کوبول پروگرامنگ زبان کے لیے بہتر بنایا گیا تھا۔ بوروز لارج سسٹمز اور بوروز سمال سسٹمز کے برعکس انہیں بوروز میڈیم سسٹمز کے نام سے بھی جانا جاتا تھا۔ تاریخ اور فن تعمیر پہلی نسل B2500 اور B3500 کمپیوٹرز کا اعلان 1966 میں کیا گیا تھا۔ انہوں نے براہ راست کوبول-68 کے بنیادی اعشاری اعداد و شمار کی اقسام پر کام کیا: 100 ہندسوں تک کے تار، ایک ای بی سی ڈی آئی سی یا اے ایس سی آئی آئی ہندسوں کے کردار یا دو 4 بٹ بائنری کوڈڈ اعشاری بی سی ڈی ہندسوں فی بائٹ کے ساتھ۔ پورٹیبل کوبول پروگراموں نے بائنری انٹیجرز کا بالکل استعمال نہیں کیا، اس لیے B2500 نے یا تو نہیں کیا، یہاں تک کہ میموری پتے کے لیے بھی نہیں۔ میموری کو 5 ہندسوں کے اعشاریہ پتے کا استعمال کرتے ہوئے بگ اینڈین انداز میں 4 بٹ ہندسوں تک مخاطب کیا گیا تھا۔ فلوٹنگ پوائنٹ نمبروں میں کچھ بائنری بیس کے بجائے بیس 10 کا بھی استعمال کیا جاتا تھا، اور اس میں 100 مینٹیسا ہندسوں تک ہوتے تھے۔ ایک عام کوبول بیان 'ADD A، B Giving C' مختلف لمبائی، مختلف ہندسوں کی نمائندگی، اور مختلف اشاروں کی نمائندگی کے آپریینڈ استعمال کر سکتا ہے۔ یہ بیان 3 میموری آپریڈز کے ساتھ ایک واحد 12 بائٹ ہدایات میں مرتب کیا گیا ہے۔ پرنٹنگ کے لیے پیچیدہ فارمیٹنگ تفصیلی فارمیٹ ڈسکرپٹرز کے ساتھ ایک واحد ای ڈی آئی ٹی ہدایت پر عمل درآمد کے ذریعے مکمل کی گئی تھی۔ نافذ کردہ دیگر اعلی سطحی ہدایات "اس بفر کو اس کے ذریعے ترجمہ کریں (مثال کے طور پر۔ ای بی سی ڈی آئی سی سے اے ایس سی آئی آئی) ٹیبل کو اس بفر میں تبدیل کریں "اور" اس ٹیبل کو اس ترتیب کی ضروریات کا استعمال کرتے ہوئے اس ٹیبل میں ترتیب دیں "۔ انتہائی صورتوں میں، واحد ہدایات ایک سیکنڈ کے کئی سوویں حصے تک چل سکتی ہیں۔ ایم سی پی زیادہ لمبی ہدایات کو ختم کر سکتا تھا لیکن جزوی طور پر مکمل کردہ ہدایات کو روک کر دوبارہ شروع نہیں کر سکتا تھا۔ (پیج اسٹائل ورچوئل میموری کرنے کے لیے دوبارہ شروع کرنا ایک شرط ہے جب صفحہ کی حدود کو پار کرتا ہے۔) مشین کوبول سے اتنی قریب سے میل کھاتی تھی کہ کوبول مرتب کرنے والا سادہ اور تیز تھا، اور کوبول پروگرامرز کو اسمبلی پروگرامنگ کرنا بھی آسان لگا۔ اصل انسٹرکشن سیٹ میں، تمام آپریشن صرف میموری سے میموری تھے، جس میں کوئی مرئی ڈیٹا رجسٹر نہیں تھا۔ ریاضی سیریل طور پر کی جاتی تھی، ایک وقت میں ایک ہندسہ، جو سب سے زیادہ اہم ہندسوں سے شروع ہوتا تھا اور پھر دائیں طرف کم سے کم اہم ہندسوں تک کام کرتا تھا۔ یہ دستی دائیں سے بائیں طریقوں سے پیچھے کی طرف ہے اور زیادہ پیچیدہ ہے، لیکن اس نے اوور فلو کے معاملات میں تمام نتیجہ تحریر کو دبانے کی اجازت دی۔ سیریل ریاضی نے کوبول کے لیے بہت اچھا کام کیا۔ لیکن فورٹرن یا بی پی ایل جیسی زبانوں کے لیے، یہ معیاری لفظ پر مبنی کمپیوٹرز کے مقابلے میں بہت کم موثر تھا۔ تین ریزروڈ میموری مقامات کو ایڈریس انڈیکسنگ 'رجسٹرز' کے طور پر استعمال کیا گیا۔ تیسرا انڈیکس رجسٹر کال/ریٹرن اسٹیک پر موجودہ طریقہ کار کے اسٹیک فریم کی طرف اشارہ کرنے کے لیے وقف تھا۔ دیگر ریزروڈ میموری مقامات آپریڈ سائز کو کنٹرول کرتے تھے جب وہ سائز مستقل نہیں ہوتا تھا۔ B3500 B2500 سے ملتا جلتا تھا لیکن تیز سائیکل ٹائم اور زیادہ توسیعی انتخاب کے ساتھ۔ B2500 میں زیادہ سے زیادہ 60 K بائٹس کی بنیادی میموری اور 2 مائیکرو سیکنڈ سائیکل کا وقت تھا۔ B3500 میں زیادہ سے زیادہ 500 K بائٹس اور 1 مائیکرو سیکنڈ سائیکل ٹائم تھا۔ B 2500/3500 کا وزن تقریبا. اس کے بعد کی مشینوں کی نسلیں B2500/B3500 مشینوں کے بعد 1972 میں B2700/B3700/B4700 ؛ 1976 میں B2800/B3800/B4800، 1980 میں B2900/B3900/B4900 (جو ہارڈ ویئر صرف پڑھنے والی میموری کے طور پر لاگو کرنے کے بجائے فلاپی ڈسک سے اپنے مائیکرو کوڈ کو لوڈ کرنے والی رینج کا پہلا تھا) اور آخر میں یونیسیس V سیریز مشینیں V340-V560 1985-90 میں۔ B4800 سے پہلے کی مشینوں میں کیش میموری نہیں تھی۔ ہر آپریڈ بائٹ یا رزلٹ بائٹ کے لیے اس کے اپنے علیحدہ مین میموری سائیکل کی ضرورت ہوتی ہے، جو پروگرام کی کارکردگی کو محدود کرتا ہے۔ اس کی تلافی کے لیے، B3700/B4700 نسل نے سیمی کنڈکٹر مین میموری کا استعمال کیا جو مسابقتی مشینوں میں استعمال ہونے والے DRAM سے تیز لیکن زیادہ مہنگی اور طاقت سے بھرپور تھی۔ میموری پتے کے طور پر اعشاریہ نمبروں کا غیر معمولی استعمال ابتدائی طور پر کوئی مسئلہ نہیں تھا۔ اس میں بنیادی میموری کی قطار کے انتخاب اور بینک کے انتخاب میں 1-ان-8 ڈیکوڈر منطق کے بجائے 1-ان-5 کا استعمال شامل تھا۔ لیکن بعد کی مشینوں نے معیاری میموری چپس کا استعمال کیا جو بائنری پتے کی توقع کرتے تھے۔ منطقی میموری کے ہر 1000 بائٹ کے بلاک کو ایک چپ میں 1024 بائٹس کے ذیلی سیٹ پر معمولی طور پر نقشہ بنایا جا سکتا ہے جس میں صرف 2.3 ٪ فضلہ ہوتا ہے۔ لیکن گھنے چپس اور بڑی کل یادوں کے لیے، پورے اعشاریہ پتے کو چپس پر ایڈریس بھیجنے سے پہلے ایک چھوٹی نیم بائنری شکل میں کچلنا پڑتا تھا، اور ہر کیش یا میموری سائیکل کے لیے دوبارہ کرنا پڑتا تھا۔ اس تبدیلی کی منطق نے مشین سائیکل کو کسی حد تک سست کر دیا۔ 1975 میں ایڈریس اسپیس کے نئے ڈیزائن کی کوشش کو "میڈیم سسٹمز تھرڈ جنریشن" کے لیے ایم ایس-3 کہا گیا، لیکن اس منصوبے کو منسوخ کر دیا گیا۔ B2900 سے پہلے کی مشینوں نے ان پٹ نمبروں کو 9 سے اوپر 'ان ڈیجیٹ' اقدار کے ساتھ اجازت دی، لیکن اس پر ریاضی نے غیر متعینہ نتائج دیے۔ یہ ایم سی پی کے اندر ہیکساڈیسیمل ریاضی کی ایک شکل کے طور پر اور کچھ ایپلیکیشن پروگرامرز کے ذریعہ بھی استعمال کیا جاتا تھا۔ بعد کے ورژنوں نے اسے بند کر دیا اور اس کے بجائے بوروز کے میموریکس کے حصول کے بعد دستیاب ہارڈ ڈرائیوز کو ایڈریس کرنے میں مدد کے لیے دو نئے اوپی کوڈز (بائنری سے اعشاریہ اور اعشاریہ سے بائنری) کی حمایت کی۔ منسوخی اور ریٹائرمنٹ یونیسیس نے 1991 میں مزید وی سیریز ہارڈ ویئر ڈویلپمنٹ کو منسوخ کر دیا، اور سپورٹ 2004 میں ختم ہو گئی۔ B4900 اور بعد کی مشینوں میں، 10 ہندسوں یا اس سے کم کے انٹیجر آپریشنز کو اب متوازی طور پر سنبھالا جاتا تھا۔ صرف طویل آپریڈز سیریل طریقہ استعمال کرتے رہے۔ اور تمام فلوٹنگ پوائنٹ آپریشنز درستگی کے 17 ہندسوں تک محدود تھے۔ بعد میں میڈیم سسٹمز مشینوں نے 32 بٹ، 7 ہندسوں کے انٹیجرز اور 48 بٹ یا 80 بٹ فلوٹنگ پوائنٹ ویلیوز کا استعمال کرتے ہوئے ایک ایکمولیٹر رجسٹر اور ایکمولیٹر/میموری ہدایات شامل کیں، یہ سب 16 بٹ لفظ کی حدود پر سیدھے ہوئے تھے۔ آپریٹنگ سسٹم کو ماسٹر کنٹرول پروگرام کے لیے ایم سی پی کہا جاتا تھا۔ اس نے بروس کی لارج سسٹمز اسٹیک مشینوں کے ایم سی پی کے ساتھ بہت سی تعمیراتی خصوصیات کا اشتراک کیا، لیکن اندرونی طور پر بالکل مختلف تھا، اور اسے اسمبلی زبان میں کوڈ کیا گیا تھا، نہ کہ ALGOL مشتق۔ پروگراموں میں علیحدہ ایڈریس خالی جگہیں تھیں جنہیں بیس رجسٹر کے ذریعے متحرک طور پر منتقل کیا گیا تھا، لیکن بصورت دیگر کوئی ورچوئل میموری نہیں تھی ؛ کوئی پیجنگ اور کوئی سیگمنٹشن نہیں تھا۔ بڑے پروگراموں کو واضح اوورلے کے ذریعے محدود کوڈ ایڈریس کی جگہ میں دبا دیا گیا۔ ایم سی پی کے غیر رہائشی حصے بھی بہت زیادہ ڈھکے ہوئے تھے۔ ابتدائی طور پر، کوڈ اور ڈیٹا نے ایک واحد 300,000 ہندسوں کے ایڈریس کی جگہ کا اشتراک کیا۔ بعد کی مشینوں میں پروگرام کوڈ اور عمل کے ڈیٹا کے لیے علیحدہ ملین ہندسوں کی جگہیں تھیں۔ ہدایات کے ایڈریس فیلڈز کو پانچ ہندسوں سے بڑھا کر چھ ہندسوں تک کر دیا گیا، اور چار مزید حقیقی انڈیکس رجسٹر شامل کیے گئے۔ ابتدائی مشینیں اب کے معیاری متحرک ہیڈ پلیٹر ڈسک کے بجائے بروس کے ہیڈ پر ٹریک ڈسک سسٹم کا استعمال کرتی تھیں۔ ایم سی پی کو تیز کرنے کی ایک کوشش میں، اس کے اوورلے کو احتیاط سے ترتیب دیا گیا تھا تاکہ ممکنہ طور پر اگلے اوورلے موجودہ اوورلے کے مکمل ہونے کے فورا بعد اپنے ریڈ ہیڈ پر پہنچ جائیں۔ یہ ابتدائی تاخیر لائن اور ڈرم کمپیوٹرز پر وقت پر منحصر ترتیب کی اصلاح سے ملتا جلتا تھا۔ لیکن سافٹ ویئر کی تبدیلیوں کے بعد اسے برقرار رکھنا ناقابل عمل ثابت ہوا، اور تمام ایم سی پی اوورلیز کی مکمل طور پر بے ترتیب ترتیب کے ساتھ بہتر نتائج مستقل طور پر حاصل کیے گئے۔ آپریٹنگ سسٹم کے علاوہ، تمام سسٹم سافٹ ویئر کو بی پی ایل (بروس پروگرامنگ لینگویج) میں کوڈ کیا گیا تھا، جو کہ ALGOL اور لارج سسٹم کی ESPOL سسٹمز زبان سے ماخوذ ایک سسٹم پروگرامنگ زبان ہے۔ ابتدائی کوبول مرتب نے اے این ایس آئی 68 تفصیلات کی حمایت کی اور ان لائن اسمبلی زبان کوڈنگ کی اجازت دینے کے لیے انٹر سمبولک نحو کی حمایت کی، لیکن رشتہ دار اور انڈیکسڈ فائل سپورٹ کے لیے حمایت کا فقدان تھا۔ انہیں بعد میں مرتب کے اے این ایس آئی 74 ورژن میں شامل کیا گیا، جو 1982 میں جاری کیا گیا تھا۔ ایم سی پی نے پروگراموں کو کور ٹو کور ٹرانسمیشنز (سی آر سی آر) کے ذریعے یا اسٹوریج کیوز (ایس ٹی او کیو) کا استعمال کرتے ہوئے ایک دوسرے کے ساتھ بات چیت کرنے کی اجازت دی، جسے بی سی ٹی ہدایات کا استعمال کرتے ہوئے سسٹم کالز کے طور پر لاگو کیا گیا اور زبانوں (کوبول فل فرام/انٹو) سے بے نقاب کیا گیا۔ اس وقت کے سب سے بڑے آئی بی ایم سسٹم/360 سسٹمز کے علاوہ اس کے بارے میں کچھ نہیں سنا گیا تھا، اور اس کے باوجود بھی متعدد پروگرام اسٹریمز کے تعاملات کو سنبھالنا ایک بڑا آپریشنل سر درد تھا۔ استعمال اور میراث میڈیم سسٹمز سیریز بہت موثر ملٹی پروگرامنگ مشینیں تھیں۔ یہاں تک کہ B2500 کے بہت ہی بنیادی ورژن قابل استعمال پیمانے پر ملٹی پروگرامنگ کی حمایت کر سکتے ہیں۔ بڑے میڈیم سسٹمز پروسیسرز نے بینکوں اور دیگر مالیاتی اداروں کے ساتھ ساتھ بہت سے کاروباروں اور سرکاری صارفین کے لیے بڑے ڈیٹا سینٹر کی سرگرمیوں کی حمایت کی۔ میڈیم سسٹم بہت سے ڈیٹا پروسیسنگ پیشہ ور افراد کے لیے ترجیحی پلیٹ فارم تھا۔ میڈیم سسٹم کے ساتھ، ایک کمپیوٹر بیک وقت بیچ پے رول سسٹم چلا سکتا ہے، ایم آئی سی آر ریڈر سارٹر پر بینک چیک داخل کر سکتا ہے، کوبول ایپلی کیشنز کو مرتب کر سکتا ہے، آن لائن لین دین کی حمایت کر سکتا ہے، اور نئی ایپلی کیشنز پر ٹیسٹ رن کر سکتا ہے (جسے بول چال میں 'مکس' کہا جاتا ہے، جیسا کہ کنسول کمانڈ 'ایم ایکس' سے پتہ چلتا ہے کہ نوکریاں چل رہی تھیں)۔ درمیانے درجے کے B2500 پر آٹھ یا دس پروگرام چلانا کوئی غیر معمولی بات نہیں تھی۔ میڈیم سسٹم کی تنصیبات میں اکثر مقناطیسی ٹیپ ان پٹ اور آؤٹ پٹ کے لیے ٹیپ کلسٹرز (درمیانی اونچائی والی کابینہ میں مربوط چار ڈرائیوز) ہوتے تھے۔ فری اسٹینڈنگ ٹیپ ڈرائیوز بھی دستیاب تھیں، لیکن وہ بہت زیادہ مہنگی تھیں۔ ٹیپ ان کمپیوٹرز پر اسٹوریج کا ایک بڑا ذریعہ تھا، ابتدائی دنوں میں یہ اکثر باپ بیٹے کے بیچ کو اپ ڈیٹ کرنے کے لیے استعمال ہوتا تھا۔ وقت گزرنے کے ساتھ ساتھ اضافی ڈسک سستی ہوتی گئی اور اسے لائبریری/بیک اپ ڈیوائس کے طور پر منتقل کر دیا گیا جس میں تمام ڈیٹا فائلیں اور بعض اوقات پروگرام فائلیں (ایم ایف ایس او ایل ٹی یوٹیلیٹی کا استعمال کرتے ہوئے) کسی خاص ایپلی کیشن یا گاہک/کلائنٹ کے لیے ہوتی تھیں۔ کوبول سے مشین کوڈ ٹیپ رہائشی ڈسک فائلیں کارڈ ان پٹ کارڈ اور پرنٹ سپولنگ کے لیے جاب ہیڈر میں نے اکاؤنٹنگ سسٹم (پیرامیٹر سے چلنے والا) کیا-نامعلوم B2500 صارف حوالہ جات بروس کے مین فریم کمپیوٹرز کی ایک خالی آیت کوبول ہائی لیول لینگویج کمپیوٹر آرکیٹیکچر ٹرانجسٹورائزڈ کمپیوٹرز 1966 16 بٹ کمپیوٹرز میں کمپیوٹر سے متعلق تعارف