Get in Touch
 Duration 35 hours (5 days)

Course Outline

Introduction

Insights into Unix Systems Programming

Overview of the Go Programming Language and Go Architecture

Setup and Configuration of the Go Development Environment

Mastering Go Syntax Basics

Managing Go Packages

Algorithms and Data Structures

Mechanisms of Garbage Collection in Go

Managing Files and Directories in Go

Executing File Input and Output Operations in Go

Implementing Robust Error Handling

Handling System Files in Go: Log Files, System File Operations, and Password Management

Managing Unix Processes and Signals in Go

  • Concepts of Unix Processes and Signals
  • Process Control and Management
  • Handling Unix Signals via Go
  • Utilizing the 'kill' Command
  • Implementing Unix Pipes and Sockets in Go
  • Integrating Remote Procedure Call (RPC) in Go
  • Building a Unix Shell Interface in Go

Mastery of Goroutines

  • Fundamentals of Goroutines
  • Utilizing Go Sync Packages
  • Designing Pipelines
  • Understanding the Go Scheduler
  • Application of the 'select' Keyword
  • Managing Signal and Buffered Channels
  • Implementing Timeout Mechanisms
  • Working with Channels of Channels
  • Handling Nil Channels
  • Managing Shared Memory
  • Utilizing the dWC.go Utility

Network Programming in Go

  • Principles of Network Programming
  • Working with the Net Standard Package in Go
  • Advanced Unix Socket Implementation
  • Executing DNS Lookups
  • Building Basic TCP Servers and Clients
  • Creating Simple UDP Servers and Clients
  • Developing Concurrent TCP Servers

Troubleshooting Strategies

Summary and Final Remarks

Requirements

  • Foundational programming proficiency in any language
  • Working knowledge of Linux and Unix operating systems

Testimonials (5)

Related Categories