Get in Touch
 Duration 35 hours

Course Outline

Introduction

Insights into Unix Systems Programming

Exploring the Go Programming Language and Its Architecture

Setup and Configuration of the Go Development Environment

Fundamentals of Go Syntax

Managing Go Packages

Algorithms and Data Structures

Mechanics of Garbage Collection in Go

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 via Go
  • Utilizing the 'kill' Command
  • Implementing Unix Pipes and Sockets in Go
  • Working with Remote Procedure Call (RPC) in Go
  • Building a Unix Shell using Go

Comprehension and Application of Goroutines

  • Introduction to Goroutines
  • Application of Sync Go Packages
  • Managing Pipelines
  • Optimizing with the Go Scheduler
  • Implementing the 'select' Keyword
  • Utilizing Signal Channels and Buffered Channels
  • Managing Timeouts Effectively
  • Handling Channels of Channels
  • Working with Nil Channels
  • Managing Shared Memory
  • Utilizing the dWC.go Utility

Network Programming with Go

  • Foundations of Network Programming
  • Usage of the Net Go Standard Package
  • Advanced Unix Socket Techniques
  • Executing DNS Lookups
  • Creating Basic TCP Servers and Clients
  • Developing Basic UDP Servers and Clients
  • Building a Concurrent TCP Server

Troubleshooting Strategies

Summary and Conclusion

Requirements

  • Foundational programming experience in any major language
  • Working familiarity with Linux and Unix operating systems

Number of participants


Price per participant

Testimonials (5)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories