Hands-On System Programming with Go
This is the code repository for Hands-On System Programming with Go , published by Packt.
Build modern and concurrent applications for Unix and Linux systems using Golang
What is this book about?
System software and applications are usually created using low level programming languages such as C/C++. Go is a modern language which combines simplicity, concurrency and performance which makes it a great candidate for building system applications. The book is a guide for building system applications for Linux and OS X using Golang.
This book covers the following exciting features:
- Gain knowledge of Unix system programming
- Understand and use Daemon Processes in dependency implementation
- Explore and use the Go standard library to encode complex data structures
- Gain insights into Golang internals
- Master the Go concurrency model and its patterns
- Become adept at implementing the Sync and Atomic Packages
- Understand Go allocation and Memory allocation
If you feel this book is for you, get your copy today!
Instructions and Navigations
All of the code is organized into folders. For example, Chapter02.
The code will look like the following:
<meta name="go-import" content="package-name vcs repository-url">
Following is what you need for this book:
If you are a developer who wants to learn system programming with Go, this book is for you. Although no knowledge of Unix and Linux system programming is necessary, intermediate knowledge of Go will help you understand the concepts covered in the book
With the following software and hardware list you can run all code files present in the book (Chapter 1-16).
Software and Hardware List
Sr.No |
Software required |
OS required |
1 |
Go v1.12, System with 4GB RAM |
Windows, Mac OS X, and Linux (Any) |
2 |
Visual Studio Code v1.35, System with 4GB RAM |
Windows, Mac OS X, and Linux (Any) |
3 |
OpenSSL v1.1.1b, System with 4GB RAM |
Windows, Mac OS X, and Linux (Any) |
4 |
Protobuf v3.8.0, System with 4GB RAM |
Windows, Mac OS X, and Linux (Any) |
5 |
Build Essentials (GCC v8.3.0), System with 4GB RAM |
Windows, Mac OS X, and Linux (Any) |
We also provide a PDF file that has color images of the screenshots/diagrams used in this book. Click here to download it.
Get to Know the Author
Alex Guerrieri
is a software developer who specializes in backend and distributed systems. Go has been his favorite tool for the job since first using it in 2013. He holds a degree in computer science engineering and has been working in the field for more than 6 years. Originally from Italy, where he completed his studies and started his career as a full-stack developer, he now lives in Spain, where he previously worked in two start-ups-source{d} and Cabify. He is now working for three companies-as a software crafter for BBVA, one of the biggest Spanish banks; as a software architect for Security First, London, a company focusing on digital and physical security; and as a cofounder of DauMau, the company behind Vidsey, software that generates videos in a procedural manner.
Suggestions and Feedback
Click here if you have any feedback or suggestions.
Download a free PDF
If you have already purchased a print or Kindle version of this book, you can get a DRM-free PDF version at no cost.
Simply click on the link to claim your free PDF.
https://packt.link/free-ebook/9781789804072