غلاف لوحة الدوائر المطبوعة

كانت واجهة PWB (المعروفة أيضًا باسم واجهة Mashey ) واجهة Unix . [ 1 ]

تاريخ

كانت واجهة PWB نسخةً مُعدّلة (ومُقيدة عمومًا لتكون متوافقة مع الإصدارات الأحدث) من واجهة Thompson، مع ميزات إضافية لزيادة سهولة استخدامها في البرمجة. وقد تولى صيانتها جون ماشي وآخرون (ديك هايت، آلان جلاسر). [ 1 ] [ 2 ] [ 3 ]

بدأ تطوير PWB/UNIX مع الإصدار الرابع من Research Unix في منتصف أكتوبر 1973، وخضع لتحديثات متكررة على مدار السنوات التالية، حيث تابع قسم PWB التغييرات في Research Unix وأضاف بعض الميزات. صدرت واجهة PWB في منتصف عام 1975، [ 4 ] وظلت متاحة حتى الإصدار السادس من PWB/UNIX المبني على Unix. [ 5 ] في الإصدار السابع من Unix (1979)، حلت واجهة Bourne محل واجهة PWB . [ 6 ]

الميزات البارزة

أُضيفت عدة ميزات إلى واجهة PWB التي لا تزال موجودة في العديد من الواجهات اللاحقة. أُدمجت أوامر if و goto داخل الواجهة، ووُسّعت لتشمل if - then - else - endif ، كما أُضيفت بنى switch و while ، بالإضافة إلى onintr لتجاهل المقاطعات أو التقاطها لإجراء عمليات التنظيف. [ 1 ] كان بالإمكان استخدام متغيرات بسيطة، مع أن أسماءها كانت تقتصر على حرف واحد، وبعض الأحرف كانت محجوزة لأغراض خاصة، بعضها يُعدّ سلفًا لمتغيرات البيئة الموجودة في جميع أنظمة يونكس بدءًا من الإصدار 7 .

على سبيل المثال، يُعد المتغير $s سلفًا للمتغير $HOME ، ويُستخدم لتجنب تضمين مسارات الملفات بشكل ثابت. أما المتغير $p فهو سلف للمتغير $PATH ، الذي يسمح للمستخدمين بالبحث عن الأوامر في المجلدات التي يختارونها. على عكس معظم أنظمة يونكس في ذلك الوقت، كان مركز حاسوب PWB/UNIX الأصلي مُشتركًا بين مجموعات برمجة متعددة لم يكن بإمكانها تغيير محتويات /bin أو /usr/bin، ولكنها أرادت إنشاء مجموعاتها الخاصة من الأوامر المشتركة. بالإضافة إلى ذلك، تم تحسين خاصية البحث عن الأوامر في الصدفة للسماح باستدعاء إجراءات الصدفة كما لو كانت أوامر ثنائية، أي إذا عثرت الصدفة على ملف غير ثنائي مُعلّم بأنه قابل للتنفيذ، فإنها ستنشئ نسخة أخرى من الصدفة لقراءة ذلك الملف كبرنامج نصي للصدفة. وبالتالي، أصبح بإمكان المستخدمين كتابة الأمر بدلًا من الأمر . تم تجميع كل هذا السلوك في الدالة pexec ، وهي سلف الدالة execvp ، للسماح لأي برنامج باستدعاء الأوامر بنفس طريقة الصدفة.command argumentssh pathname/command arguments

أصبح رمز الدولار ($) ، الذي كان يُستخدم سابقًا لتحديد وسائط سطر الأوامر ، علامةً لفك مرجعية متغير، ويمكن استخدامه لإدراج قيمة متغير في سلسلة نصية بين علامتي اقتباس مزدوجتين . (بالإضافة إلى أنظمة التشغيل اللاحقة، ظهرت هذه الميزة لاحقًا في لغتي البرمجة بيرل وبي إتش بي ).

الأحفاد

لم تتمكن هذه الميزات من التغلب على أوجه القصور في واجهة Thompson، لذا قام ستيفن بورن بكتابة واجهة جديدة من الصفر . كانت واجهة Bourne غير متوافقة مع واجهتي Thompson وPWB، لكنها تضمنت ما يعادل معظم ميزات واجهة PWB، ولكن تم تطويرها من الصفر، بدلاً من التطوير التدريجي، بعد نقاشات مستفيضة بين مختلف المشاركين. على وجه الخصوص، قام ستيفن بورن وجون ماشي ودينيس ريتشي بتصميم متغيرات البيئة والآليات ذات الصلة كآلية عامة لاستبدال الميزات السابقة الأكثر محدودية. بعد اعتماد واجهة Bourne كواجهة قياسية في الإصدار السابع من يونكس ، تم التخلي تدريجياً عن استخدام واجهة PWB، على الرغم من وجود دورة تدريبية داخلية في مختبرات بيل بعنوان " برمجة واجهة Bourne لمبرمجي واجهة Mashey" . كما ورثت واجهة C ، التي طُوّرت قبل الإصدار العام لواجهة Bourne، بعض ميزات واجهة PWB.

انظر أيضاً

مراجع

  1. 1 2 3 ماشي، جون ر. (13 أكتوبر 1976). "استخدام لغة الأوامر كلغة برمجة عالية المستوى" . سان فرانسيسكو، كاليفورنيا، الولايات المتحدة الأمريكية : وقائع المؤتمر الدولي الثاني لهندسة البرمجيات. الصفحات 169-176 . مؤرشف من الأصل في 12 أبريل 2020. تم الاسترجاع في 12 أبريل 2020. بالإضافة إلى هذه المتغيرات [$n، $p، $r، $s، و$t]، يُقدَّم ما يلي: يحتوي $$ على رقم مكون من 5 خانات، وهو رقم العملية الفريد للصدفة الحالية. في بعض الحالات، من الضروري معرفة رقم العملية، لإنهاءها، على سبيل المثال. ومع ذلك، فإن استخدامه الأكثر شيوعًا حتى الآن هو إنشاء أسماء فريدة للملفات المؤقتة. 
  2. ليكيتش، فلاديمير (28 سبتمبر 2018). "فهم باش: عناصر البرمجة" . مجلة لينكس. مؤرشف من الأصل في 21 ديسمبر 2018. تم الاطلاع عليه في 31 ديسمبر 2018. كانت كل من صدفة تومسون الأصلية، وصدفة ماشي، وصدفة بورن تُسمى sh، وقد تداخلت أو حلت محل بعضها البعض في الفترة ما بين 1970 و1976 مع تحسينها واكتسابها قدرات إضافية. ... لم تكن لصدفة تومسون أي قدرات برمجية. تغير هذا مع تطوير صدفة ماشي (ولاحقًا صدفة بورن).
  3. وايلز، جاك (13 أكتوبر 2011). دليل تكنو سيكيوريتي للاكتشاف الإلكتروني والأدلة الجنائية الرقمية: دليل شامل . إلسيفير. ISBN 9780080558813تم الاطلاع عليه بتاريخ 31 ديسمبر 2018 عبر كتب جوجل.
  4. ماشي، جون ر. (27 يناير 1999) [1986]. تومي، وارن (محرر). "رد: تاريخ الصدفة، حقائق صحيحة، لكنها طويلة | مجموعات الأخبار: net.unix-wizards" . مؤرشف من الأصل في 2016-10-06 . تم الاسترجاع في 2018-12-31 . ظهرت "صدفة PWB" لأول مرة في منتصف عام 1975. وقد انبثقت من مجموعة من المتطلبات والاقتراحات التي قدمتها في أوائل عام 1975 في محاولة لكتابة برمجة صدفة جادة. في منتصف عام 1975، اكتسبت الصدفة متغيرات، بما في ذلك 3 متغيرات مستمدة من بيانات كل عملية. من هنا ظهرت فكرة البحث عن المسار الأكثر عمومية.
  5. تشورافاس، ديميتريس ن. (1986). أي نظام يونكس؟: إيه تي آند تي، وآي بي إم، وغيرهما من حاملي المعايير . ماكجرو هيل . ISBN  9780070108790أُرشف من المصدر الأصلي بتاريخ 31 ديسمبر 2018. تم الاطلاع عليه بتاريخ 31 ديسمبر 2018 .
  6. افتخار، محمد فرهاد (10 نوفمبر 2015). "تطور واجهات يونكس/لينكس - يونكسمن" . Unixmen.com . مؤرشف من الأصل في 21 يوليو 2019. تم الاطلاع عليه في 31 ديسمبر 2018 .