Author: | Agus Kurniawan | ISBN: | 1230000235606 |
Publisher: | PE Press | Publication: | April 26, 2014 |
Imprint: | Language: | English |
Author: | Agus Kurniawan |
ISBN: | 1230000235606 |
Publisher: | PE Press |
Publication: | April 26, 2014 |
Imprint: | |
Language: | English |
This book helps how to learn system programming on Raspberry Pi using C language and core system libraries. Several code samples are provided for ease of understanding about system programming.
**TOC**
1. Preparing Development Environment
1.1 Raspberry Pi
1.2 Compiler and Development Tools
1.3 Hello World
2. File I/O
2.1 Opening and Closing File
2.1.1 open() and close()
2.1.2 creat()
2.1.3 Creating a New File
2.2 Reading Data from File
2.3 Writing Data into File
2.4 Appending Data Into File
2.5 Truncating Files
2.6 Copying File
2.7 Seeking
3. Buffered I/O
3.1 Opening and Closing File
3.2 Reading Data File
3.2.1 fgetc()
3.2.2 fgets()
3.3 Writing Data File
3.3.1 fputc()
3.3.2 fputs()
3.4 Binary File
3.4.1 Writing Binary Data
3.4.2 Reading Binary Data
3.5 Seeking
4. Process
4.1 Process ID
4.2 Running Process
4.3 Terminating Process
4.4 Creating Child Process
5. Threading
5.1 Creating Thread
5.2 Thread ID
5.3 Terminating Thread
5.3.1 Terminating Itself
5.3.2 Terminating Others
5.4 Joining Thread
5.5 Thread Mutex
5.6 Condition Variables
5.6.1 Signaling
5.6.2 Broadcasting
6. Interprocess Communication
6.1 Pipe
6.1.1 popen()
6.1.2 pipe()
6.2 FIFOs
6.2.1 FIFO Server
6.2.2 FIFO Client
6.2.3 Running
6.3 Message Queues
6.3.1 Message Queue Sender
6.3.2 Message Queue Receiver
6.3.3 Executing
6.3.4 Removing Message Queue
6.4 Shared Memory
6.4.1 Server
6.4.2 Client
6.4.3 Running
6.4.3 Removing Shared Memory
7. Socket Programming
7.1 Getting Local Hostname
7.2 Creating and Connecting
7.2.1 Server
7.2.2 Client
7.2.3 Testing
7.3 Data Transfer
7.3.1 Server
7.3.2 Client
7.3.3 Testing
7.4 Datagram Socket
7.4.1 Server
7.4.2 Client
7.4.3 Testing
7.5 Case Study: Building Client-Server with Multi Clients
7.5.1 Server
7.5.2 Client
7.5.3 Testing
7.6 Case Study: Socket with HTTP Protocol
7.6.1 HTTP Get
7.6.2 HTTP Post
8. Serial Communication
8.1 Working with Serial Port
8.2 Arduino for Target Serial Port
8.3 Attaching Arduino to Raspberry Pi
8.4 Reading Serial Communication
8.4.1 Arduino Program
8.4.2 Reading Application
8.4.3 Testing
8.5 Writing Data to Serial Port
8.5.1 Arduino Program
8.5.2 Writing Application
8.5.3 Testing
9. GPIO
9.1 Review GPIO
9.2 GPIO Libraries
9.2.1 BCM2835 C library
9.2.2 WiringPi
9.3 Reading Data from GPIO
9.3.1 Arduino as Digital Source
9.3.2 Implementing with BCM2835 C library
9.3.3 Implementing with WiringPi
This book helps how to learn system programming on Raspberry Pi using C language and core system libraries. Several code samples are provided for ease of understanding about system programming.
**TOC**
1. Preparing Development Environment
1.1 Raspberry Pi
1.2 Compiler and Development Tools
1.3 Hello World
2. File I/O
2.1 Opening and Closing File
2.1.1 open() and close()
2.1.2 creat()
2.1.3 Creating a New File
2.2 Reading Data from File
2.3 Writing Data into File
2.4 Appending Data Into File
2.5 Truncating Files
2.6 Copying File
2.7 Seeking
3. Buffered I/O
3.1 Opening and Closing File
3.2 Reading Data File
3.2.1 fgetc()
3.2.2 fgets()
3.3 Writing Data File
3.3.1 fputc()
3.3.2 fputs()
3.4 Binary File
3.4.1 Writing Binary Data
3.4.2 Reading Binary Data
3.5 Seeking
4. Process
4.1 Process ID
4.2 Running Process
4.3 Terminating Process
4.4 Creating Child Process
5. Threading
5.1 Creating Thread
5.2 Thread ID
5.3 Terminating Thread
5.3.1 Terminating Itself
5.3.2 Terminating Others
5.4 Joining Thread
5.5 Thread Mutex
5.6 Condition Variables
5.6.1 Signaling
5.6.2 Broadcasting
6. Interprocess Communication
6.1 Pipe
6.1.1 popen()
6.1.2 pipe()
6.2 FIFOs
6.2.1 FIFO Server
6.2.2 FIFO Client
6.2.3 Running
6.3 Message Queues
6.3.1 Message Queue Sender
6.3.2 Message Queue Receiver
6.3.3 Executing
6.3.4 Removing Message Queue
6.4 Shared Memory
6.4.1 Server
6.4.2 Client
6.4.3 Running
6.4.3 Removing Shared Memory
7. Socket Programming
7.1 Getting Local Hostname
7.2 Creating and Connecting
7.2.1 Server
7.2.2 Client
7.2.3 Testing
7.3 Data Transfer
7.3.1 Server
7.3.2 Client
7.3.3 Testing
7.4 Datagram Socket
7.4.1 Server
7.4.2 Client
7.4.3 Testing
7.5 Case Study: Building Client-Server with Multi Clients
7.5.1 Server
7.5.2 Client
7.5.3 Testing
7.6 Case Study: Socket with HTTP Protocol
7.6.1 HTTP Get
7.6.2 HTTP Post
8. Serial Communication
8.1 Working with Serial Port
8.2 Arduino for Target Serial Port
8.3 Attaching Arduino to Raspberry Pi
8.4 Reading Serial Communication
8.4.1 Arduino Program
8.4.2 Reading Application
8.4.3 Testing
8.5 Writing Data to Serial Port
8.5.1 Arduino Program
8.5.2 Writing Application
8.5.3 Testing
9. GPIO
9.1 Review GPIO
9.2 GPIO Libraries
9.2.1 BCM2835 C library
9.2.2 WiringPi
9.3 Reading Data from GPIO
9.3.1 Arduino as Digital Source
9.3.2 Implementing with BCM2835 C library
9.3.3 Implementing with WiringPi