Some information about tools we’re using in this course.

Software development

These tools are common to all sorts of Unix-facing software development, not just security work.

Review materials

Students have previously asked for access to lab and tutorial materials that I prepared for an earlier course (ECE 3400 / ENGI 3891), to help refresh their memories about some of these practical tools. Just in case they’re helpful, you can find my old lab handouts here:

Lab 0: version control

Subversion, so maybe not super-relevant for us

Lab 1: compiler workflow

Compilation, nm, objdump, etc.

Lab 2: pointers

Exploring (parts of) the stack, heap, etc. (though in far less detail than we’ve been doing in this course)

Lab 3: debugging

Some (very) elementary use of gdb

Lower-level tools

These tools are less often required for everyday software development, but they’re still not security-specific.