System Programming with C and Unix, 1st edition

Published by Pearson (November 21, 2011) © 2010

  • Adam Hoover
Products list

Access details

  • Instant access once purchased
  • Fulfilled by VitalSource
  • 180-day rental

Features

  • Add notes and highlights
  • Search by keyword or page
Products list

Details

  • A print text

This product is expected to ship within 3-6 business days for US and 5-10 business days for Canadian customers.

Beginning computing students often finish the introduction to programming course without having had exposure to various system tools, without knowing how to optimize program performance and without understanding how programs interact with the larger computer system. 

Adam Hoover's System Programming with C and Unix introduces students to commonly used system tools (libraries, debuggers, system calls, shells and scripting languages) and then explains 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.   

Contents
Preface ix

1 Introduction 1
1.1 What is System Programming? 1
1.2 The Three Tools 5
1.3 How to Debug 20
1.4 Program Development 31
1.5 Review of C 35
Questions and Exercises 41

2 Bits, Bytes, and Data Types 45
2.1 Bit Models 45
2.2 Bitwise Operations 57
2.3 Memory Map 65
Questions and Exercises 68

3 Arrays and Strings 73
3.1 Arrays 74
3.2 Strings 79
3.3 String Library Functions 83
3.4 Command Line Arguments 92
Questions and Exercises 94

4 Pointers and Structures 103
4.1 Pointers 103
4.2 Using Pointers 108
4.3 Structures 118
4.4 Using Structures 121
Questions and Exercises 127

5 Input/Output 135
5.1 Streams 136
5.2 Buffers 143
5.3 Pipes 145
5.4 Files 153
5.5 Devices 161
Questions and Exercises 164

6 ProgramManagement 171
6.1 Program Building 172
6.2 Code Organization 185
6.3 Program Distribution Methods 201
Questions and Exercises 204

7 System Calls 213
7.1 Families of Operations 214
7.2 Libraries and System Calls 215
7.3 Process System Calls 217
7.4 Signal System Calls 229
7.5 Socket System Calls 236
Questions and Exercises 251

8 Libraries 255
8.1 Using a Library 256
8.2 Purpose of Libraries 261
8.3 The C Standard Library 263
8.4 The Curses Library 265
8.5 The X Library 275
8.6 Making a Library 288
8.7 Library Pitfalls 291
Questions and Exercises 292

9 Scripting Languages 299
9.1 Using Scripting Languages 301
9.2 Shell Scripting 305
9.3 Perl 320
9.4 MATLAB 333
9.5 Discussion 347
Questions and Exercises 348

A ASCII Table 351
B Common Shell Commands 355
C System Programs 357
Index 361

Need help? Get in touch