📄 history
字号:
Dbx is a descendant of pdx, a debugger that I wrote to work withBerkeley Pascal as my master's project at Berkeley. Pdx was releasedin the fall of 1981. While pdx was being completed, a version withdifferent machine, process, and runtime modules was developed to runon VAX compiled code.In the spring of '82, the use of the string table for storing type encodingswas designed and the VAX C compiler was modified to generate the newsymbol information. In the fall of '82, the modifications to the C compilerand a new version of the debugger, by now named dbx, were installed locallyat Berkeley. In early '83, dbx was installed on the 4.1c release ofBerkeley UNIX.In the spring of '83, Alistair Fyfe, a graduate student at Berkeley,modified dbx and the f77 compiler to enable dbx to debug FORTRAN programs.During this time, dbx was also ported to the Sun.In the fall of '83, dbx was released with 4.2. During that winter andthe spring of '84, dbx was extended to work with Modula-2 in conjunctionwith the development of the Modula-2 compiler at DEC Western Research Lab.In June of '84, a collection of updates reflected the current statusof dbx, including bug fixes and support for Modula-2, was sent to net.sources.Below are some short notes on versions that have been installed since then. Mark Linton6/1 2.0 release to net.sourcesinternal releases7/2 2.5 rewrote name resolution, particularly for procedure nesting7/17 2.6 single stepping through certain kinds of loops, tracing through code compiled for profiling support for Pascal installed on the side but not tested (nor is the associated support in pc)7/19 2.7 open arrays7/31 2.8 print <proc>, qualified names in backtrace, curevent to avoid some "missing trids",8/1 2.9 increased maximum number of arguments from 100 to 1000, increased maximum line size to 1024 to 102408/23 2.10 support for Pascal and test cases for modified pc, code for -k (kernel debugging) added but not debugged, qualified names in traces no longer fatal to not link with -g -- assumes first global is equivalent to -lg better resolution of externals reports when a core image is being used8/25 2.11 fixed some problems with Pascal, e.g., enumerations, increased maximum number of functions from 1001 to 4001, fixed a nasty bug for C (and elsewhere?) having to do with processing types for "known" global variables, changed the syntax/semantics of "print x" where x is a function so that it no longer tries to call it -- "print x()" must be used instead added/fixed syntax for type renaming so that term's can be renamed8/26 2.12 fixed problem with multiple imports (EXTREF's), added dynamic name lookup if static lookup fails before picking at random8/27 2.13 fixed problem in dynamic lookup that caused an infinite loop, if it picks one at random it now prints a message specifying the fully qualified name of the symbol that was picked8/27 2.15 first attack at fixing problem with type renames (loopholes)9/16 2.16 major attempt to fix loopholes by revising node representation and command grammar -- basic need was to make more sense out of when to do indirection changed identifier resolution in object and stabstring so that globals are no longer in top scope (since they could conflict with a module name)9/18 2.17 another problem related to expressions having to do with handling pointers to arrays ...1/1 2.25 made more inroads into kernel debugging, added macros (aliases with arguments), and settable variables1/7 2.26 fixed bug where only mapped first address of block read, have to map each page (still wrong though)1/13 2.27 fixed some user reported problems -- down in runtime didn't work correctly if "curframe" wasn't already set, the process instruction cache had to be flushed when a process is killed (this caused a problem when an object file was remade)1/14 2.28 fixed problem with mapping addresses under -k, added -c option for command files other than .dbxinit fixed occasional problem with testing for end of stack frames (symptom was infinite loop calling nextframe)1/15 2.29 fixed problem with printing dynamic arrays inside aggregates fixed type compatibility for builtin true and false
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -