آلة مرنة

تم تطوير نظام الكمبيوتر المرن بواسطة مايكل فوستر وإيان كوري من مؤسسة الإشارات والرادار الملكية (RSRE) [ 1 ] في مالفيرن ، إنجلترا، خلال أواخر السبعينيات والثمانينيات. وقد استخدم نظام تخزين موسوم لتنفيذ بنية القدرات ، وتم تصميمه للتنفيذ الآمن والفعال للإجراءات ذات الأنواع القوية.

كانت الأجهزة مصممة خصيصًا وقابلة للبرمجة الدقيقة، مع نظام تشغيل، ومترجم (وحداتي)، ومحرر، ونظام ملفات، وكلها مكتوبة بلغة ALGOL 68RS .

تم تنفيذ أربعة إصدارات على الأقل من Flex باستخدام أجهزة مزودة ببرمجيات دقيقة قابلة للكتابة . استخدم الإصدار الأول تعليمات دقيقة 64 بت. [ 2 ] : 25 تبع ذلك تصميم يستخدم تعليمات دقيقة 80 بت مبني على عائلة شرائح البت Am2900 ، والذي طورته RSRE كنموذج تجريبي، ثم قامت Logica بتحسينه بهدف إنتاج نموذج أولي قابل للتكرار بشكل موثوق. دعم هذا التصميم حجم كلمة معالج 24 بت، مع مؤشرات 24 بت تشير إلى ذاكرة معنونة بالبايت، على الرغم من أن وحدة نقل البيانات إلى الذاكرة كانت كلمة 32 بت تتكون من أربعة بايتات. تم بناء هذه الكلمة، المعززة ببتات العلامة والتكافؤ لكل بايت من بايتاتها، من أربعة أجهزة ذاكرة 10 بت. تضمنت العمليات الحسابية للأعداد الصحيحة قيم 24 بت، بينما تضمنت العمليات الحسابية للأعداد العشرية قيم 48 بت. [ 3 ]

إلى جانب هذه التطبيقات المبكرة على أجهزة مخصصة، كان هناك تطبيق آخر يستهدف جهازًا مبرمجًا بدقة عالية يُعرف باسم GEMINI، والذي طورته شركتا RSRE و Plessey Electronic Systems لمحاكاة الأنظمة القديمة في التحكم بالعمليات وتطبيقات أخرى. استخدم هذا الجهاز تعليمات دقيقة 48 بت، وصُمم لدعم أجهزة الكمبيوتر 16 و32 بت. [ 2 ] : 25-28. استخدم تطبيق لاحق معالج ICL PERQ ، وكان يُعرف باسم PerqFlex. نظرًا لتصميم معالج PERQ، لم يتمكن PerqFlex من توفير بتات إضافية للعلامات في مسار بيانات الذاكرة، وبالتالي دمج بت علامة واحد داخل كلمة المعالج 32 بت للتمييز بين المؤشرات وغير المؤشرات. أثر هذا بشكل طفيف على الأعداد الصحيحة والأعداد العشرية، ولكنه أثر بشكل أكبر على تخزين القيم المنطقية والحرفية والوصول إليها، مما استلزم إدخال كتل أو مناطق خاصة للقيم المنطقية والحرفية المعبأة. [ 4 ] : ​​3 [ 5 ]

فرضت الشفرة المصغرة بنيةً مُوسومةً للتمييز بين أنواع البيانات المختلفة، ووُصفت بأنها توفر "بنية حماية تُعادل تلك الموجودة في الآلات ذات القدرات الخاصة"، وكانت هي المسؤولة وحدها عن تخصيص الذاكرة وإلغاء تخصيصها وجمع البيانات المهملة. [ 3 ] من خلال وسم المؤشرات، استطاعت الشفرة المصغرة جعلها "غير قابلة للتزوير" بواسطة عمليات البرنامج، وهذا بدوره منع فئةً كاملةً من الأخطاء الناجمة عن سوء استخدام المؤشرات (سواءً كان ذلك عن قصد أو عن غير قصد)، أو عن أخطاء المُصرّف. [ 2 ] تم تخصيص الذاكرة في كتل من أنواع مختلفة تدعم أنواعًا مُحددةً فقط من العمليات. قُسّمت أنواع الكتل إلى مجموعتين رئيسيتين: تلك المُتعلقة بالإجراءات وتلك المُتعلقة بالبيانات. وُصفت الإجراءات بواسطة كتل إغلاق تُشير إلى الشفرة والمتغيرات غير المحلية والثوابت، ولا يُمكن إلا استدعاؤها. يؤدي الاستدعاء إلى تخصيص كتلة مساحة عمل تحتوي على متغيرات محلية ومكدس تقييم الإجراء. [ 3 ] [ 4 ] : ​​10-11

سمح هذا المخطط برمته بتنفيذ أنواع البيانات المجردة وواجهات التعليمات البرمجية ذات الامتيازات بأمان، حيث يمكن ربط عناصر البيانات والإجراءات المسموح لها بالوصول إليها، وتمرير هذه الإمكانية الناتجة بحرية. تمنح هذه الإمكانية الوصول إلى الإجراءات، ولكن لا يمكن استخدامها بأي شكل من الأشكال للوصول إلى التعليمات البرمجية أو البيانات. [ 3 ] في الواقع، كما يمكن لنظام التشغيل استخدام مثل هذه الآليات للحفاظ على امتيازاته وحمايته من المستدعين، يمكن للإجراءات في برامج المستخدم استخدام هذه الآليات بالمثل للعمل كنظام تشغيل مع مستدعيها. [ 6 ] : 14

من أبرز ميزات Flex نظام تخزين الملفات المُوسوم الذي يُكتب مرة واحدة فقط. وقد أتاح ذلك كتابة واسترجاع أي نوع من التعليمات البرمجية وهياكل البيانات بشفافية تامة، دون الحاجة إلى ترميزات خارجية. وبالتالي، يمكن نقل البيانات بأمان من برنامج إلى آخر.

وبالمثل، سمحت الإمكانيات عن بعد بالوصول إلى البيانات والإجراءات على الأجهزة الأخرى عبر اتصال الشبكة، مرة أخرى دون أن يشارك برنامج التطبيق في عمليات التشفير الخارجية للبيانات أو المعلمات أو قيم النتائج.

من السمات البارزة الأخرى لـ Flex مفهوم المؤشرات الثابتة والمهتزة ، حيث تعمل الأخيرة كنوع من المراجع الضعيفة ، وتُستخدم للإشارة إلى كتل الذاكرة التي يمكن تحريرها عند عملية جمع البيانات المهملة التالية إذا تم وضع علامة "مهتز" على جميع المؤشرات إلى هذه الكتل. يُستخدم هذا، على سبيل المثال، لكتل ​​القرص المخزنة مؤقتًا أو قائمة بمساحات عمل الإجراءات الاحتياطية . [ 7 ] : 11-12 [ 4 ] : ​​5، 16

تم تطوير COMFLEX، وهي شبكة تبديل حزم قادرة على نقل البيانات بسرعة القرص المغناطيسي، جنبًا إلى جنب مع Flex. وقد جعلت من الممكن استخدام مخازن الملفات البعيدة، والقدرات البعيدة، واستدعاءات الإجراءات البعيدة . [ 8 ]

انظر أيضاً

مراجع

  1. تيري، فيل ف.؛ وايزمان، سيمون ر. (يونيو 1988). حول تصميم وتنفيذ نظام حاسوبي آمن (ملف PDF) (تقرير). المؤسسة الملكية للإشارات والرادار. مذكرة رقم 4188. مؤرشفة (ملف PDF) من الأصل في 3 مايو 2014.
  2. 1 2 3 "تطبيقان لآلة 'FLEX'" (ملف PDF) . وقائع ورشة العمل السنوية الرابعة عشرة حول البرمجة المصغرة IEEE MICRO 14. 1 ديسمبر 1981. تاريخ الاطلاع: 23 يوليو 2026 .
  3. 1 2 3 4 فوستر، جيه إم؛ موير، سي آي؛ كوري، آي إف؛ ماكديرميد، جيه إيه؛ إدواردز، بي دبليو (أكتوبر 1979). مقدمة إلى نظام حاسوب فليكس (ملف PDF) (تقرير). المؤسسة الملكية للإشارات والرادار. التقرير رقم 79016. تاريخ الاسترجاع: 23 يوليو 2026 .
  4. 1 2 3 كوري، آي إف؛ فوستر، جيه إم؛ إدواردز، بي دبليو (ديسمبر 1985). برنامج PerqFlex الثابت (تقرير). المؤسسة الملكية للإشارات والرادار. التقرير رقم 85015. مؤرشف من الأصل في 6 فبراير 2018. تم الاطلاع عليه في 6 فبراير 2018 .
  5. تومبس، دي جي؛ بروس، دي آي (نوفمبر 1991). تطور Ten15 (ملف PDF) (تقرير). المؤسسة الملكية للإشارات والرادار. مؤرشف (ملف PDF) من الأصل في 24 سبتمبر 2015.
  6. فوستر، جيه إم؛ كوري، آي إف؛ إدواردز، بي دبليو (يوليو 1982). فليكس: حاسوب عامل ذو بنية تعتمد على قيم الإجراءات (ملف PDF) (تقرير). المؤسسة الملكية للإشارات والرادار. مذكرة رقم 3500. تاريخ الاسترجاع: 24 يوليو 2026 .
  7. وايزمان، إس آر (يوليو 1982). بنيتان حاسوبيتان متقدمتان: دراسة لدعمهما للغات وأنظمة التشغيل (ملف PDF) (تقرير). المؤسسة الملكية للإشارات والرادار. مذكرة رقم 82013. تاريخ الاطلاع: 25 يوليو 2026 .
  8. ماكديرميد، جيه إيه (نوفمبر 1980). "تصميم واستخدام كومفليكس - مُبدِّل حزم مُتحكَّم به بواسطة الأجهزة" . وقائع معهد مهندسي الكهرباء والإلكترونيات - الحوسبة والتقنيات الرقمية . 127 (6): 233. doi : 10.1049/ip-e.1980.0048 . مؤرشف من الأصل في 13 فبراير 2018. تم الاسترجاع في 12 فبراير 2018 .

للمزيد من القراءة