বিভিন্ন ধরণের অপরিজ্ঞাত আচরণের (বিশেষত বর্ণের অবস্থার মধ্যে) অস্তিত্ব নেই তা পুরোপুরি নিশ্চিত হওয়ার কোনও উপায় নেই।
তবে, এমন অনেকগুলি সরঞ্জাম রয়েছে যা এই ধরণের পরিস্থিতিতে একটি ভাল সংখ্যক প্রদর্শন করে। আপনি প্রমাণ করতে সক্ষম হতে পারেন যে এই ধরণের সরঞ্জামগুলির সাথে একটি সমস্যা বিদ্যমান রয়েছে, যদিও আপনি প্রমাণ করতে পারবেন না যে আপনার স্থিরতা বৈধ।
এই উদ্দেশ্যে কিছু আকর্ষণীয় সরঞ্জাম:
ভালগ্রাইন্ড একটি মেমরি পরীক্ষক check এটি মেমরি ফাঁস, অবিচ্ছিন্ন মেমরি পড়ার, ঝুঁকির পয়েন্টারগুলির ব্যবহার এবং সীমার বাইরে প্রবেশের সন্ধান করে।
হেলগ্রিন্দ একটি থ্রেড সুরক্ষা পরীক্ষক safety এটি জাতি শর্ত খুঁজে।
উভয়ই গতিশীল উপকরণ দ্বারা কাজ করে, যেমন তারা আপনার প্রোগ্রামটিকে যেমন হয় তেমন গ্রহণ করে এবং এটি ভার্চুয়ালাইজড পরিবেশে চালিত করে। এটি তাদের নিরবচ্ছিন্ন, কিন্তু ধীর করে তোলে।
ইউবিএস একটি অনির্ধারিত আচরণ চেকার। এটি সি এবং সি ++ অপরিবর্তিত আচরণের বিভিন্ন ক্ষেত্রে যেমন পূর্ণসংখ্যার ওভারফ্লোস, সীমার বাইরে স্থান পরিবর্তন এবং অনুরূপ স্টাফগুলির সন্ধান করে।
এমএসান একটি মেমরি পরীক্ষক। ভালগ্রাইন্ডের মতো এটিরও লক্ষ্য রয়েছে।
টিসান একটি থ্রেড সুরক্ষা পরীক্ষক। হেলগ্রাইন্ডের মতো এরও লক্ষ্য রয়েছে।
এই তিনটি Clang সংকলক মধ্যে নির্মিত এবং সংকলন সময়ে কোড উত্পন্ন। এর অর্থ হল যে আপনাকে সেগুলি আপনার বিল্ড প্রক্রিয়াতে সংহত করা দরকার (বিশেষত, আপনি ক্ল্যাংয়ের সাথে সংকলন করতে হবে), যা প্রাথমিকভাবে * গ্রাইন্ডের তুলনায় সেটআপ করা আরও কঠিন করে তোলে, তবে অন্যদিকে তাদের রানটাইম ওভারহেডের চেয়ে অনেক কম।
আমি তালিকাভুক্ত সমস্ত সরঞ্জাম লিনাক্স এবং সেগুলির কয়েকটি ম্যাকোজে কাজ করে। আমি এখনও উইন্ডোজ নির্ভর কোনও বিশ্বাস করি না।