FACTOID # 15: A mere 0.8% of West Virginians were born in a foreign country.
 
 Home   Encyclopedia   Statistics   States A-Z   Flags   Maps   FAQ   About 
   
 
WHAT'S NEW
RELATED ARTICLES
People who viewed "GDB" also viewed:
 

SEARCH ALL

FACTS & STATISTICS    Advanced view

Search encyclopedia, statistics and forums:

 

 

(* = Graphable)

 

 


GNU Debugger
Image:archer.jpg
Developed by GNU Project
Initial release 1986
Latest release 6.8 / March 27, 2008
Genre Debugger
License GPL
Website gnu.org/software/gdb/

The GNU Debugger, usually called just GDB, is the standard debugger for the GNU software system. It is a portable debugger that runs on many Unix-like systems and works for many programming languages, including Ada, C, C++, FreeBASIC, and Fortran. Captain Jonathan Archer File history Legend: (cur) = this is the current file, (del) = delete this old version, (rev) = revert to this old version. ... For other uses, see Software developer (disambiguation). ... The GNU logo, drawn by Etienne Suvasa The GNU Project was announced in 1983 by Richard Stallman. ... Year 1986 (MCMLXXXVI) was a common year starting on Wednesday (link displays 1986 Gregorian calendar). ... Code complete redirects here. ... is the 86th day of the year (87th in leap years) in the Gregorian calendar. ... 2008 (MMVIII) is the current year, a leap year that started on Tuesday of the Common Era (or Anno Domini), in accordance with the Gregorian calendar. ... A debugger is a computer program that is used to test and debug other programs. ... A software license is a legal agreement which may take the form of a proprietary or gratuitous license as well as a memorandum of contract between a producer and a user of computer software. ... GPL redirects here. ... A website (alternatively, web site or Web site) is a collection of Web pages, images, videos or other digital assets that is hosted on one or more web servers, usually accessible via the Internet. ... A debugger is a computer program that is used to test and debug other programs. ... GNU (pronounced ) is a computer operating system composed entirely of free software. ... Diagram of the relationships between several Unix-like systems A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification. ... A programming language is an artificial language that can be used to control the behavior of a machine, particularly a computer. ... Ada is a structured, statically typed imperative computer programming language designed by a team led by Jean Ichbiah of CII Honeywell Bull during 1977–1983. ... In computing, C is a general-purpose, block structured, procedural, imperative computer programming language developed in 1972 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system. ... C++ (pronounced ) is a general-purpose programming language. ... FreeBASIC is a free/open source (GPL), 32-bit BASIC compiler for Microsoft Windows, protected-mode DOS (DOS extender), Linux, and Xbox. ... Fortran (also FORTRAN) is a statically typed, compiled, programming language originally developed in the 1950s and still heavily used for scientific computing and numerical computation half a century later. ...

Contents

History

GDB was first written by Richard Stallman in 1986 as part of his GNU system, after his GNU Emacs was "reasonably stable".[1] GDB is free software released under the GNU General Public License (GPL). It was modeled after the Dbx debugger, which came with Berkeley Unix distributions. Richard Matthew Stallman (born March 16, 1953), often abbreviated rms,[2] is an American software freedom activist, hacker,[3] and software developer. ... Year 1986 (MCMLXXXVI) was a common year starting on Wednesday (link displays 1986 Gregorian calendar). ... GNU (pronounced ) is a computer operating system composed entirely of free software. ... GNU Emacs is one of the two most popular versions of Emacs (see also XEmacs). ... Free software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with minimal restrictions only to ensure that further recipients can also do these things. ... GPL redirects here. ... dbx is a popular, Unix-based source-level debugger found primarily on Solaris, AIX, IRIX, and BSD Unix systems. ... BSD redirects here; for other uses see BSD (disambiguation). ...


From 1990 to 1993 it was maintained by John Gilmore while he worked for Cygnus Solutions. Now it is maintained by GDB Steering Committee which is appointed by Free Software Foundation.[2] John Gilmore John Gilmore is one of the founders of the Electronic Frontier Foundation, the Cypherpunks mailing list, and Cygnus Solutions. ... Cygnus Solutions, originally Cygnus Support, was founded in 1989 by John Gilmore, Michael Tiemann and David Henkel-Wallace to provide commercial support for free software. ... The Free Software Foundation (FSF) is a non-profit corporation founded in October 1985 by Richard Stallman to support the free software movement (free as in freedom), and in particular the GNU project. ...


Technical details

Features

GDB offers extensive facilities for tracing and altering the execution of computer programs. The user can monitor and modify the values of programs' internal variables, and even call functions independently of the program's normal behavior. A computer program is a collection of instructions that describe a task, or set of tasks, to be carried out by a computer. ... In computer science and mathematics, a variable (pronounced ) (sometimes called an object or identifier in computer science) is a symbolic representation used to denote a quantity or expression. ... In computer science, a subroutine (function, procedure, or subprogram) is a sequence of code which performs a specific task, as part of a larger program, and is grouped as one, or more, statement blocks; such code is sometimes collected into software libraries. ...


GDB target processors (as of 2003) include: Alpha, ARM, AVR, H8/300, System/370, System 390, X86 and X86-64, IA-64 "Itanium", Motorola 68000, MIPS, PA-RISC, PowerPC, SuperH, SPARC, and VAX. Year 2003 (MMIII) was a common year starting on Wednesday of the Gregorian calendar. ... DEC Alpha AXP 21064 Microprocessor die photo Package for DEC Alpha AXP 21064 Microprocessor Alpha AXP 21064 bare die mounted on a business card with some statistics The DEC Alpha, also known as the Alpha AXP, is a 64-bit RISC microprocessor originally developed and fabricated by Digital Equipment Corp... The ARM architecture (previously, the Advanced RISC Machine, and prior to that Acorn RISC Machine) is a 32-bit RISC processor architecture developed by ARM Limited that is widely used in a number of embedded designs. ... Atmel AVR ATmega8 PDIP. The AVR is a Modified Harvard architecture 8-bit RISC single chip microcontroller (µC) which was developed by Atmel in 1996. ... H8 is the name of a large family of 8-bit and 16-bit microcontrollers made by Renesas Technology Corp. ... IBM logo The IBM System/370 (often: S/370) was a model range of IBM mainframes announced on June 30, 1970 as the successors to the System/360 family. ... The title given to this article is incorrect due to technical limitations. ... x86 or 80x86 is the generic name of a microprocessor architecture first developed and manufactured by Intel. ... The AMD64 or x86-64 is a 64-bit processor architecture invented by AMD. It is a superset of the x86 architecture, which it natively supports. ... 2007 Itanium logo Itanium is the brand name for 64-bit Intel microprocessors that implement the Intel Itanium architecture (formerly called IA-64). ... The Motorola 68000 is a 16/32-Bit [1] CISC microprocessor core designed and marketed by Freescale Semiconductor (formerly Motorola Semiconductor Products Sector). ... A MIPS R4400 microprocessor made by Toshiba. ... PA-RISC is a microprocessor architecture developed by Hewlett-Packards Systems & VLSI Technology Operation. ... PowerPC is a RISC microprocessor architecture created by the 1991 Apple–IBM–Motorola alliance, known as AIM. Originally intended for personal computers, PowerPC CPUs have since become popular embedded and high-performance processors as well. ... The SuperHichem (or SH) is brandname of a certain microcontroller and microprocessor architecture. ... Sun UltraSPARC II Microprocessor Sun UltraSPARC T1 (Niagara 8 Core) SPARC (Scalable Processor Architecture) is a RISC microprocessor instruction set architecture originally designed in 1985 by Sun Microsystems. ... VAX is a 32-bit computing architecture that supports an orthogonal instruction set (machine language) and virtual addressing (i. ...


Lesser-known target processors supported in the standard release have included A29K, ARC, CRIS, D10V, D30V, FR-30, FR-V, Intel i960, M32R, 68HC11, Motorola 88000, MCORE, MN10200, MN10300, NS32K, Stormy16, V850, and Z8000. (Newer releases will likely not support some of these.) An ARC console screen on an Alpha AXP system Advanced RISC Computing is a specification promulgated by a defunct consortium of computer manufacturers (the Advanced Computing Environment project), setting forth a standard MIPS RISC-based computer hardware and firmware environment. ... Körös (Romanian: Criş) is the name of a river in eastern Hungary. ... This page is about the Fujitsu Microprocessor. ... Intels i960 (or 80960) was a RISC-based microprocessor design that became popular during the early 1990s as an embedded microcontroller, becoming a best-selling CPU in that field, along with the competing AMD 29000. ... The Renesas M32R is a 32-bit embedded RISC microcontroller originally developed and manufactured by Mitsubishi Electric Corporation, succeeded by a FPGA-implemented MMUed M32R variant named mappi which runs Debian/GNU Linux, and is supported by the GNU Compiler Collection. ... The Motorola 68HC11 (6811 or HC11 for short) is a microcontroller (µC) family from Motorola, descended from the Motorola 6800 microprocessor, and a subfamily of the 68h family. ... The 88000 (m88k for short) is a microprocessor design produced by Motorola. ... The 320xx is a series of microprocessors from National Semiconductor (NS, Natsemi). The 320xx processors have a coprocessor interface which allows coprocessors such as FPUs and MMUs to be attached in a chain. ... The NEC Electronics Corporation V850 is a 32-bit embedded RISC microcontroller originally developed and manufactured by NEC, succeeded by V850 variants named V850E, and V850E2 which run uClinux, and is supported by GNU_Compiler_Collection. ... The Z8000 was a 16-bit microprocessor introduced by ZiLOG in 1979. ...


GDB has compiled-in simulators for target processors even for lesser-known target processors such like M32R or V850. An Instruction Set Simulator (ISS) is a simulation model, usually coded in a high-level language, which mimics the behavior of a processor by reading instructions and maintaining internal variables which represent the processors registers. ...


GDB is still actively developed. As of early 2007, the focus is on adding "reversible debugging" support[3] — allowing a debugging session to step backwards, much like rewinding a crashed program to see what happened. Adding reversible debugging is one of the High Priority Free Software Projects.


Remote debugging

GDB offers a 'remote' mode often used when debugging embedded systems. Remote operation is when GDB runs on one machine and the program being debugged runs on another. GDB can communicate to the remote 'stub' which understands GDB protocol via Serial or TCP/IP.


The same mode is also used by KGDB for debugging a running Linux kernel on the source level with gdb. With kgdb, kernel developers can debug a kernel in much the same way as they debug application programs. It makes it possible to place breakpoints in kernel code, step through the code and observe variables. On architectures where hardware debugging registers are available, watchpoints can be set which trigger breakpoints when specified memory addresses are executed or accessed. kgdb requires an additional machine which is connected to the machine to be debugged using a serial cable or ethernet. On FreeBSD, it is also possible to debug using Firewire DMA. The Linux kernel is a Unix-like operating system kernel. ... Serial Cables are typically used for RS-232 communication. ... Ethernet is a large, diverse family of frame-based computer networking technologies that operate at many speeds for local area networks (LANs). ... FreeBSD is a Unix-like free operating system descended from AT&T UNIX via the Berkeley Software Distribution (BSD) branch through the 386BSD and 4. ... The 6-pin and 4-pin FireWire 400 Connectors The alternative ethernet-style cabling used by 1394c FireWire is Apple Inc. ... Direct memory access (DMA) is a feature of modern computers that allows certain hardware subsystems within the computer to access system memory for reading and/or writing independently of the central processing unit. ...


Limitations

The debugger does not contain its own graphical user interface, and defaults to a command-line interface. Several front-ends have been built for it, such as DDD, Eclipse CDT, Xcode debugger, GDBtk/Insight and the "GUD mode" in GNU Emacs. These offer facilities similar to debuggers found in integrated development environments. GUI redirects here. ... A command line interface or CLI is a method of interacting with a computer by giving it lines of textual commands (that is, a sequence of characters) either from keyboard input or from a script. ... Data Display Debugger, or DDD, is a popular free software (under the GNU GPL) graphical user interface for command-line debuggers such as GDB, DBX, JDB, WDB, XDB, the Perl debugger, and the Python debugger. ... The following is a list of notable projects and plugins for the Eclipse IDE. // These projects are maintained by the Eclipse community and hosted by the Eclipse Foundation. ... Xcode is Apple Computers IDE for developing applications and other software for Mac OS X. It is shipped free with Mac OS X. First introduced on October 24, 2003 along with the release of Mac OS X v10. ... GNU Emacs is one of the two most popular versions of Emacs (see also XEmacs). ... An integrated development environment (IDE), also known as integrated design environment and integrated debugging environment, is a programming environment that has been packaged as an application program,that assists computer programmers in developing software. ...


Some other debugging tools have been designed to work with GDB, such as memory leak detectors. In computer science, a memory leak is a particular kind of unintentional memory consumption by a computer program where the program fails to release memory when no longer needed. ...


Examples of commands

$ gdb prog.out debug prog.out (from the shell)
gdb> run -v run the loaded program with the parameters
gdb> bt backtrace (in case the program crashed)
gdb> info registers dump all registers
gdb> disass $pc-32 $pc+32 disassemble

An example session

This is an example GDB session on the example program in Stack trace: A stack trace (also called backtrace) is a report of the active stack frames instantiated by the execution of a program. ...

 GNU gdb Red Hat Linux (6.3.0.0-1.21rh) Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1". (gdb) run Starting program: /home/sam/programming/crash Reading symbols from shared object read from target memory...done. Loaded system supplied DSO at 0xc11000 This program will demonstrate gdb Program received signal SIGSEGV, Segmentation fault. 0x08048428 in function_2 (x=24) at crash.c:22 22 return *y; (gdb) edit (gdb) shell gcc crash.c -o crash -gstabs+ (gdb) run The program being debugged has been started already. Start it from the beginning? (y or n) y warning: cannot close "shared object read from target memory": File in wrong format `/home/sam/programming/crash' has changed; re-reading symbols. Starting program: /home/sam/programming/crash Reading symbols from shared object read from target memory...done. Loaded system supplied DSO at 0xa3e000 This program will demonstrate gdb 24 Program exited normally. (gdb) quit 

The program is being run. After the cause of the segmentation fault is found, the program is edited to use the correct behavior. The corrected program is recompiled with GCC and then run. The GNU Compiler Collection (usually shortened to GCC) is a set of programming language compilers produced by the GNU Project. ...


See also

Free software portal

Image File history File links Free_Software_Portal_Logo. ... dbx is a popular, Unix-based source-level debugger found primarily on Solaris, AIX, IRIX, and BSD Unix systems. ...

References

  1. ^ Richard Stallman lecture at the Royal Institute of Technology, Sweden (1986-10-30). Retrieved on 2006-09-21. “Then after GNU Emacs was reasonably stable, which took all in all about a year and a half, I started getting back to other parts of the system. I developed a debugger which I called GDB which is a symbolic debugger for C code, which recently entered distribution. Now this debugger is to a large extent in the spirit of DBX, which is a debugger that comes with Berkeley Unix.”
  2. ^ GDB Steering Committee. Retrieved on 2008-05-11.
  3. ^ GDB and Reversible Debugging. Retrieved on 2007-03-01. “Reversible debugging (the ability to "step backwards" through a program) is an obviously powerful tool. GDB does not support it today, but the foundations have been laid, and the GDB maintainers are looking for contributors interested in expanding those foundations.”

Year 2006 (MMVI) was a common year starting on Sunday of the Gregorian calendar. ... is the 264th day of the year (265th in leap years) in the Gregorian calendar. ... 2008 (MMVIII) is the current year, a leap year that started on Tuesday of the Common Era (or Anno Domini), in accordance with the Gregorian calendar. ... is the 131st day of the year (132nd in leap years) in the Gregorian calendar. ... Year 2007 (MMVII) was a common year starting on Monday of the Gregorian calendar in the 21st century. ... is the 60th day of the year (61st in leap years) in the Gregorian calendar. ...

External links

Documentation

Richard Matthew Stallman (born March 16, 1953), often abbreviated rms,[2] is an American software freedom activist, hacker,[3] and software developer. ... The Free Software Foundation (FSF) is a non-profit corporation founded in October 1985 by Richard Stallman to support the free software movement (free as in freedom), and in particular the GNU project. ...

Tutorials

The GNU logo, drawn by Etienne Suvasa The GNU Project was announced in 1983 by Richard Stallman. ... The GNU Manifesto was written by Richard Stallman at the beginning of the GNU Project, to ask for participation and support. ... The Free Software Foundation (FSF) is a non-profit corporation founded in October 1985 by Richard Stallman to support the free software movement (free as in freedom), and in particular the GNU project. ... This article or section does not adequately cite its references or sources. ... Image File history File links This is a lossless scalable vector image. ... GPL redirects here. ... The GNU Lesser General Public License (formerly the GNU Library General Public License) or LGPL is a free software license published by the Free Software Foundation. ... // Affero General Public License The Affero General Public License (or AGPL) is a free software license derived from the General Public License with an addition section to cover use over a computer network. ... “GFDL” redirects here. ... Some free software projects, notably GNU Guile,[1] the run-time libraries of GNAT,[1] and GNU Classpath,[2] distribute code under the terms of the GNU General Public License (GPL) but with an additional section known as the GPL linking exception. ... GNU (pronounced ) is a computer operating system composed entirely of free software. ... GNU variants are operating systems based on GNU but not using the Hurd. ... Hurd redirects here. ... This article is about the mythical creature. ... Gnuzilla, or GNUzilla, is a derivation of the Mozilla Application Suite created by the GNU Project as an attempt to be entirely free software. ... Gnash is a project which aims to create a player and browser plugin for the Adobe Flash file format which is free software, replacing the proprietary software niche currently occupied by Adobe Flash Player. ... This article is about the Unix shell. ... The GNU Compiler Collection (usually shortened to GCC) is a set of programming language compilers produced by the GNU Project. ... GNU Emacs is one of the two most popular versions of Emacs (see also XEmacs). ... Glibc is the GNU projects C standard library. ... The GNU Core Utilities or coreutils is a package of GNU software containing many of the basic tools such as cat, ls, and rm needed for Unix-like operating systems. ... The GNU build system is a suite of tools produced by the GNU project that assist in making packages portable to many UNIX-like systems. ... This is an incomplete list of the software packages developed for or maintained by the Free Software Foundation for GNU, a free UNIX-compatible operating system whose development started in 1984. ... Robert (aka Bob) Chassell was one of the founding directors of Free Software Foundation (FSF) in 1985. ... Loïc Dachary is a pioneer of the GNU Project and notably active in free software development since 1987. ... Ricardo Galli Ricardo Adolfo Galli Granada, also known as gallir, is a doctor of computer science at the University of the Balearic Islands, where he teaches operating system design. ... Georg C. F. Greve (born March 10, 1973 in Helgoland, Germany) is initiator and president of the Free Software Foundation Europe. ... Federico Heinz is a Latin-American programmer and Free Software advocate living in Argentina. ... Benjamin Mako Hill (b. ... He was Chief Executive of Free Software Foundation and is now CTO of Software Freedom Law Center (SFLC). ... Eben Moglen is a professor of law and legal history at Columbia University, and is the founder, Director-Counsel and Chairman of Software Freedom Law Center, whose client list includes numerous pro bono clients, such as the Free Software Foundation. ... Richard Matthew Stallman (born March 16, 1953), often abbreviated rms,[2] is an American software freedom activist, hacker,[3] and software developer. ... William John Sullivan (more commonly known as John Sullivan[2]) (born December 6th, 1976) is a software freedom activist, hacker, and writer. ... Leonard Len H. Tower Jr. ... The GNU/Linux naming controversy is a dispute among members of the free and open source software community about how to refer to the computer operating systems commonly called Linux. GNU/Linux is the term promoted by the Free Software Foundation (FSF), its founder Richard Stallman, and its supporters, for... Promotional poster for two disc edition of Revolution OS Revolution OS is a documentary which traces the history of GNU, Linux, Free Software and the Open Source movement. ...

  Results from FactBites:
 
GDB: The GNU Project Debugger (398 words)
GDB, the GNU Project debugger, allows you to see what is going on `inside' another program while it executes -- or what another program was doing at the moment it crashed.
Those programs might be executing on the same machine as GDB (native) or on another machine (remote).
This page is maintained by the GDB developers.
GDB Tutorial (857 words)
GDB has tons of features, however, you only need to use a few for it to be very helpful.
The goal of gdb is to give you enough info to pinpoint where your program crashes, and find the bad pointer that is the cause of the problem.
Emacs intercepts output from gdb and interprets it for you.
  More results at FactBites »

 
 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments

Want to know more?
Search encyclopedia, statistics and forums:

 


Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms, 1022, m