Get in Touch

Course Outline

Introduction

Foundations of Unix Systems Programming

Overview of the Go Language and Architecture

Setup and Configuration of the Go Development Environment

Core Go Syntax Concepts

Managing Go Packages

Algorithms and Data Structures

Garbage Collection Mechanisms in Go

Handling Files and Directories with Go

Implementing File I/O Operations in Go

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

Concepts and Application of Goroutines

  • Introduction to Goroutines
  • Utilizing Sync Packages in Go
  • Pipeline Management
  • The Go Scheduler
  • Using the 'select' Keyword
  • Signal Channels and Buffered Channels
  • Managing Timeouts
  • Channels of Channels
  • Handling Nil Channels
  • Shared Memory Management
  • Practical use of the dWC.go Utility

Network Programming with Go

  • Principles of Network Programming
  • The Net Standard Package in Go
  • Advanced Unix Socket Operations
  • Executing DNS Lookups
  • Building Basic TCP Servers and Clients
  • Creating Basic UDP Servers and Clients
  • Designing Concurrent TCP Servers

Troubleshooting Strategies

Wrap-up and Conclusion

Requirements

  • Foundational programming experience in any language
  • Basic familiarity with Linux and Unix operating systems
 35 Hours

Number of participants


Price per participant

Testimonials (5)

Upcoming Courses

Related Categories