Get in Touch

Course Outline

Introduction

Insight into Unix Systems Programming

Overview of the Go Language and its Architecture

Installation and Setup of the Go Development Environment

Exploring Fundamental Go Syntax

Managing Go Packages

Algorithms and Data Structures

Mechanisms of Garbage Collection in Go

Handling Files and Directories in Go

Executing File Input and Output Operations in Go

Strategies for Error Handling

Managing System Files in Go: Logging, System Operations, and Passwords

Interaction with Unix Processes and Signals in Go

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

Exploring and Implementing Goroutines

  • Fundamentals of Goroutines
  • Application of Go Sync Packages
  • Pipeline Implementation
  • Usage of the Go Scheduler
  • Applying the 'select' Keyword
  • Management of Signal and Buffered Channels
  • Managing Timeouts
  • Operations with Channels of Channels
  • Handling Nil Channels
  • Shared Memory Management
  • Utilization of the dWC.go Utility

Network Programming with Go

  • Core Concepts of Network Programming
  • Integration of the Go Net Standard Package
  • Advanced Unix Socket Implementation
  • Execution of DNS Lookups
  • Construction of Basic TCP Server and Client Applications
  • Development of Simple UDP Server and Client Applications
  • Building a Concurrent TCP Server

Debugging and Troubleshooting

Wrap-up and Final Remarks

Requirements

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

Number of participants


Price per participant

Testimonials (5)

Upcoming Courses

Related Categories