Go Systems Programming
460 页
Chinese
PDF
4.5

Go Systems Programming

Go Systems Programming

作者:

年份:

简介:

引言

《Go Systems Programming》一书(作者:米哈利斯·楚卡洛斯,2017年出版,460页)并非又一本普通的Go语言指南。它深入探讨了系统编程世界,面向那些希望为类UNIX操作系统编写高效、可靠且底层工具的开发者。作者以其技术书籍和文章而闻名,提供了理论与实践相结合的方法,并附有大量代码示例。

本书内容

本书涵盖了Go程序与操作系统交互的广泛主题。主要关注Linux和macOS,但大多数示例可移植到其他UNIX系统。您将学习如何处理文件系统、进程、信号、网络套接字,以及如何创建自己的系统工具(例如,类似ps、ls或netstat的工具)。

适合读者

本书面向已熟悉Go基础知识的程序员(语法、goroutine、通道)。它将有助于:

  • 从C/C++转向Go并希望保持对系统资源控制的开发者;
  • 编写监控和自动化工具的DevOps工程师和管理员;
  • 所有希望了解Go如何在底层与操作系统内核交互的人。

读者将学到什么

阅读后,您将能够:

  • 通过os和syscall包处理文件描述符和系统调用;
  • 管理进程(创建、终止、等待、信号);
  • 使用TCP/UDP套接字创建多线程服务器和客户端;
  • 编写带有参数和标志处理的自定义命令行工具;
  • 在操作系统层面处理时间、定时器和同步;
  • 使用os/exec包运行外部程序;
  • 理解文件系统结构,并处理inode、权限和链接。

优势

本书的主要优点是注重实践。每一章都包含大量可直接运行和修改的代码清单。作者不避讳展示“棘手”的细节:错误处理、二进制数据处理、不同操作系统的特性。本书语言生动,包含来自实际经验的示例。特别值得一提的是关于网络套接字和创建自定义服务器的章节——它们为编写高负载系统奠定了坚实基础。

推荐人群

我向所有希望超越Go Web开发、学习编写快速且可靠的系统工具的人推荐本书。无论对于经验丰富的开发者,还是刚开始学习Go但已具备基础知识的读者,本书都很有价值。如果您想了解Go如何与Linux内核“交流”——这本书就是为您准备的。

推荐