The Translator's Words
译者序
Linux操作系统是目前最为流行的一款开源操作系统,从服务器系统到嵌入式设备,Linux的身影无处不在。云计算、物联网、大数据、人工智能等一系列技术领域,其背后同样离不开Linux。现如今,越来越多的开发者以及爱好者投入了Linux系统维护和Linux系统编程等领域。然而,Linux因其复杂性,让无数新手望而却步。
技术的学习之路大多是艰难而枯燥的,Linux系统编程的学习之路更是困难重重。一方面,它需要我们了解基本的编程技术,特别是C语言编程技术;另一方面,它还需要我们了解Linux操作系统的底层技术知识。进程是如何创建的?进程间是如何进行通信的?文件系统是如何运行的?systemd是如何管理守护进程的?如何编写静态库与动态库?编译器是如何工作的?如何对程序进行调试?……一系列技术问题让人应接不暇。
如何了解Linux操作系统?如何在Linux系统下进行编程开发?从什么地方开始着手学习?这些问题困扰了很多人,让人踟蹰不前,不知如何下手,而本书会给予我们一些指引。
从Linux开发环境的安装与配置,到编写第一个Linux小程序,再到编译器工作原理、进程与线程、动态库、文件系统以及进程间通信等一系列与Linux系统编程密切相关的主题内容,本书由浅入深,层层递进,一步一步地引导着我们步入Linux系统编程的大门。
本书的内容非常丰富,但书中并没有晦涩难懂的纯理论堆砌,我们无须担心会迷失在技术的海洋中。我们只需要跟随作者的脚步,在一页页文字的指引下,去编码,去思考,去融会贯通。书中的每一小节都包含详细的准备工作和实践步骤,让我们可以快速地开始编码,上手操作,并且在实际编码中体会Linux系统编程的奥秘。同时,在实践操作基础之上,作者会对实践环节中的代码程序进行深入细致的理论知识介绍,包括每段代码所涉及的核心技术、其背后的工作原理以及其中所体现的Linux编程思想,让我们既能“知其然”,又能“知其所以然”。在理论与实践的密切结合中,我们都能有所收获。
虽然在本书的翻译过程中,每一位译者都曾多次核对校正译文,力求符合原著,但书中仍旧难免存在错漏,欢迎每一位热心的读者朋友提出建议并指正。
为了翻译本书,大家都在忙碌的工作之余分秒必争,是大家共同的努力,才让这本译著成功完成。感谢出版社的各位老师,本书的出版离不开他们的努力与支持。
范继云
2022年2月