THE POSSIBILITIES ARE INFINITE

  1. Training > Course Details

Name: Advanced Unix C Programming
Course Code: GA200
Duration: 4

Scheduled Dates for GA200

This course covers system programming in C for a UNIX system which complies with POSIX. Topics covered include making system calls to perform input/output, control processes, perform interprocess communication, and program for networks. The student will learn to write Unix system calls and to use C library functions related to system features. The course includes hands-on exercises to reinforce concepts and build skills.

Target Audience
This course is intended for programmers who have experience with UNIX/Linux and C programming, and who need to know how to write code which manipulates the Unix operating system.

Key Topics

  • Basics
  • - C within Unix
  • - Headers
  • - Documentation
  • - Compiling
  • - Linking
  • - Debugging
  • - makefile
  • Manipulating the File System
  • - Access files
  • - /proc file system
  • - Devices
  • - System calls
  • - Device Drivers
  • - Library functions
  • - Low-level file access
  • - POSIX
  • - Manage files
  • - Standard I/O
  • - Format input and output
  • - Maintain files and directories
  • - Handle errors
  • - Changing Permissions
  • - Links
  • - Manipulating Directories
  • Date/Time
  • - Unix date representation
  • - Low-level time format
  • - The tm structure
  • - Conversion specifiers
  • - clock()
  • Memory Management
  • - Allocating Memory
  • - Freeing Memory
  • - Locking and unlocking files
  • - Mandatory/advisory locks
  • - Blocks/non blocking locks
  • - flock
  • Processes
  • - Defining a process
  • - Processes in memory
  • - Spawning processes
  • - system(), exec(), and fork()
  • - wait()
  • - Environmental variables
  • Signals
  • - Signal types
  • - Signal functions
  • - Sending signals
  • - Waiting for signals
  • - Interprocess communication
  • - SIGALRM
  • - sigaction()
  • - Blocking signals
  • - Signal sets
  • Pipes
  • - Pipes
  • - popen(), pclose()
  • - Modes
  • - Writing to / reading from a pipe
  • - Named pipes
  • - Reading/writing a FIFO
  • Sockets
  • - Socket connections
  • - Servers and Clients
  • - Socket attributes
  • - Internet addressing
  • - bind(), listen(), accept(), connect(), close()
  • - Network programming with sockets
  • - Loopbacks
  • Interprocess Communication
  • - Shared Memory
  • - Semaphores
  • - Message Queues

    Required Skills/Experience

    • Student must be proficient in C programming and must know the basics of the Unix operating system.

      Fee: $1,600.00


      Course Schedule:
      Back to Course Description

      Austin

      Charlotte

      Columbia

      Hunt Valley

      Lansing

      Madison

      Milwaukee

      Minneapolis

      Oak Brook

      Oklahoma City

      Phoenix

      Raleigh

      San Antonio

      Schaumburg

      Tulsa

      Washington DC