مرفق معالجة المعاملات
المحتويات

قبل الخوض في التفاصيل، مرفق معالجة المعاملات (تي بي إف) هو نظام تشغيل في الزمن الحقيقي من آي بي إم لأجهزة الكمبيوتر المركزية المنحدرة من عائلة آي بي إم نظام آي بي إم 360، بما في ذلك آي بي إم زد وآي بي إم زد. ونتناول فيما يلي مزيدًا من التفاصيل.
من جانب آخر، يستعمل الكثير من شركات الطيران تطبيق حجز الركاب التابع لشركة تي بي إف، أو نسخته الدولية «IPARS». نظام حجز الخطوط الجوية المبرمج (PARS) هو برنامج تطبيقي، بينما تي بي إف هو نظام تشغيل.
إضافةً إلى ذلك، توفر تي بي إف معالجة سريعة وعالية الحجم وعالية الإنتاجية للمعاملات، وتتعامل مع أحمال كبيرة ومستمرة من المعاملات البسيطة أساسًا عبر شبكات كبيرة ومتفرقة جغرافيًا.
ومن جهة أخرى، تم تطوير برنامج مراقبة المعاملات ، وهو برنامج قريب الصلة بتي بي إف، بواسطة شركة آي بي إم لدمج خدمات تي بي إف في نظام التشغيل الرئيسي الأكثر شيوعًا ، والذي يُعرف الآن باسم .
من جانب آخر، رغم وجود ذات قدرة عالية على التعامل مع البيانات، ولا سيما نظامي ونظام إدارة المعلومات (IMS) من شركة آي بي إم، إلا أن نظام تي بي إف يتميز بقدرته على معالجة كميات هائلة من البيانات، وعدد كبير من المستعملين المتزامنين، وسرعة استجابة فائقة. فمثلًا، يتولى النظام معالجة معاملات بطاقات ائتمان فيزا خلال موسم التسوق في العطلات.
وعلى صعيد آخر، أحد المكونات الاختيارية الرئيسية لتي بي إف هو مرفق قاعدة بيانات متخصص عالي الأداء يسمى مرفق قاعدة بيانات تي بي إف (تي بي إف دي إف).
استخدام الذاكرة
في هذا الإطار، تاريخيًا، وكما كان الحال سابقًا، كانت أحجام وحدات الذاكرة الأساسية 381 و1055 و4 كيلوبايت. ولأن جميع وحدات الذاكرة كانت يجب أن تكون بهذا الحجم، فقد تم التخلص من أغلب التكاليف الإضافية للحصول على الذاكرة الموجودة في الأنظمة الأخرى. كل ما يحتاجه المبرمج هو تحديد حجم الوحدة المناسب وطلبها. يحتفظ نظام تي بي إف بقائمة بالوحدات المستعملة، ويقوم ببساطة بتوزيع أول وحدة متاحة في القائمة.
المراجع
من جهة ثانية، قُسّمت الذاكرة الفعلية إلى أقسام مخصصة لكل حجم، بحيث تأتي كتلة بحجم 1055 بايت دائمًا من قسم معين وتعود إليه، وكان العبء الإضافي الوحيد المطلوب هو إضافة عنوانها إلى قائمة جدول الكتل الفعلية المناسبة. لم تكن هناك حاجة إلى ضغط أو جمع بيانات.
ومن ناحية أخرى، مع تطور التطبيقات، ازدادت متطلبات الذاكرة، وبمجرد توفر لغة سي، برزت الحاجة إلى وحدات ذاكرة ذات أحجام غير محددة أو كبيرة. وقد أدى ذلك إلى استخدام تخزين الكومة وبعض إجراءات إدارة الذاكرة. ولتخفيف العبء، قُسّمت ذاكرة تي بي إف إلى إطارات بحجم 4 كيلوبايت (1 ميجابايت مع z/TPF). إذا احتاج تطبيق ما إلى عدد معين من البايتات، يُمنح عدد الإطارات المتجاورة اللازمة لتلبية هذا الاحتياج.
المستخدمون
بيئة التشغيل
وعلى صعيد آخر، يشمل المستعملون الحاليون كلاً من سابر (للحجوزات)، وفيزا (للتراخيص)، والخطوط الجوية الأمريكية، وأمريكان إكسبريس (للتراخيص)، ودي أكس سي للتكنولوجيا شيرز (للحجوزات)، وأمتراك، وماريوت الدولية، وترافلبورت (غاليليو، وأبولو، وورلدسبان)، وسيتي بنك، وترينيتاليا (للحجوزات)، وخطوط دلتا الجوية (للحجوزات والعمليات)، والخطوط الجوية اليابانية.
البرامج والإقامة
كذلك، بما أن z/TPF كان عليه الحفاظ على مكدس الاستدعاء لبرامج اللغات عالية المستوى، مما منح برامج HLL القدرة على الاستفادة من ، فقد اعتبر من المفيد توسيع مكدس الاستدعاء ليشمل برامج لغة التجميع على أساس اختياري، مما يمكن أن يخفف الضغط على الذاكرة ويسهل البرمجة المتكررة.
وعلى صعيد آخر، كما تم جعل مفاهيم الإقامة في الملفات والذاكرة قديمة، وذلك بسبب نقطة تصميم z/TPF التي سعت إلى أن تكون جميع البرامج مقيمة في الذاكرة في جميع الأوقات.
ومن جهة أخرى، في الأيام الأولى ل/تي بي إف (قرابة عام 1965)، كانت مساحة الذاكرة محدودة للغاية، مما أدى إلى التمييز بين البرامج المقيمة في الملف والبرامج المقيمة في النواة–فقط برامج التطبيقات الأكثر استخدامًا كانت تُكتب في الذاكرة ولا تُزال أبدًا (الإقامة في النواة)؛ أما الباقي فكان يُخزن في ملف ويُقرأ عند الطلب، مع تحرير مخازن الذاكرة الداعمة لها بعد التنفيذ.
ومن ناحية أخرى، أصبحت جميع البرامج التنفيذية z/TPF الآن معبأة ككائنات مشتركة .
وفي السياق ذاته، في الإصدار z/TPF 1.1، تم توحيد جميع أنواع لغات المصدر من الناحية المفاهيمية، وخضعت جميعها لعملية تحرير الربط لتتوافق مع مواصفات . أصبح مفهوم المقطع متقادمًا، مما يعني أن أي برنامج مكتوب بأي لغة مصدر–بما في ذلك لغة التجميع–يمكن أن يكون بأي حجم. علاوة على ذلك، أصبح من الممكن استخدام المراجع الخارجية، وأصبح بالإمكان ربط برامج شفرة المصدر المنفصلة، التي كانت تُعتبر مقاطع، مباشرةً معًا في كائن مشترك. ومن أهم مزايا هذا النظام أن التطبيقات القديمة الهامة يمكنها الاستفادة من تحسين الكفاءة من خلال إعادة التجميع البسيطة–حيث أصبح مسار الاستدعاءات بين أعضاء وحدة الكائن المشترك أقصر بكثير أثناء التشغيل مقارنةً باستدعاء خدمة الإدخال/الرجوع في النظام. يمكن لأعضاء الكائن المشترك نفسه الآن مشاركة مناطق البيانات القابلة للكتابة مباشرةً بفضل وظيفة النسخ عند الكتابة التي تم تقديمها كذلك في الإصدار z/TPF 1.1؛ وهو ما يعزز متطلبات في تي بي إف.
وفي هذا السياق، في مراحل مختلفة من تاريخ تي بي إف، خُصصت أجزاء البرنامج على شكل سجلات بحجم 381 و1055 و4 كيلوبايت. يتألف كل جزء من سجل واحد، بينما قد يتطلب التطبيق الشامل عادةً عشرات أو حتى مئات الأجزاء. خلال الأربعين عامًا الأولى من تاريخ تي بي إف، لم تُربط هذه الأجزاء أبدًا. بدلًا من ذلك، كان رمز الكائن القابل للنقل (الناتج المباشر من المُجمِّع) يُخزَّن في الذاكرة، ثم تُحلَّل رموزه الداخلية (ذاتية المرجعية) القابلة للنقل، ثم تُكتب الصورة الكاملة إلى ملف لتحميلها لاحقًا في النظام. وقد خلق هذا بيئة برمجة معقدة، حيث لم يكن بإمكان الأجزاء المرتبطة ببعضها الوصول المباشر إلى بعضها، وكان نقل التحكم بينها يُنفَّذ كخدمة النظام ENTER/BACK.
ومن ناحية أخرى، تم إدخال لغة سي إلى تي بي إف في الإصدار 3.0 في البداية بحسب اتفاقيات القطاعات، بما في ذلك عدم إمكانية تعديل الربط. وسرعان ما تبين أن هذا الأسلوب غير عملي إلا لأبسط برامج سي. في الإصدار 4.1 من تي بي إف، تم إدخال وحدات التحميل المرتبطة بالكامل. تم تجميع هذه الوحدات باستخدام مُجمِّع C/C++ باستخدام ملفات رأس خاصة بتي بي إف، وربطها باستخدام IEWL، مما نتج عنه وحدة تحميل متوافقة مع z/OS، والتي لا يمكن اعتبارها بأي حال من الأحوال قطاعًا تقليديًا في تي بي إف. تم توسيع مُحمِّل تي بي إف لقراءة تنسيق ملف وحدة التحميل الخاص بـ z/OS، ثم وضع أقسام وحدات التحميل الموجودة في الملف في الذاكرة؛ في الوقت نفسه، ظلت برامج لغة التجميع محصورة في نموذج قطاعات تي بي إف، مما أدى إلى تباين واضح بين التطبيقات المكتوبة بلغة التجميع وتلك المكتوبة بلغات عالية المستوى.
السجلات الفريدة للمعالج
خصائص تي بي إف
وعلى صعيد آخر، يُعرَّف سجل المعالج الفريد بحيث يكون لكل معالج يُتوقع وجوده في النظام المترابط بشكل غير محكم نوع سجل 'FRED' وربما 100 ترتيب. مع ذلك، إذا قام مستعمل على أي معالجين أو أكثر بفحص عنوان الملف الذي يشير إليه نوع السجل 'FRED'، الترتيب '5'، فسيلاحظ استخدام عنوان فعلي مختلف.
السجلات المشتركة للمعالج
من جهة ثانية، السجلات التي يجب إدارتها حتمًا بواسطة عملية هي تلك التي تتم مشاركتها مع المعالج. في تي بي إف، تتم أغلب عمليات الوصول إلى السجلات باستخدام نوع السجل ورقم الترتيب. مثلًا، إذا كان لدينا نوع سجل في نظام تي بي إف يُسمى 'FRED' ويحتوي على 100 سجل أو رقم ترتيب، ففي نظام مشاركة المعالج، فإن رقم الترتيب '5' لنوع السجل 'FRED' سيشير إلى نفس عنوان الملف على وحدة التخزين DASD — مما يستلزم استخدام آلية قفل السجلات.
وفي هذا الصدد، سيتم الوصول إلى جميع سجلات المعالج المشتركة على نظام تي بي إف عبر نفس عنوان الملف الذي سيؤدي إلى نفس الموقع.
الاقتران الضعيف
في هذا الإطار، لضمان تسلسل عمليات الوصول بين سجلات البيانات في نظام ذي ترابط ضعيف، يجب استخدام آلية تُعرف باسم «». وهذا يعني أنه عندما يحصل أحد معالجات الحاسوب المركزي على حق الوصول إلى سجل ما، يجب على الآلية منع جميع المعالجات الأخرى من الحصول على نفس الحق، وإبلاغ المعالجات الطالبة بأنها تنتظر. في أي نظام ذي ترابط قوي، يسهل إدارة ذلك بين تدفقات البيانات (I-streams) باستخدام جدول حجز السجلات. مع ذلك، عندما يتم الحصول على القفل خارج معالج تي بي إف في وحدة التحكم DASD، يجب استخدام عملية خارجية. تاريخيًا، كان يتم قفل السجلات في وحدة التحكم DASD عبر يُعرف باسم LLF (مرفق القفل المحدود) ولاحقًا ELLF (الموسع). تم استبدال كل من LLF وELLF بمرفق قفل المسارات المتعددة (MPLF). يتطلب تشغيل z/TPF المُجمّع (ذي الترابط الضعيف) إما MPLF في جميع وحدات التحكم بالقرص أو جهاز قفل بديل يُسمى مرفق الربط.
من جانب آخر، يتمتع نظام تي بي إف بالقدرة على دعم الكثير من الحواسيب المركزية (بأي حجم كانت) — سواءً كان ذلك عبر تدفق بيانات واحد أو عدة تدفقات بيانات، يتم الاتصال بقاعدة بيانات مشتركة والعمل عليها. في الوقت الحالي، قد تتشارك 32 حاسوبًا مركزيًا من آي بي إم قاعدة بيانات تي بي إف؛ وإذا كان هذا النظام قيد التشغيل، فسيُطلق عليه نظامًا الاقتران الضعيف ذي 32 اتجاه. أبسط نظام مترابط بشكل غير محكم هو حاسوبان مركزيان من آي بي إم يتشاركان وحدة تخزين . في هذه الحالة، سيتم تحميل برنامج التحكم بالتساوي في الذاكرة، ويمكن لأي من الحاسوبين المركزيين الوصول إلى أي برنامج أو سجل على وحدة تخزين الوصول المباشر (DASD).
التاريخ
وفي هذا الصدد، تطورت تي بي إف من (ACP)، وهو حزمة مجانية طورتها شركة آي بي إم في منتصف الستينيات بالتعاون مع شركات طيران رئيسية في أمريكا الشمالية وأوروبا. وفي عام 1979، قدمت آي بي إم برنامج تي بي إف كبديل لبرنامج التحكم في شركات الطيران— كمنتج برمجي مدفوع. يشير الاسم الجديد إلى نطاقه الأوسع وتطوره ليشمل كيانات غير مرتبطة بشركات الطيران.
وعلى صعيد آخر، يُعد مجموعة مصرفات جنو ومُصرّفا أنظمة ديغنوس/سي++أنظمة/سي المُصرّفين الوحيدين المُدعومين لنظام z/TPF. ويُوفّر مُصرّفا ديغنوس تغييرات أقل في الشيفرة المصدرية عند الانتقال من تي بي إف 4.1 إلى z/TPF.
من جهة ثانية، كانت بيئة تي بي إف تقليديًا بيئة لغة التجميع نظام آي بي إم 370 لأسباب تتعلق بالأداء، ولا تزال الكثير من تطبيقات مُجمِّع تي بي إف قائمة. مع ذلك، تشجع الإصدارات الأحدث من تي بي إف على استخدام لغة سي. وقد ظهرت لغة برمجة أخرى تُدعى على تي بي إف ثم اندثرت.
وعلى صعيد آخر، أعلنت شركة آي بي إم عن إصدار النسخة الحالية من تي بي إف، والتي تحمل اسم z/TPF V1.1، في سبتمبر 2005. والأهم من ذلك، أن z/TPF أضافت خاصية العنونة 64 بت، وألزمت باستخدام أدوات تطوير جنو 64 بت.
ببليوغرافيا
علاوةً على ذلك، Transaction Processing Facility: A Guide for Application Programmers (Yourdon Press Computing Series) by R. Jason Martin (Hardcover - April 1990),
ما ليس تي بي إف
ومن ناحية أخرى، لا يمتلك نظام تي بي إف واجهة مستعمل رسومية مدمجة، ولم يوفر قطّ إمكانيات عرض رسومية مباشرة: إذ يُعتبر تنفيذ ذلك على النظام المضيف استهلاكًا غير ضروري وربما ضارًا لموارد النظام في الوقت الفعلي. تعتمد واجهة مستعمل تي بي إف على سطر الأوامر مع شاشات عرض نصية بسيطة قابلة للتمرير لأعلى، ولا توجد مؤشرات أو نوافذ أو أيقونات تعمل بالماوس على تي بي إف «برايم كراس» (مجموعة وكيل غرفة الحاسوب — والتي تُعتبر بمثابة "وحدة تحكم المشغل"). تُستعمل الرسائل النصية كوسيلة للتواصل مع المستعملين. يتم إنجاز جميع الأعمال عبر سطر الأوامر، على غرار نظام يونكس بدون إكس. تتوفر الكثير من المنتجات التي تتصل بـ«برايم كراس» وتوفر وظائف واجهة رسومية لمشغل تي بي إف، مثل «خادم عمليات تي بي إف». يجب توفير واجهات رسومية للمستعملين النهائيين، إذا رغبوا في ذلك، من خلال أنظمة خارجية. تُجري هذه الأنظمة تحليلًا لمحتوى الأحرف (انظر استخراج البيانات من الشاشة) وتحول الرسالة من وإلى الشكل الرسومي المطلوب، حسب سياقها.
وفي السياق ذاته، نظام تي بي إف ليس نظام تشغيل للأغراض العامة. يتمثل دوره المتخصص في معالجة رسائل إدخال المعاملات، ثم إرجاع رسائل الإخراج بنسبة 1:1 وبكميات كبيرة للغاية مع حدود زمنية قصوى قصيرة.
وفي هذا الصدد، يتطلب استخدام تي بي إف معرفة دليل الأوامر الخاص به إذ لا يوجد دعم لدليل أوامر عبر الإنترنت أو أداة "man"/help التي قد يكون المستعملون معتادين عليها. تُسمى الأوامر التي أنشأتها شركة آي بي إم وأصدرتها لإدارة نظام تي بي إف "الرسائل الوظيفية"، ويُشار إليها عادةً باسم «رسائل Z»، لأنها جميعًا تبدأ بالحرف «Z». أما الأحرف الأخرى فهي محجوزة ليتمكن العملاء من كتابة أوامرهم الخاصة.
إضافةً إلى ذلك، تم تحسين تي بي إف إلى حدّ كبير للسماح بتحويل الرسائل من الشبكة المدعومة إلى موقع آخر، أو توجيهها إلى تطبيق (مجموعة محددة من البرامج)، أو للسماح بالوصول الفعال للغاية إلى سجلات قاعدة البيانات.
ما هو تي بي إف؟
علاوةً على ذلك، تُنفّذ تي بي إف عملية تصحيح الأخطاء في وضع العميل والخادم الموزع، وهو أمر ضروري نظرًا لطبيعة النظام متعددة العمليات وغير الرسومية: إذ أن إيقاف النظام بأكمله مؤقتًا لرصد مهمة واحدة سيكون له نتائج عكسية للغاية. وقد طوّر موردون خارجيون حزم تصحيح الأخطاء، واتبعوا مناهج مختلفة تمامًا لعمليات "الإيقاف/الاستئناف" المطلوبة على مضيف تي بي إف، حيث نفّذوا بروتوكولات اتصال فريدة تُستعمل في نقل البيانات بين المطور البشري الذي يُشغّل عميل تصحيح الأخطاء ووحدة تحكم تصحيح الأخطاء على جانب الخادم، فضلًا عن شكل ووظيفة عمليات برنامج تصحيح الأخطاء على جانب العميل. ومن الأمثلة على حزم تصحيح الأخطاء الخارجية: «تتبع الخطوات» من بيدفورد أسوشيتس و«CMSTPF» و«TPF/GI» و«zTPFGI»، وجميعها من تي بي إف للبرمجيات. لا تتوافق أي من الحزمتين تمامًا مع الأخرى، ولا مع منتج آي بي إم نفسه. يُقدّم عميل تصحيح الأخطاء من آي بي إم في بيئة تطوير متكاملة تُسمى «مجموعة أدوات آي بي إم تي بي إف».
وفي السياق ذاته، باعتباره نظام تشغيل متخصصًا، لا يحتوي تي بي إف على مُجمِّع/مترجم، أو محرر نصوص، ولا يُطبِّق مفهوم سطح المكتب كما هو الحال في أنظمة التشغيل العامة. عادةً ما يُخزَّن كود مصدر تطبيقات تي بي إف في أنظمة خارجية، ويتم بناؤه "دون اتصال بالإنترنت". بدءًا من z/TPF 1.1، أصبح لينكس منصة البناء المدعومة؛ ويجب أن تلتزم البرامج القابلة للتنفيذ المُخصصة للعمل على z/TPF الخاص بـ s390x-ibm-linux.
سجلات البيانات
إضافةً إلى ذلك، تاريخيًا، كان على جميع البيانات في نظام تي بي إف أن تتناسب مع أحجام سجلات (وكتل ذاكرة) ثابتة تبلغ 381 و1055 و4 كيلوبايت. ويعود ذلك جزئيًا إلى أحجام السجلات الفعلية للكتل الموجودة على وحدات التخزين المباشر للذاكرة (DASD). وقد تم توفير قدر كبير من الموارد عن طريق تحرير أي جزء من نظام التشغيل من تقسيم كيانات البيانات الكبيرة إلى كيانات أصغر أثناء عمليات الملفات، وإعادة تجميعها أثناء عمليات القراءة. وبما أن أجهزة آي بي إم تُجري عمليات الإدخال/الإخراج عبر القنوات وبرامج القنوات، فإن تي بي إف كان يُنشئ برامج قنوات صغيرة وفعالة للغاية لإجراء عمليات الإدخال/الإخراج كل ذلك باسم السرعة. ومنذ الأيام الأولى، أولت الشركات أهمية كبيرة لحجم وسائط التخزين— سواء كان ذلك يتعلق بالذاكرة أو القرص، فقد تطورت تطبيقات تي بي إف لتؤدي أشياءً قوية للغاية مع استخدام موارد قليلة جدًا.
ومن ناحية أخرى، اليوم، أُزيلت أغلب هذه القيود. في الواقع، لا تزال سجلات الأصغر من 4 كيلوبايت تُستعمل بفضل دعم الأنظمة القديمة. مع التطورات التي شهدتها تقنية DASD، أصبحت قراءة/كتابة سجل بحجم 4 كيلوبايت بنفس كفاءة سجل بحجم 1055 بايت. وقد ساهمت هذه التطورات نفسها في زيادة سعة كل جهاز، بحيث لم يعد هناك تفضيل لحجم البيانات المُدمج في أصغر نموذج ممكن.
الترابط الوثيق
علاوةً على ذلك، على الرغم من أن معالج كان مصممًا لتشغيل تي بي إف على معالج أحادي سريع، إلا أن تي بي إف قادر على العمل على معالجات متعددة، أي على أنظمة تحتوي على أكثر من وحدة معالجة مركزية واحدة. ضمن قسم ، تُسمى وحدات المعالجة المركزية «بتدفقات التعليمات» أو ببساطة I-streams. عند تشغيل تي بي إف على قسم إل بي إيه آر يحتوي على أكثر من تدفق تعليمات، يُقال إنه يعمل بشكل مترابط بإحكام. يلتزم تي بي إف بمفاهيم الحوسبة المتعددة المتماثلة (SMP) ؛ ولا يوجد مفهوم للتمييز بين عناوين الذاكرة بناءً على النفاذ غير الموحد للذاكرة (NUMA).
وفي السياق ذاته، يُقاس عمق «قائمة جاهزية وحدة المعالجة المركزية» عند استلام أي معاملة واردة، وتُضاف إلى قائمة انتظار تدفق البيانات ذي الطلب الأقل، مما يحافظ على توازن الحمل المستمر بين المعالجات المتاحة. في الحالات التي تتكون فيها التكوينات «الاقتران الضعيف» من وحدات معالجة مركزية متعددة (CPC، أي الجهاز الفعلي المُعبأ في خزانة نظام واحدة)، يتم تطبيق الحوسبة المتعددة المتماثلة (SMP) داخل وحدة المعالجة المركزية كما هو موضح هنا، بينما تتم مشاركة موارد وحدات المعالجة المركزية المختلفة كما هو موضح في قسم «الاقتران الضعيف» أدناه.
من جهة ثانية، في بنية تي بي إف، تُشارك جميع الذاكرة (باستثناء منطقة بادئة بحجم 4 كيلوبايت) بين جميع تدفقات الإدخال/الإخراج. في الحالات التي يجب فيها فصل البيانات الموجودة في الذاكرة بواسطة تدفقات الإدخال/الإخراج، يقوم المبرمج عادةً بتخصيص منطقة تخزين إلى عدد من الأقسام الفرعية يساوي عدد تدفقات الإدخال/الإخراج، ثم يصل إلى منطقة تدفق الإدخال/الإخراج المطلوبة عن طريق أخذ العنوان الأساسي للمنطقة المخصصة، وإضافة حاصل ضرب رقم تدفق الإدخال/الإخراج النسبي في حجم كل قسم فرعي إليه.
📝 هل في هذه المقالة خطأ؟
إذا وجدت معلومة تحتاج تصحيحاً أو إضافة، أو أردت حذف المقالة، أرسل لنا طلباً وسنراجعه.
ما رأيك في هذه المقالة؟