Mpatrol adalah perpustakaan yang menyediakan debugging kuat sementara mendiagnosis kesalahan runtime yang disebabkan oleh penggunaan yang salah dari memori yang dialokasikan secara dinamis. Ini bertindak sebagai malloc () debugger untuk debug alokasi memori dinamis, meskipun juga dapat melacak dan profil panggilan ke malloc () dan free () juga. Jika Anda tidak tahu apa yang malloc () fungsi atau operator baru [] lakukan perpustakaan ini mungkin bukan untuk Anda. Anda harus memiliki sejumlah keahlian pemrograman dan pengetahuan tentang bagaimana menjalankan baris perintah kompiler dan linker sebelum Anda harus mencoba untuk menggunakan ini.
Seiring dengan menyediakan log yang komprehensif dan dikonfigurasi dari semua operasi memori dinamis yang terjadi selama masa program, perpustakaan mpatrol melakukan pengecekan luas untuk mendeteksi penyalahgunaan memori dialokasikan secara dinamis. Semua fungsi ini dapat diintegrasikan ke dalam kode yang ada melalui penyertaan file header tunggal pada saat kompilasi. Pada UNIX dan Windows platform (dan AmigaOS saat menggunakan GCC) ini bahkan mungkin tidak diperlukan karena perpustakaan mpatrol bisa dihubungkan dengan file objek yang ada di link-waktu atau, pada beberapa platform, bahkan terkait secara dinamis dengan program yang ada pada saat run-time.
Semua logging dan melacak output dari perpustakaan mpatrol dikirim ke file log yang terpisah untuk menjaga diagnosa yang terpisah dari setiap program yang sedang diuji mungkin menghasilkan. Berbagai macam pengaturan perpustakaan juga dapat diubah pada run-time melalui variabel lingkungan, sehingga menghilangkan kebutuhan untuk mengkompilasi ulang atau relink untuk mengubah perilaku perpustakaan.
Sebuah file yang berisi ringkasan statistik profil alokasi memori untuk program tertentu dapat diproduksi oleh perpustakaan mpatrol. File ini kemudian dapat dibaca oleh alat profiling yang akan menampilkan satu set meja berdasarkan data akumulasi. Informasi profil meliputi ringkasan dari semua alokasi memori terdaftar oleh ukuran dan fungsi yang dialokasikan mereka dan daftar kebocoran memori dengan tumpukan panggilan fungsi mengalokasikan. Ini juga termasuk grafik semua alokasi memori yang tercantum dalam bentuk tabel, dan opsional spesifikasi grafik berkas untuk diproses kemudian oleh paket dot visualisasi grafik.
Sebuah file yang berisi jejak dikodekan ringkas dari semua alokasi memori dan deallocations dibuat oleh program juga dapat diproduksi oleh perpustakaan mpatrol. File ini kemudian dapat dibaca oleh alat pelacakan yang akan decode jejak dan menampilkan peristiwa di tabel atau bentuk grafik, dan juga menampilkan setiap statistik yang relevan yang dapat dihitung.
Perpustakaan mpatrol telah dirancang dengan tujuan menggantikan panggilan ke C yang ada dan C ++ fungsi alokasi memori semulus mungkin, tetapi dalam banyak kasus yang mungkin tidak mungkin dan sedikit modifikasi kode mungkin diperlukan. Namun, makro preprocessor yang berisi versi perpustakaan mpatrol disediakan untuk keperluan kompilasi bersyarat sehingga rilis yang membangun dan debug membangun dapat dengan mudah otomatis.
Apa yang baru di rilis ini:.
- Ditambahkan logging yang lebih baik untuk pesan diagnostik
- Ditambahkan jauh lebih baik autoconf, automake dan dukungan libtool.
- Ditambahkan HTML sementara dukungan file log dengan pilihan HTML.
- Perpustakaan sekarang memeriksa untuk memastikan bahwa tidak ada masalah menulis profil dan menelusuri file output.
- Ditambahkan baik Tru64 benang-aman dukungan.
- Tetap masalah menemukan simbol untuk format a.out file objek.
- diagnosa tetap untuk jumlah simbol baca dari Windows DLL.
- Fixed bug yang dihitung total ukuran yang salah dari alokasi ditandai.
- Perintah mpatrol sekarang memiliki pilihan --read-env untuk menggunakan isi yang ada variabel lingkungan MPATROL_OPTIONS.
- Perintah mpsym sekarang autodetects dukungan 64-bit dan sekarang memiliki opsi skip. Kode sumber sekarang mengkompilasi benar pada sistem BSD.
Komentar tidak ditemukan