Linux 系统编程入门:核心概念与关键要素
1. 系统编程概述
系统编程主要是指编写系统软件的艺术。系统软件处于底层,直接与内核和核心系统库进行交互。像 shell、文本编辑器、编译器、调试器、核心实用工具以及系统守护进程等都属于系统软件,它们基于内核和 C 库构建。与之相对的是高级 GUI 应用程序等,这类软件大多处于较高层次,只是偶尔才会深入到底层。
有些程序员整日都在编写系统软件,而有些则只是部分时间从事这项工作。但无论如何,了解系统编程对所有程序员都有益处,它或是程序员的核心工作,或是高级概念的基础,是所有软件编写的核心。
在 Linux 环境下,Linux 是一个现代类 Unix 系统,由 Linus Torvalds 和全球的黑客社区从头开始编写。尽管 Linux 与 Unix 有相同的目标和理念,但它并非 Unix,而是有自己的发展路径,在必要时会有所不同,仅在实用时才会趋同。通常,Linux 系统编程的核心与其他 Unix 系统相同,但在基础之上,Linux 有更多的系统调用、不同的行为和新特性。
传统上,所有 Unix 编程都属于系统级编程。历史上,Unix 系统没有太多高级抽象,即使在 X Window System 这样的开发环境中编程,也能完全看到核心 Unix 系统 API。不过这里不涉及 Linux 编程环境,如 make 工具的教程,主要关注现代 Linux 机器上暴露的系统编程 API。
系统编程常与应用程序编程相对比。二者在某些方面存在差异,但在其他方面则有相似之处。系统编程的独特之处在于,系统程序员必须对他们所工作的硬件和操作系统有深入了解。当然,所使用的库和调用的函数也有所不同。根据应用程序编写的“层
超级会员免费看
订阅专栏 解锁全文
1769

被折叠的 条评论
为什么被折叠?



