KEY BENEFIT A conceptual approach to C and Unix programming with hands-on examples. KEY TOPICS Readers are introduced to commonly used system tools (libraries, debuggers, system calls, shells and scripting languages) and an explanation of how to utilize these tools to optimize program development. The text also examines lower level data types with an emphasis on memory and understanding how and why different data types are used. MARKET Ideal for introductory programmers.
Author(s): Adam Hoover
Publisher: Pearson
Year: 2009
Language: English
Pages: 379
Contents
Preface
1 Introduction
1.1 What is System Programming?
1.2 The Three Tools
1.3 How to Debug
1.4 Program Development
1.5 Review of C
Questions and Exercises
2 Bits, Bytes, and Data Types
2.1 Bit Models
2.2 Bitwise Operations
2.3 Memory Map
Questions and Exercises
3 Arrays and Strings
3.1 Arrays
3.2 Strings
3.3 String Library Functions
3.4 Command Line Arguments
Questions and Exercises
4 Pointers and Structures
4.1 Pointers
4.2 Using Pointers
4.3 Structures
4.4 Using Structures
Questions and Exercises
5 Input/Output
5.1 Streams
5.2 Buffers
5.3 Pipes
5.4 Files
5.5 Devices
Questions and Exercises
6 Program Management
6.1 Program Building
6.2 Code Organization
6.3 Program Distribution Methods
Questions and Exercises
7 System Calls
7.1 Families of Operations
7.2 Libraries and System Calls
7.3 Process System Calls
7.4 Signal System Calls
7.5 Socket System Calls
Questions and Exercises
8 Libraries
8.1 Using a Library
8.2 Purpose of Libraries
8.3 The C Standard Library
8.4 The Curses Library
8.5 The X Library
8.6 Making a Library
8.7 Library Pitfalls
Questions and Exercises
9 Scripting Languages
9.1 Using Scripting Languages
9.2 Shell Scripting
9.3 Perl
9.4 MATLAB
9.5 Discussion
Questions and Exercises
A: ASCII Table
B: Common Shell Commands
C: System Programs
Index
A
B
C
D
E
F
G
H
I
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z