SOFTWARE DEVELOPMENT REFERENCE MATERIAL
C programming references:
The C Library Reference Guide, by Eric Huss
Wikipedia:
Python references:
Linux programming references:
INTER-PROCESS COMMUNICATIONS (IPC)
General
Chapter 6 – Linux Interprocess Communications, from The Linux Programmer's Guide, hosted by The Linux Documentation Project (TLDP)
Interprocess communication / UNIX IPC programming, by 'mij':
Slide show on Inter Process Communications
Slide show: An introduction to Linux IPC, by Michael Kerrisk
Parallel Programming in C for the Transputer (obsolete device, but solid concepts), by D. Thiebaut
Message Queues (older system V style and newer Posix style)
Unix Domain Sockets (or IPC sockets)
Mutexes
SERIAL COMMUNICATIONS
HDLC (High-level Data Link Control) is a protocol used in conjunction with synchronous communications over dialup connections, among other things.
cURL
Sample code using C code with cURL library to send mail through SSL/TLS email server
LATEX
LaTeX command summary (PDF)
Page layout in LaTeX (PDF)
LaTeX help 1.1, offered by the Emerson Center for Scientific Computation at Emory University (Atlanta, GA, USA)
LaTeX general help, offered by the Central European University (Hungary)
Using LaTeX, offered by the University of Southern Queensland (Australia)
LaTeX packages I've used as a part of creating SDK documentation:
chngpage / changepage, a package for making changes to a specific page without affecting the parameters of any other pages (PDF)
framed, a package for creating boxes and shaded areas for text (PDF)
lastpage, a package that can create a "macro" for the number of document pages that can be inserted in the document (PDF)
RPM
Maximum RPM, a "book" by Red Hat about how to distribute software through Redhat Package Manager (RPM) files
RPM HOWTO document by Red Hat (the creator of RPM)
A series of arricles from IBM about using RPM to distribute software
An example RPM spec file from the KMyMony project documentation.
A series of blog postings in two parts about creating an RPM spec file
DEVICE DRIVERS
The Linux Kernel Module Programming Guide
Linux Device Drivers:
3rd Edition (2.6 kernel)
2nd Edition (2.4 kernel)
VI