|
|
 |
|
Viewing report
|
|
 |
 |
Beginning Programming for Dummies, 4th Edition
John Wiley and Sons Ltd, Nov 2007, Pages: 816
Acknowledgements Foreword Introduction
Chapter 1: Getting Started
An Introduction to UNIX, Linux, and GNU
What Is UNIX? What Is Linux? The GNU Project and the Free Software Foundation Linux Distributions
Programming Linux
Linux Programs Text Editors The C Compiler Development System Roadmap
Getting Help
Summary
Chapter 2: Shell Programming
Why Program with a Shell?
A Bit of Philosophy
What Is a Shell?
Pipes and Redirection
Redirecting Output Redirecting Input Pipes
The Shell as a Programming Language
Interactive Programs Creating a Script Making a Script Executable
Shell Syntax
Variables Conditions Control Structures Functions Commands Command Execution Here Documents Debugging Scripts
Going Graphical - The dialog Utility
Putting It All Together
Requirements Design
Summary
Chapter 3: Working with Files
Linux File Structure
Directories Files and Devices
System Calls and Device Drivers
Library Functions
Low-Level File Access
write read open Initial Permissions Other System Calls for Managing Files
The Standard I/O Library
fopen fread fwrite fclose fflush fseek fgetc, getc, and getchar fputc, putc, and putchar fgets and gets
Formatted Input and Output
printf, fprintf, and sprintf scanf, fscanf, and sscanf Other Stream Functions Stream Errors Streams and File Descriptors
File and Directory Maintenance
chmod chown unlink, link, and symlink mkdir and rmdir chdir and getcwd
Scanning Directories
opendir readdir telldir seekdir closedir Errors strerror perror
The /proc File System
Advanced Topics: fcntl and mmap
fcntl mmap
Summary
Chapter 4: The Linux Environment
Program Arguments
getopt getopt_long
Environment Variables
Use of Environment Variables The environ Variable
Time and Date
Temporary Files
User Information
Host Information
Logging
Resources and Limits
Summary
Chapter 5: Terminals
Reading from and Writing to the Terminal
Talking to the Terminal
The Terminal Driver and the General Terminal Interface
Overview Hardware Model
The termios Structure
Input Modes Output Modes Control Modes Local Modes Special Control Characters Terminal Speed Additional Functions Terminal Output Terminal Type Identify Your Terminal Type Using terminfo Capabilities
Detecting Keystrokes
Virtual Consoles Pseudo-Terminals
Summary
Chapter 6: Managing Text-Based Screens with curses
Compiling with curses
Curses Terminology and Concepts
The Screen
Output to the Screen Reading from the Screen 2 Clearing the Screen Moving the Cursor Character Attributes
The Keyboard
Keyboard Modes Keyboard Input
Windows
The WINDOW Structure
Generalized Functions Moving and Updating a Window Optimizing Screen Refreshes
Subwindows
The Keypad
Using Color
Redefining Colors
Pads
The CD Collection Application
Starting a New CD Collection Application Looking at main Building the Menu Database File Manipulation Querying the CD Database
Summary
Chapter 7: Data Management
Managing Memory
Simple Memory Allocation Allocating Lots of Memory Abusing Memory The Null Pointer Freeing Memory Other Memory Allocation Functions
File Locking
Creating Lock Files Locking Regions Use of read and write with Locking Competing Locks Other Lock Commands Deadlocks
Databases
The dbm Database The dbm Routines dbm Access Functions Additional dbm Functions
The CD Application
Updating the Design The CD Database Application Using dbm
Summary
Chapter 8: MySQ
Installation 31
MySQL Packages
Post-Install Configuration Post-Installation Troubleshooting
MySQL Administration
Commands Creating Users and Giving Them Permissions Passwords Creating a Database Data Types Creating a Table Graphical Tools
Accessing MySQL Data from C
Connection Routines Error Handling Executing SQL Statements Miscellaneous Functions
The CD Database Application
Creating the Tables Adding Some Data Accessing the Application Data from C
Summary
Chapter 9: Development Tools
Problems of Multiple Source Files
The make Command and Makefiles
The Syntax of Makefiles Options and Parameters to make Comments in a Makefile Macros in a Makefile Multiple Targets Built-in Rules Suffix and Pattern Rules Managing Libraries with make Advanced Topic: Makefiles and Subdirectories GNU make and gcc
Source Code Control
RCS
SCCS
Comparing RCS and SCCS CVS CVS Front Ends Subversion
Writing a Manual Page
Distributing Software
The patch Program Other Distribution Utilities
RPM Packages
Working with RPM Package Files Installing RPM Packages Building RPM Packages
Other Package Formats
Development Environments
KDevelop Other Environments
Summary
Chapter 10: Debugging
Types of Errors
General Debugging Techniques
A Program with Bugs Code Inspection Instrumentation Controlled Execution
Debugging with gdb
Starting gdb Running a Program Stack Trace Examining Variables Listing the Program Setting Breakpoints Patching with the Debugger Learning More about gdb
More Debugging Tools
Lint: Removing the Fluff from Your Programs Function Call Tools Execution Profiling with prof/gprof
Assertions
Memory Debugging
ElectricFence valgrind
Summary
Chapter 11: Processes and Signals
What Is a Process?
Process Structure
The Process Table Viewing Processes System Processes Process Scheduling
Starting New Processes
Waiting for a Process Zombie Processes Input and Output Redirection Threads
Signals
Sending Signals Signal Sets
Summary
Chapter 12: POSIX Threads
What Is a Thread?
Advantages and Drawbacks of Threads
A First Threads Program
Simultaneous Execution
Synchronization
Synchronization with Semaphores Synchronization with Mutexes
Thread Attributes
Canceling a Thread
Threads in Abundance
Summary
Chapter 13: Inter-Process Communication: Pipes
What Is a Pipe?
Process Pipes
Sending Output to popen
Passing More Data How popen Is Implemented
The Pipe Call
Parent and Child Processes
Reading Closed Pipes Pipes Used as Standard Input and Output
Named Pipes: FIFOs
Accessing a FIFO
Advanced Topic: Client/Server Using FIFOs
The CD Database Application
Aims Implementation Client Interface Functions The Server Interface, server.c The Pipe Application Summary
Summary
Chapter 14: Semaphores, Shared Memory, and Message Queues
Semaphores Semaphore Definition A Theoretical Example Linux Semaphore Facilities Using Semaphores
Shared Memory
shmget shmat shmdt shmctl
Message Queues
msgget msgsnd msgrcv msgctl
The CD Database Application
Revising the Server Functions Revising the Client Functions
IPC Status Commands
Displaying Semaphore Status Displaying Shared Memory Status Displaying Message Queue Status
Summary
Chapter 15: Sockets
What Is a Socket?
Socket Connections
Socket Attributes Creating a Socket Socket Addresses Naming a Socket Creating a Socket Queue Accepting Connections Requesting Connections Closing a Socket Socket Communications Host and Network Byte Ordering Network Information The Internet Daemon (xinetd/inetd) Socket Options
Multiple Clients
select Multiple Clients
Datagrams
Summary
Chapter 16: Programming GNOME Using GTK+
Introducing X
X Server X Client X Protocol Xlib Toolkits Window Managers Other Ways to Create a GUI — Platform-Independent Windowing APIs
Introducing GTK+
GLib Type System GTK+ Object System Introducing GNOME Installing the GNOME/GTK+ Development Libraries
Events, Signals, and Callbacks
Packing Box Widgets
GTK+ Widgets
GtkWindow GtkEntry GtkSpinButton GtkButton GtkTreeView
GNOME Widgets
GNOME Menus
Dialogs
GtkDialog Modal Dialog Box Nonmodal Dialogs GtkMessageDialog
CD Database Application
Summary
Chapter 17: Programming KDE Using Qt
Introducing KDE and Qt
Installing Qt
Signals and Slots
Qt Widgets
QLineEdit Qt Buttons QComboBox QListView Dialogs QDialog QMessageBox QInputDialog Using qmake to Simplify Writing Makefiles
Menus and Toolbars with KDE
CD Database Application Using KDE/Qt
MainWindow AddCdDialog LogonDialog main.cpp
Summary
Chapter 18: Standards for Linux
The C Programming Language
A Brief History Lesson The GNU Compiler Collection gcc Options
Interfaces and the Linux Standards Base
LSB Standard Libraries LSB Users and Groups LSB System Initialization
The Filesystem Hierarchy Standard
Further Reading about Standards
Summary
Index
Product samples
A sample for this product is available. Please Login/Register to download this sample.
Customers who bought this item also bought
Linux Bible, 2008 Edition
TCP/IP Architecture, Design and Implementation in Linux
Ubuntu Linux Secrets
Fedora 8 and Red Hat Enterprise Linux Bible
Linux Command Line and Shell Scripting Bible
Linux For Dummies, 8th Edition
Professional Multicore Programming: Design and Implementation for C++ Developers
SUSE Linux Toolbox: 1000+ Commands for openSUSE and SUSE Linux Enterprise
OSS/Linux Development Survey 2007, Volume 2
OSS/Linux Development Survey 2007, Volume 1
Open Source/Linux Development 2008, v2
Semantic Web Programming
|
 |
|
|