Linux系统编程入门与核心要点
1. 系统编程概述
系统编程是编写系统软件的艺术,系统软件处于底层,直接与内核和核心系统库交互。像shell、文本编辑器、编译器、调试器、核心实用程序和系统守护进程等都属于系统软件,它们基于内核和C库构建。而很多其他软件,如高级GUI应用程序,大多处于较高层次,只是偶尔才会深入底层。无论是专职编写系统软件的程序员,还是部分时间从事此工作的程序员,都能从系统编程的理解中受益。系统编程是所有软件编写的核心,无论是作为主要工作内容,还是作为高级概念的基础。
Linux是一个现代类Unix系统,由Linus Torvalds和全球的黑客社区从头开始编写。虽然Linux与Unix有相同的目标和理念,但它并非Unix,而是有自己的发展路径,在需要时会有所不同,仅在实用时才会趋同。通常,Linux系统编程的核心与其他Unix系统相同,但在基础之上,Linux有许多额外的系统调用、不同的行为和新特性。
2. 系统编程与应用编程的区别
传统上,所有Unix编程都是系统级编程,因为历史上Unix系统没有很多高级抽象,即使在X Window System这样的开发环境中编程,也能完全看到核心Unix系统API。系统编程与应用编程通常形成对比,它们在某些方面存在差异,但在其他方面则不然。系统编程的独特之处在于,系统程序员必须对他们所工作的硬件和操作系统有深入的了解。当然,使用的库和调用的函数也有所不同。根据应用程序编写的“层次”,两者可能并非完全可互换,但一般来说,从应用编程转向系统编程(反之亦然)并不困难。即使应用程序处于很高的层次,远离系统的最低层,了解系统编程仍然很重要,而且所有形式的编程都应采用相同的良好实践。
近年来
超级会员免费看
订阅专栏 解锁全文

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



