LinuxLinks.com
Newbies What Next ? News Forums Calendar

Search





News Sections
Home
General News (3987/0)
Reviews (637/0)
Press Releases (465/0)
Distributions (197/0)
Software (912/0)
Hardware (537/0)
Security (192/0)
Tutorials (356/0)
Off Topic (181/0)


User Functions
Username:

Password:

Don't have an account yet? Sign up as a New User


Events
There are no upcoming events




D.U.M.A

D.U.M.A

DUMA is an open-source library to detect buffer overruns and under-runs in C and C++ programs.

DUMA helps developers detect common programming bugs:

  • Overrunning the end (or beginning) of a dynamically allocated buffer
  • Using a dynamically allocated buffer after returning it to the heap
  • Detecting memory leaks
  • Detects mismatch of allocation/deallocation functions: e.g. allocation with malloc() but deallocation with operator delete

Unlike other malloc() debuggers, DUMA will detect read accesses as well as writes, and it will pinpoint the exact instruction that causes an error.

DUMA uses the virtual memory hardware of your computer to place an inaccessible memory page immediately after (or before, at the user's option) each memory allocation. When software reads or writes this inaccessible page, the hardware issues a segmentation fault, stopping the program at the offending instruction. It is then trivial to find the erroneous statement using your favorite debugger. In a similar manner, memory that has been released by free() is made inaccessible, and any code that touches it will get a segmentation fault.

This library is a fork of Buce Perens Electric Fence library and adds some additional functionality.

 DUMA 2.5.15

Price
Free to download

Size
0.2MB
License

GNU GPL

Developer
Hayati Ayguen, Michael Eddington

Website
duma.sourceforge.net

System Requirements

Support:

Selected Reviews:

Features include:

  • "Overloads" all standard memory allocation functions like malloc(), calloc(), memalign(), strdup(), operator new, operator new[] and also their counterpart deallocation functions like free(), operator delete and operator delete[]
  • Uses the MMU (memory management unit) of the CPU: allocates and protects an extra memory page to detect any illegal access beyond the top/bottom of the buffer
  • Stops the program at exactly that instruction, which makes the erroneous access to the protected memory page, allowing location of the defective source code in a debugger; detects erroneous writes at the non-protected end of the memory block at deallocation of the memory block
  • Detects a mismatch of allocation/deallocation functions: e.g allocation with malloc() but deallocation with operator delete
  • Leak detection: detect memory blocks which were not deallocated until program exit
  • Preloading of the library
  • Allowing tests without necessity of changing source code or recompilation
Return to Debuggers Home Page

Bookmark and Share


Last Updated Saturday, May 30 2015 @ 12:29 PM EDT


We have written a range of guides highlighting excellent free books for popular programming languages. Check out the following guides: C, C++, C#, Java, JavaScript, CoffeeScript, HTML, Python, Ruby, Perl, Haskell, PHP, Lisp, R, Prolog, Scala, Scheme, Forth, SQL, Node.js (new), Fortran (new), Erlang (new), Pascal (new), and Ada (new).


Group Tests
100 Essential Apps
All Group Tests


Top Free Software
5 Office Suites
3 Lean Desktops
7 Document Processors
4 Distraction Free Tools
9 Project Management
4 Business Solutions
9 Groupware Apps
14 File Managers
10 Databases
21 Backup Tools
21 Productivity Tools
5 Note Taking Apps
9 Terminal Emulators
21 Financial Tools
5 Bitcoin Clients
21 Text Editors
21 Video Emulators
21 Home Emulators
42 Graphics Apps
6 CAD Apps
42 Scientific Apps
10 Web Browsers
42 Email Apps
12 Instant Messaging
10 IRC Clients
7 Twitter Clients
12 News Aggregators
11 VoIP Apps
42 Best Games
9 Steam Games
42 Audio Apps
5 Music Streaming
42 Video Apps
5 YouTube Tools
80 Security Apps
9 System Monitoring
8 Geometry Apps
Free Console Apps
14 Multimedia
4 Audio Grabbers
9 Internet Apps
3 HTTP Clients
5 File Managers
Programming
8 Compilers
9 IDEs
9 Debuggers
7 Revision Control Apps
6 Doc Generators
Free Web Software
21 Web CMS
14 Wiki Engines
8 Blog Apps
6 eCommerce Apps
5 Human Resource Apps
10 ERP
10 CRM
6 Data Warehouse Apps
8 Business Intelligence
6 Point-of-Sale

Other Articles
Migrating from Windows
Back up your data
20 Free Linux Books
24 Beginner Books
12 Shell Scripting Books


Older Stories
Saturday 04/25
  • What are good command line HTTP clients? (0)

  • Sunday 04/12
  • First Peek at XBian on the Raspberry Pi 2 (0)

  • Saturday 04/04
  • First Look at OSMC RC on the Raspberry Pi 2 (0)

  • Sunday 03/29
  • First Steps with OpenELEC on the Raspberry Pi 2 (0)
  • Ubuntu MATE 15.04 for Raspberry Pi 2 (0)

  • Monday 03/16
  • MIPS Creator CI20 v Raspberry Pi 2 (0)
  • Raspberry Pi 2: Raspbian (ARMv6) v Linaro (ARMv7) (0)

  • Friday 03/06
  • Raspberry Pi 2 review (0)

  • Sunday 02/22
  • Chess in a Few Bytes (0)
  • Learn the Art of Computer Programming With These Great Free Beginner Books (2)


  • Vote

    What Linux distribution do you run on your main computer?

    Debian
    Fedora
    Mint
    Slackware
    openSuSE
    Arch
    Ubuntu
    Redhat
    Mageia
    CentOS
    FreeBSD
    Results
    848 votes | 3 comments

    Built with GeekLog and phpBB
    Comments to the webmaster are welcome
    Copyright 2009 LinuxLinks.com - All rights reserved