Get in Touch

Course Outline

Introduction

Foundations of Unix Systems Programming

Overview of the Go Language and Architecture

Setting Up and Configuring the Go Development Environment

Core Go Syntax

Managing Go Packages

Algorithms and Data Structures

Go's Garbage Collection Mechanisms

File and Directory Management in Go

Implementing Input and Output Operations

Error Handling Strategies

System File Interactions: Logs, Operations, and Passwords

Unix Processes and Signals in Go

  • Concepts of Unix Processes and Signals
  • Process Management
  • Handling Unix Signals
  • Utilizing the 'kill' Command
  • Unix Pipes and Sockets
  • Remote Procedure Call (RPC) Implementation
  • Building a Unix Shell

Goroutines: Theory and Application

  • Introduction to Goroutines
  • Sync Packages in Go
  • Pipeline Management
  • The Go Scheduler
  • The 'select' Keyword
  • Signal and Buffered Channels
  • Timeout Management
  • Channels of Channels
  • Nil Channels
  • Shared Memory Considerations
  • The dWC.go Utility

Networking with Go

  • Networking Fundamentals
  • The Net Standard Package
  • Advanced Unix Sockets
  • DNS Resolution
  • Basic TCP Server and Client Development
  • Basic UDP Server and Client Development
  • Concurrent TCP Servers

Troubleshooting

Summary and Wrap-Up

Requirements

  • Foundational programming proficiency in any language
  • Knowledge of Linux and Unix operating systems
 35 Hours

Number of participants


Price per participant

Testimonials (5)

Upcoming Courses

Related Categories