Get in Touch

Course Outline

Introduction

Foundations of Unix Systems Programming

Overview of the Go Programming Language and Go Architecture

Installation and Configuration of the Go Development Environment

Essential Go Syntax

Managing Go Packages

Algorithms and Data Structures

Go's Approach to Garbage Collection

Handling Files and Directories in Go

Implementing File Input and Output Operations in Go

Implementing Robust Error Handling

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

Managing Unix Processes and Signals in Go

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

Comprehensive Guide to Goroutines

  • Introduction to Goroutines
  • Utilizing the Sync Package in Go
  • Implementing Pipelines
  • Leveraging the Go Scheduler
  • Using the 'select' Keyword
  • Managing Signal Channels and Buffered Channels
  • Handling Timeouts Effectively
  • Working with Channels of Channels
  • Handling Nil Channels
  • Managing Shared Memory
  • Practical Application: The dWC.go Utility

Network Programming with Go

  • Core Principles of Network Programming
  • Using the Net Standard Package in Go
  • Advanced Unix Sockets
  • Executing DNS Lookups
  • Creating Basic TCP Servers and Clients
  • Developing Simple UDP Servers and Clients
  • Building a Concurrent TCP Server

Troubleshooting Strategies

Wrap-Up and Conclusion

Requirements

  • Basic programming experience in any language
  • Working knowledge of Linux and Unix systems
 35 Hours

Number of participants


Price per participant

Testimonials (5)

Upcoming Courses

Related Categories