Get in Touch
 Duration 35 hours (5 days)

Course Outline

Introduction

Insights into Unix Systems Programming

Examining the Go Language and its Architecture

Installation and Setup of the Go Development Environment

Foundations of Go Syntax

Managing Go Packages

Algorithms and Data Structures

Go’s Approach to Garbage Collection

Handling Files and Directories in Go

Executing File Input and Output Operations in Go

Implementing Robust Error Handling

Managing System Files in Go: Log Files, System Operations, and Passwords

Interaction with Unix Processes and Signals in Go

  • Concepts of Unix Processes and Signals
  • Process Management Strategies
  • Handling Unix Signals within Go
  • Application of the 'kill' Command
  • Utilizing Unix Pipes and Sockets in Go
  • Implementing Remote Procedure Call (RPC) with Go
  • Building a Unix Shell using Go

Concepts and Application of Goroutines

  • Introduction to Goroutines
  • Utilizing the Sync Go Packages
  • Pipeline Management
  • Leveraging the Go Scheduler
  • Application of the 'select' Keyword
  • Management of Signal Channels and Buffered Channels
  • Timeout Handling Mechanisms
  • Channels of Channels Implementation
  • Handling Nil Channels
  • Shared Memory Strategies
  • Utilizing the dWC.go Utility

Network Programming via Go

  • Foundations of Network Programming
  • Application of the Net Go Standard Package
  • In-Depth Look at Unix Sockets
  • Executing DNS Lookups
  • Creating Simple TCP Server and Client Applications
  • Creating Simple UDP Server and Client Applications
  • Implementing a Concurrent TCP Server

Troubleshooting Strategies

Conclusion and Summary

Requirements

  • Fundamental programming experience in any language
  • Working knowledge of Linux and Unix operating systems

Number of participants


Price per participant

Testimonials (5)

Upcoming Courses

Related Categories