2、Linux系统编程入门指南

Linux系统编程入门全方位指南

Linux系统编程入门指南

1. 系统编程概述

系统编程主要是编写与内核和核心系统库直接交互的系统软件。像日常使用的shell、文本编辑器、编译器、调试器、核心实用程序和系统守护进程,以及网络服务器、Web服务器和数据库等,都属于系统软件。与之相对的是高级GUI应用程序等,这类软件处于较高层级,只是偶尔会深入底层。

系统编程与应用编程有所不同。系统编程要求程序员对所使用的硬件和操作系统有敏锐的认识,其程序主要与内核和系统库交互;而应用程序除了与系统库交互外,还会与高级库交互,这些高级库将硬件和操作系统的细节抽象化,以实现不同系统间的可移植性、不同版本系统的兼容性,以及构建更易用、更强大的高级工具包。不过,无论应用程序在系统层级中的位置如何,了解系统编程都对程序员有益。

2. 为何要学习系统编程

过去十年,应用编程呈现出从系统级编程向高级开发转变的趋势,比如通过Web软件(如JavaScript)或托管代码(如Java)进行开发。但这并不意味着系统编程会走向消亡,像JavaScript解释器和Java虚拟机的编写就属于系统编程的范畴。而且,即使是编写Python、Ruby或Scala等代码的开发者,了解系统编程也有助于编写出更优质的代码。

目前,大部分Unix和Linux代码仍在系统层级编写,很多是用C和C++语言,主要依赖C库和内核提供的接口。像Apache、bash、cp、Emacs、init、gcc、gdb、glibc、ls、mv、vim和X等应用程序,在短期内不会消失。

3. 系统编程的基石

系统编程有三个关键要素,分别是系统调用、C库和C编译器。
- 系统调

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值