Get in Touch

Course Outline

Introduction

Grasping Unix Systems Programming

Understanding the Go Programming Language and its Architecture

Installing and Configuring the Go Development Environment

Mastering the Basics of Go Syntax

Utilizing Go Packages

Algorithms and Data Structures

How Go Manages Garbage Collection

Managing Files and Directories in Go

Implementing File Input and Output Operations in Go

Implementing Error Handling

Identifying and Interacting with System Files in Go: Log Files, System File Operations, and Passwords

Handling Unix Processes and Signals in Go

  • Understanding Unix Processes and Signals
  • Process Management
  • 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 in Go

Understanding and Working with Goroutines

  • Exploring Goroutines
  • Using the Sync Go Packages
  • Managing Pipelines
  • Utilizing the Go Scheduler
  • Using the 'select' Keyword
  • Working with Signal Channels and Buffered Channels
  • Managing Timeouts
  • Handling Channels of Channels
  • Working with Nil Channels
  • Managing Shared Memory
  • Utilizing the dWC.go Utility

Network Programming in Go

  • Understanding Network Programming
  • Working with the Net Go Standard Package
  • Revisiting Unix Sockets
  • Performing DNS Lookups
  • Developing a Simple TCP Server and a Simple TCP Client
  • Developing a Simple UDP Server and a Simple UDP Client
  • Working with a Concurrent TCP Server

Troubleshooting

Summary and Conclusion

Requirements

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

Number of participants


Price per participant

Testimonials (5)

Upcoming Courses

Related Categories