Valgrind
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Valgrind

on

  • 3,121 views

 

Statistics

Views

Total Views
3,121
Views on SlideShare
3,117
Embed Views
4

Actions

Likes
0
Downloads
20
Comments
0

1 Embed 4

http://www.slideshare.net 4

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Valgrind Presentation Transcript

  • 1. Valgrind Alejandro García Castro
  • 2. List of topics
    • Review
    • Common parameters
    • Common errors checking memory
    • Leak types
  • 3. Introduction
    • Instrumentation framework to build analysis tools
    • It has tools that allows you to debug and profile programs
    • Very commonly used in a lot of projects and companies
    • CAUTION: Veeery slow!!
  • 4. Tools
    • It includes tools for:
      • memory error detector (memcheck (default)
      • thread error detector (hellgrind)
      • cache and branch-prediction profiler (cachegrind)
      • call-graph generating cache profiler (callgrind)
      • heap profiler (massif)
  • 5. Usual parameters
    • num-callers
    • db-attach
    • trace-children
    • suppressions
  • 6. Common errors
    • Illegal read / Illegal write errors
    • Use of uninitialized values
    • Illegal frees
    • When a block is freed with an inappropriate deallocation function
    • Passing system call parameters with inadequate read/write permissions
  • 7. Common errors (II)
    • Overlapping source and destination blocks
    • Memory leak detection
  • 8. Leak types
    • Still reachable: A pointer to the start of the block is found
    • Possibly lost, or "dubious": A pointer to the interior of the block is found.
    • Definitely lost, or "leaked": The worst outcome is that no pointer to the block can be found.
  • 9. References
    • http://valgrind.org/