Explore the fundamentals of systems programming starting from kernel API and filesystem to network programming and process communications Key Features Learn how to write Unix and Linux system code in Golang v1.12 Perform inter-process communication using pipes, message queues, shared memory, and semaphores Explore modern Go features such as goroutines and channels that facilitate systems programming Book Description System software and applications were largely created using low-level languages such as C or C++. Go is a modern language that combines simplicity, concurrency, and performance, making it a good alternative for building system applications for Linux and macOS. This Go book introduces Unix and systems programming to help you understand the components the OS has to offer, ranging from the kernel API to the filesystem, and familiarize yourself with Go and its specifications. You'll also learn how to optimize input and output operations with files and streams of data, which are useful tools in building pseudo terminal applications. You'll gain insights into how processes communicate with each other, and learn about processes and daemon control using signals, pipes, and exit codes. This book will also enable you to understand how to use network communication using various protocols, including TCP and HTTP. As you advance, you'll focus on Go's best feature-concurrency helping you handle communication with channels and goroutines, other concurrency tools to synchronize shared resources, and the context package to write elegant applications. By the end of this book, you will have learned how to build concurrent system applications using Go What you will learn Explore concepts of system programming using Go and concurrency Gain insights into Golang's internals, memory models and allocation Familiarize yourself with the filesystem and IO streams in general Handle and control processes and daemons' lifetime via signals and pipes Communicate with other applications effectively using a network Use various encoding formats to serialize complex data structures Become well-versed in concurrency with channels, goroutines, and sync Use concurrency patterns to build robust and performant system applications Who this book is for 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
探索系统编程的基本原理,从内核API和文件系统开始,到网络编程和进程通信 主要特点 学习如何在Golang v1.12中编写Unix和Linux系统代码 使用管道、消息队列、共享内存和semaphores进行进程间通信 探索现代Go的功能,如goroutines和channel,促进系统编程 书中描述 系统软件和应用程序大多是用C或C++等低级语言创建。Go是一种现代语言,结合了简单性、并发性和性能,使其成为为Linux和macOS构建系统应用程序的良好选择。这本Go书介绍了Unix和系统编程,帮助你了解操作系统所提供的组件,从内核API到文件系统,并熟悉Go及其规范。你还将学习如何用文件和数据流优化输入和输出操作,这些都是构建伪终端应用的有用工具。你将深入了解进程之间的通信方式,并学习使用信号、管道和退出代码的进程和守护程序控制。本书还将使你了解如何利用各种协议进行网络通信,包括TCP和HTTP。随着你的进步,你将专注于Go的最佳功能-并发性帮助你处理与通道和goroutines的通信,其他并发性工具来同步共享资源,以及上下文包来编写优雅的应用程序。在本书结束时,你将学会如何使用Go构建并发的系统应用 你将学习到的内容 使用Go和并发性探索系统编程的概念 深入了解Golang的内部结构。熟悉文件系统和一般的IO流 通过信号和管道处理和控制进程和守护进程的生命周期 使用网络与其他应用程序有效沟通 使用各种编码格式来序列化复杂的数据结构 熟练掌握通道、goroutines和同步的并发性 使用并发模式来构建健壮和高性能的系统应用程序 本书适用对象 如果你是一个想用Go学习系统编程的开发者,本书就是为你准备的。虽然不需要Unix和Linux系统编程的知识,但Go的中级知识会帮助你理解书中涉及的概念。
通过www.DeepL.com/Translator(免费版)翻译
相关文库
电子书-Linux是如何工作的How Linux Works(英)
1432
类型:电子书
上传时间:2022-04
标签:计算机、操作系统、内部结构)
语言:英文
金额:5积分
《面向初学者的机器学习》Machine Learning For Absolute Beginners
1070
类型:电子书
上传时间:2021-05
标签:机器学习、计算机、算法)
语言:英文
金额:5积分
计算机行业深度研究报告:ChatGPT,开启AI新纪元-20230201-31页
1009
类型:行研
上传时间:2023-02
标签:计算机、处理器)
语言:中文
金额:免费
电子书-DAMA数据管理知识体系指南(DAMA DMBOK)(英)
1004
类型:电子书
上传时间:2022-03
标签:计算机、数据库、数据管理)
语言:英文
金额:5积分
电子书-用FastAPI构建数据科学应用:用Python开发、管理和部署高效的机器学习应用程序(英)
1000
类型:电子书
上传时间:2022-03
标签:计算机、数据库、人脸检测系统)
语言:英文
金额:5积分
电子书-高维数据统计:方法、理论与应用(英)
913
类型:电子书
上传时间:2021-10
标签:计算机、统计学、数据统计)
语言:英文
金额:5积分
电子书-软件架构师手册:通过实施有效的架构概念成为成功的软件架构师(英)
895
类型:电子书
上传时间:2021-11
标签:计算机、软件架构 、软件)
语言:英文
金额:5积分
计算机行业:多模态大模型技术演进及研究框架-20230318-51页
885
类型:行研
上传时间:2023-03
标签:计算机、虚拟人、智能人)
语言:中文
金额:免费
计算机行业:GPT产业梳理,GPT_1到ChatGPT-20230214-17页
848
类型:行研
上传时间:2023-02
标签:计算机、GPT)
语言:中文
金额:免费
电子书-大数据MBA:用数据科学推动商业战略(英)
839
类型:电子书
上传时间:2021-11
标签:计算机、数据库、大数据)
语言:英文
金额:5积分
积分充值
30积分
6.00元
90积分
18.00元
150+8积分
30.00元
340+20积分
68.00元
640+50积分
128.00元
990+70积分
198.00元
1640+140积分
328.00元
微信支付
余额支付
积分充值
应付金额:
0 元
请登录,再发表你的看法
登录/注册