التكاليف الإضافية (الحوسبة)

في مجال الحوسبة ، يُقصد بالعبء الزائد استهلاك موارد الحوسبة لجوانب لا ترتبط مباشرةً بتحقيق هدف مُحدد. يُعدّ العبء الزائد ضروريًا للمعالجة العامة، ويؤثر على تحقيق هدف أكثر تركيزًا. يتجلى العبء الزائد في جوانب مثل بطء المعالجة، ونقص الذاكرة، وقلة سعة التخزين، وانخفاض عرض نطاق الشبكة، وزيادة زمن الاستجابة. [ 1 ] يمكن أن يؤثر العبء الزائد على تصميم البرمجيات من حيث البنية، وتصحيح الأخطاء، وإضافة الميزات.

التكاليف الإضافية في الحوسبة هي حالة خاصة من التكاليف الإضافية الهندسية ولها نفس المعنى الأساسي كما هو الحال في الأعمال التجارية: التكاليف الإضافية التنظيمية .

تصميم البرمجيات

اختيار التنفيذ

قد يكون لدى المبرمج أو مهندس البرمجيات خيارات متعددة من الخوارزميات ، والترميزات ، وأنواع البيانات ، وهياكل البيانات ، ولكل منها خصائص معروفة. عند الاختيار بينها، ينبغي مراعاة التكاليف الإضافية لكل منها.

المفاضلات

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

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

تعقيد وقت تشغيل البرنامج

يُحدد تعقيد الخوارزمية عادةً باستخدام ترميز Big O. لا يُشير هذا الترميز إلى مدة تنفيذ الخوارزمية أو مقدار الذاكرة التي تستخدمها، بل يُشير إلى كيفية اعتماد ازدياده على حجم المُدخلات. لا تُؤخذ النفقات العامة في الحسبان عمدًا ، لأنها تختلف من جهاز لآخر، بينما يبقى وقت التشغيل الأساسي للخوارزمية ثابتًا.

ينبغي مقارنة ذلك بالكفاءة الخوارزمية ، التي تأخذ في الاعتبار جميع أنواع الموارد - وهو مزيج (وإن لم يكن تافهاً) من التعقيد والتكاليف الإضافية. 

أمثلة

بيانات تعريف نظام الملفات

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

بيانات تعريف ذاكرة التخزين المؤقت لوحدة المعالجة المركزية

في ذاكرة التخزين المؤقت لوحدة المعالجة المركزية ، تُشير السعة إلى الحد الأقصى لكمية البيانات التي يمكن تخزينها، بما في ذلك البيانات الإضافية، وليس إلى كمية محتوى المستخدم الذي تحتويه. على سبيل المثال،  تخزن ذاكرة تخزين مؤقت بسعة 4 كيلوبايت أقل من 4  كيلوبايت من بيانات المستخدم، لأن جزءًا من المساحة مطلوب للبيانات الإضافية مثل معلومات الإطار والعنوان والوسم. [ 2 ]

بروتوكول الاتصال

يتطلب إرسال حمولة بيانات موثوقة عبر شبكة اتصالات إرسال أكثر من مجرد الحمولة نفسها. يشمل ذلك أيضًا إرسال بيانات تحكم وإشارة متنوعة (بروتوكول التحكم بالنقل TCP ) اللازمة للوصول إلى الوجهة. يُنشئ هذا ما يُسمى بعبء البروتوكول ، حيث لا تُساهم البيانات الإضافية في المعنى الجوهري للرسالة. [ 3 ] [ 4 ]

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

يمكن التعبير عن الحمل الزائد للبروتوكول كنسبة مئوية من البايتات غير المتعلقة بالتطبيق (البروتوكول ومزامنة الإطار ) مقسومة على إجمالي عدد البايتات في الرسالة.

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

يُضيف ترميز المعلومات والبيانات عبئًا إضافيًا أيضًا. يمكن التعبير عن التاريخ والوقت "2011-07-12 07:18:47" كوقت يونكس باستخدام عدد صحيح مُوقّع 32 بت ، باستهلاك 4 بايتات فقط. أما عند تمثيله كسلسلة مُرمّزة بتنسيق UTF-8 وفقًا لمعيار ISO 8601، فسيستهلك التاريخ 19 بايتًا، أي بزيادة في الحجم قدرها 375% مقارنةً بتمثيله كعدد صحيح ثنائي. ويمكن كتابة هذا التاريخ بصيغة XML على النحو التالي بزيادة قدرها 218 حرفًا، مع إضافة السياق الدلالي بأنه تاريخ مُعدّل (CHANGEDATE) بفهرس 1.13104479272011-07-12 07:18:47

<?xml version="1.0" encoding="UTF-8"?> <datetime qualifier= "changedate" index= "1" > <year> 2011 </year> <month> 07 </month> <day> 12 </day> <hour> 07 </hour> <minute> 18 </minute> <second> 47 </second> </datetime>

وترتبط الـ 349 بايت الناتجة عن ترميز UTF-8 لملف XML بزيادة في الحجم بنسبة 8625% مقارنة بالتمثيل العددي الأصلي.

استدعاء الدالة

يتطلب استدعاء دالة مقدارًا ضئيلاً نسبيًا من الحمل الزائد أثناء التشغيل لعمليات مثل صيانة المكدس وتمرير المعاملات . [ 5 ] هذا الحمل الزائد ضئيل نسبيًا، ولكنه قد يُصبح مُشكلة عند وجود العديد من الاستدعاءات (أي في حلقة تكرارية ) أو عندما تكون متطلبات التوقيت دقيقة. في بعض الأحيان، يُمكن للمُترجم تقليل هذا الحمل الزائد عن طريق تضمين الدالة مباشرةً، مما يُلغي استدعاءها . [ 6 ]

انظر أيضاً

مراجع

  1. دينينغ، بيتر (يناير 2003). "العرض العلوي". موسوعة علوم الحاسوب . جون وايلي وأولاده. ص 1341-1343 . ISBN  978-0-470-86412-8.
  2. سورين، دانيال ج. (2009). "الذاكرة المؤقتة والتسلسلات الهرمية للذاكرة" (ملف PDF) . تم الاطلاع عليه في 13 مارس 2019 .عرض تقديمي لمقرر هندسة الحاسوب.
  3. مشاكل الأداء الشائعة في تطبيقات الشبكة - الجزء الأول: التطبيقات التفاعلية ، مقالات تقنية لنظام التشغيل ويندوز إكس بي، مايكروسوفت
  4. زيادة الحمل الزائد للبروتوكول في شبكات IP/ATM ، مركز مينيسوتا للحوسبة الفائقة
  5. "الدوال المضمنة (C++)" . مايكروسوفت ليرن . مايكروسوفت. 22 يناير 2024. تم الاطلاع عليه في 22 مارس 2024 .
  6. ماهافي، تيري (24 يوليو 2019). "تضمين القرارات في Visual Studio" . مدونة فريق C++ . مايكروسوفت.