Learn C Programming

lesson ৫ / ৯ · Dynamic memory

Module ১৪ · Dynamic memory

Leak, double free, আর যে tool এগুলো ধরে ফেলে

Account থাকলেই freeপড়া

Kenji-র server প্রতিটা request-এর উত্তর ঠিকঠাক দেয়, আর প্রতিটা থেকে 4 KB চিরদিনের মতো রেখে দেয়। মিনিটে হাজারটা request এলে ঘণ্টায় জমে 240,000 KB, মানে একটা Playground run যতটা ছুঁতে পারে, সেই 256,000 KB-এর প্রায় সমান। এক দিন পরে 5 GB-এর বেশি।

পড়তে login করুন

Lesson টা free, শুধু account লাগবে

Account খুলতে কিছু লাগে না, আর এই track এর Pro লেখা নেই এমন প্রতিটা lesson খুলে যায়, যে device এ পড়ুন না কেন।

Leak, double free, আর যে tool এগুলো ধরে ফেলে এর ভেতরে কী আছে

  1. Leak: এমন block, যার কাছে কেউ পৌঁছাতে পারে না
  2. Block হারানোর দুইটা উপায়
  3. প্রতিটা block-এর একজনই owner
  4. Double free: glibc program থামিয়ে দেয়
  5. Use after free: ভুল সংখ্যা, কিন্তু crash নেই
  6. malloc যা দেয়নি, সেটা free করা
  7. AddressSanitizer আর LeakSanitizer
  8. Analyzer: run না করেই GCC পথগুলো check করে
  9. Valgrind, তোমার নিজের Linux মেশিনে
  10. Playground কেন leak ধরতে পারে না
  11. Leak checklist