سؤال

لقد تم اختبار من أداء الذاكرة التعريف AQTime لمعرفة ما إذا كان الأمر يستحق إنفاق تلك الكبيرة $$$ بالنسبة لبلدي دلفي التطبيق.

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

الطريقة التي يفعلون ذلك بكفاءة يجعلني أعتقد أنه قد يكون هناك بعض التقنيات/التقنيات المستخدمة هنا أنني لا أعرف عن ذلك سيكون من المفيد أن تعرف عن.

هل تعرف ما هو نوع من الأساليب التي تستخدم لالتقاط تنفيذ خط سطرا دون رمز التغييرات ؟

هل هناك غيرها من أدوات التنميط هذا أيضا لا غير الغازية خط سطرا التحقق وإذا كان الأمر كذلك, أنها تستخدم نفس التقنيات ؟

هل كانت مفيدة؟

المحلول

هذا هو مجرد تكهنات ، ولكن ربما AQtime هو على أساس تقنية مشابهة مايكروسوفت الطرق الالتفافية?

الطرق الالتفافية هي مكتبة instrumenting التعسفي Win32 وظائف على x86, x64 ، و IA64 الآلات.الطرق الالتفافية وقراءتها Win32 وظائف عن طريق إعادة كتابة في الذاكرة رمز الهدف وظائف.

نصائح أخرى

ولقد قدم التعريف المصدر المفتوح لدلفي الذي يفعل نفس الشيء: http://code.google.com/p/asmprofiler/

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

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

وبطبيعة الحال، فإنه لا يزال صعبا إلى رمز، ولكن عندما أقول بسهولة يعني أنك يمكن أن تفعل ذلك دون إضاعة الوقت كسر على كل وتعليمات لتحديث العداد.

وكان وTurboPower طويلا منذ التي باتت تحتضر أيضا أداة التنميط / تحليل كبيرة لدلفي دعت الشرطة السرية QA جناح. لقد وجدت أبسط كثيرا من AQTime، ولكن أيضا أسهل بكثير من الحصول على نتيجة ذات مغزى. قد يكون من المفيد محاولة لتعقب - موقع ئي باي، ربما

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top