العنونة القائمة على القدرات
في علوم الحاسوب ، يُعدّ نظام العنونة القائم على القدرات آليةً تستخدمها بعض الحواسيب للتحكم في الوصول إلى الذاكرة، كونه تطبيقًا فعالًا لأمن القدرات . في هذا النظام، تُستبدل المؤشرات بكائنات محمية (تُسمى القدرات ) تُحدد موقعًا في الذاكرة، بالإضافة إلى حقوق الوصول التي تُحدد مجموعة العمليات المسموح بها على هذا الموقع. [ 1 ] لا يُمكن إنشاء القدرات أو تعديلها إلا باستخدام تعليمات مميزة ، لا يُمكن تنفيذها إلا بواسطة النواة أو عملية مميزة أخرى مُصرّح لها بذلك. بالتالي، تستطيع النواة تقييد وصول كود التطبيق والأنظمة الفرعية الأخرى إلى الحد الأدنى الضروري من الذاكرة (وتعطيل الكتابة عند الاقتضاء)، دون الحاجة إلى استخدام مساحات عناوين منفصلة ، وبالتالي دون الحاجة إلى تبديل السياق عند حدوث الوصول.
التطبيقات العملية
تتوفر طريقتان للتنفيذ:
- يتطلب ذلك تخزين القدرات في منطقة محددة من الذاكرة لا يمكن للعملية التي ستستخدمها الكتابة إليها. على سبيل المثال، كان نظام بليسي 250 يتطلب تخزين جميع القدرات في مقاطع قائمة القدرات.
- توسيع الذاكرة بإضافة بت إضافي، لا يمكن الكتابة عليه إلا في وضع المشرف، يشير إلى أن موقعًا معينًا يمثل قدرة. هذا تعميم لاستخدام بتات العلامات لحماية واصفات القطاعات في أنظمة Burroughs الكبيرة ، وقد استُخدم لحماية القدرات في نظام IBM System/38 .
معالجة القدرات في نظامي IBM System/38 و AS/400
دعم نظام System/38 نوعين من مؤشرات الكائنات: المؤشرات المُصرَّح بها والمؤشرات غير المُصرَّح بها . كان النوع الأول هو تطبيق النظام الأساسي للعنونة القائمة على القدرات. [ 2 ] لا يمكن التعامل مع كلا النوعين من المؤشرات إلا باستخدام تعليمات ذات امتيازات، ويختلفان فيما إذا كانت صلاحيات الكائن (أي حقوق الوصول) مُشفَّرة في محتوى المؤشر. لم تُشفِّر المؤشرات غير المُصرَّح بها صلاحيات الكائن، وتطلَّب من نظام التشغيل التحقق من صلاحية الكائن بشكل منفصل لتحديد ما إذا كان الوصول إليه مسموحًا. أما المؤشرات المُصرَّح بها، فقد شفَّرت صلاحيات الكائن، مما يعني أن امتلاك المؤشر يعني الوصول، ولم يكن نظام التشغيل مُطالبًا بالتحقق من الصلاحية بشكل منفصل. كانت المؤشرات المُصرَّح بها غير قابلة للإلغاء بحكم تصميمها - فإذا تم تغيير صلاحيات الكائن، فلن يؤثر ذلك على الصلاحيات المُشفَّرة في أي مؤشرات مُصرَّح بها موجودة بالفعل.
دعمت الإصدارات الأولى من نظام التشغيل OS/400 الخاص بجهاز AS/400 المؤشرات المُصرَّح بها، وبالتالي العنونة القائمة على القدرات. إلا أنه تم حذف المؤشرات المُصرَّح بها في الإصدار V1R3 من OS/400 نظرًا لاعتبار طبيعتها غير القابلة للإلغاء ثغرة أمنية. [ 3 ] ومنذ ذلك الحين، تعتمد جميع إصدارات OS/400 (لاحقًا IBM i) كليًا على المؤشرات غير المُصرَّح بها التي لا تدعم العنونة القائمة على القدرات.
التسلسل الزمني للأنظمة التي تتبنى العنونة القائمة على القدرات
- 1969: النظام 250 - شركة بليسي
- 1970-1977: حاسوب CAP - مختبر الحاسوب بجامعة كامبريدج
- 1978: نظام/38 – شركة آي بي إم
- 1980: آلة مرنة – المؤسسة الملكية للإشارات والرادار (RSRE) مالفيرن
- 1981: إنتل iAPX 432 – إنتل
- 2014: CHERI (تضيف إمكانيات إلى ISAs الحالية لبرمجة أكثر أمانًا، حتى في لغتي C و C++ )
- 2020: CHEx86
- 2022: ARM Morello ( AArch64 مع إمكانيات CHERI)
مراجع
- ↑ ليفي، هنري م. (16-05-2014). "مفاهيم القدرات والأنظمة القائمة على الكائنات" (ملف PDF) . أنظمة الحاسوب القائمة على القدرات . دار النشر الرقمية. ص 3-4. ISBN 978-1-4831-0106-4.
- ↑ ليفي، هنري م. (16-05-2014). "نظام IBM/38" (ملف PDF) . أنظمة الحاسوب القائمة على القدرات . دار النشر الرقمية. ISBN 978-1-4831-0106-4.
- ↑ سولتيس، فرانك (1997). نظرة داخلية على نظام AS/400 - مع التركيز على سلسلة AS400e ( الطبعة الثانية). دار نشر ديوك. رقم ISBN 978-1-882419-66-1.
للمزيد من القراءة
- فابري، آر إس (1974). "العنونة القائمة على القدرات" . اتصالات رابطة مكائن الحوسبة . 17 (7): 403-412 . doi : 10.1145/361011.361070 . S2CID 5702682 .
- وولف، دبليو .؛ كوهين، إي.؛ كورين، دبليو.؛ جونز، إيه.؛ ليفين، آر.؛ بيرسون، سي.؛ بولاك، إف. (يونيو 1974). "هيدرا: نواة نظام تشغيل متعدد المعالجات" . اتصالات رابطة مكائن الحوسبة . 17 (6): 337-345 . doi : 10.1145/355616.364017 . ISSN 0001-0782 . S2CID 8011765 .
- دينينغ، بي جيه (ديسمبر 1976). "أنظمة التشغيل المقاومة للأعطال". مجلة ACM Computing Surveys . 8 (4): 359-389 . doi : 10.1145/356678.356680 . ISSN 0360-0300 . S2CID 207736773 .
- ليفي، هنري م. (1984). أنظمة الحاسوب القائمة على القدرات . ماينارد، ماساتشوستس: دار النشر الرقمية. ISBN 978-0-932376-22-0.
- ليندن، ثيودور أ. (ديسمبر 1976). "هياكل أنظمة التشغيل لدعم أمن البرمجيات وموثوقيتها". مجلة ACM Computing Surveys ، 8 (4): 409-445 . doi : 10.1145/356678.356682 . hdl : 2027/mdp.39015086560037 . ISSN 0360-0300 . S2CID 16720589 . نفس الوثيقة التي وردت في تقرير المعهد الوطني الأمريكي للمعايير والتكنولوجيا (NIST).
- بيرستيس، فيكتورز (6-8 مايو 1980). "أمن وحماية البيانات في نظام IBM System/38" . وقائع الندوة السنوية السابعة حول هندسة الحاسوب . لابول، الولايات المتحدة. ص 245-252 . doi : 10.1145/800053.801932 .
- سينكوسكي، دبليو. ديفيد ؛ فاربر، ديفيد جيه. (يوليو 1980). "SODS/OS: نظام تشغيل موزع لسلسلة IBM/1". مجلة ACM SIGOPS لأنظمة التشغيل . 14 (3): 46-54 . doi : 10.1145/850697.850704 . S2CID 14245116 .
- مايرز، جي جي ؛ باكنغهام، بي آر إس (أكتوبر 1980). "تنفيذ برمجي للعنونة القائمة على القدرات" . مجلة ACM SIGOPS لأنظمة التشغيل . 14 (4): 13-25 . doi : 10.1145/641914.641916 . S2CID 17390439 .
- هوديك، إم إي؛ سولتيس، إف جي ؛ هوفمان، آر إل (مايو 1981). "دعم نظام IBM System/38 للعنونة القائمة على القدرات" . وقائع الندوة الدولية الثامنة لجمعية ACM حول هندسة الحاسوب . ACM/IEEE. الصفحات 341-348 .
- بوزارد، جي دي؛ مودج، تينيسي (أغسطس 1983). أنظمة الحاسوب القائمة على الكائنات ولغة برمجة آدا (تقرير). جامعة ميشيغان - مختبر أبحاث الحاسوب ومختبر أبحاث الروبوتات، قسم الهندسة الكهربائية وهندسة الحاسوب. hdl : 2027.42/3992 .
روابط خارجية
- "حول انتشار نهج القدرات" . cap-talk (قائمة بريدية). مؤرشف من الأصل في 6 سبتمبر 2015. تم الاطلاع عليه في 17 يوليو 2026 .
- إدارة الذاكرة
- أمان أنظمة التشغيل
- أنظمة القدرات
