Home
Details
Lectures

Reference

Reference

Books

  • Intel 80386 Programmer's Reference Manual, 1987 (HTML). (local copy - HTML)
    Much shorter than the full current Intel Architecture manuals, but describes all processor features used in this course.
    Also note that recent version of gdb supports Intel systax. Here is such a sample code.
  • The C Programming Language (website)
    C programming bible.
  • Advanced Programming in Unix Environment. (website)
    Unix programming bible, covers every bit of details.
  • Linking, Loading and Libraries. (website)
    Discuss linking and loading details at user space, the ELF, the shared objects, and also discusses processes and Windows PE.

Softwares

  • VMWare
    Be sure to get a latest version (we recommend version 8.0 or above), for the old version contains many bugs.
  • Ubuntu (Linux)
    Any variant of Linux distribution is OK. The offical version used in this course is a prebuilt Ubuntun (version 12.04), as it is distributed with many pre-installed softwares, use it. There are two built-in accounts created:
    • User ID: root, Password: seedubuntu
    • User ID: seed, Password: dees
  • GDB.
    An article about debugging with gdb.
    Also make sure other utilities have been installed: gcc, gas, ld, objdump, readelf.
  • ddd.
    A graphical front-end for many debuggers, including gdb.
  • edb
    A binary-level debugger, pretty good for debugging binaries without source code and even without auxiliary debugging information.
    You can download edb here. And then follow installation instructions below to install edb on your machine:
            $ su root
            $ ******** (<===== your passwd)
            # apt-get install qt4-dev-tools
            # apt-get install libboost-dev
            // Go to the directory the downloaded tarball resides
            # cd the-download-directory   
            # tar -xf debugger-0.9.18.tgz
            # cd debugger
            # qmake
            # make
            # make install
            # exit
            $ edb &
            

Documentations