Linux
Linux Reference Books
- Michael Kerrisk, The Linux Programming Interface, No Starch Press, 2010.
- The essential Linux system programming guide by the maintainer of the Linux man pages. Clear, authoritative, and encyclopedic. Includes file I/O, processes, signals, time, threads, shared libraries, IPC, synchronization, and sockets. A great book.
Online GDB Materials
- Beej’s Quick Guide to GDB (based on the very handy gdb -tui mode)
- Two-page x86-64 GDB cheat sheet (pdf, txt)
Online C and Linux Materials
- CS:APP3e Unix FAQ
- Prof. Norm Matloff’s Unix/C Tutorial Center
- The GNU project provides online manuals for all GNU tools, including Emacs, GCC, GDB, and Make.
IA32 and x86-64 Documentation
The definitive Intel 64 and IA-32 Architectures Software Developer’s Manuals are available online. These include:
- Volume 1: Basic Architecture
- Volume 2a: Instruction Set Reference, A-M
- Volume 2b: Instruction Set Reference, N-Z
- Volume 3a: System Programming Guide, Part 1
- Volume 3b: System Programming Guide, Part 2
Material from the CS:APP Textbook
- Labs for self-study students (without solutions)
- Original PowerPoint line drawings and Excel graphs
- Code examples
The Debian Administrator’s Handbook
Programming Languages
Golang
https://github.com/photoprism/photoprism
https://github.com/appleboy/gorush
https://github.com/EDDYCJY/go-gin-example
https://github.com/gothinkster/golang-gin-realworld-example-app