第 1 章 操作系统概述
1.1 认识操作系统
核心结论:
操作系统是计算机系统中最基础的软件,位于硬件之上,承担着资源管理与控制、为用户构建操作接口和运行环境的核心职责。
关键知识点:
计算机系统的资源可分为两大类:硬件资源(如 CPU、内存、外部设备)和信息资源(主要指文件数据)。
从不同角度理解操作系统:
- 作为资源管理者,负责协调和分配系统资源;
- 作为用户接口,隐藏底层硬件复杂性,提供易于使用的抽象计算平台;
- 作为系统基石,支撑上层各类软件的正常运行。
操作系统具备五大基本功能:
- 处理器管理:对 CPU 进行任务调度与分配;
- 存储器管理:合理分配内存空间,提供保护机制,并支持虚拟内存等扩展技术;
- 设备管理:统一控制输入输出设备,屏蔽具体操作细节;
- 文件管理:组织和管理存储在磁盘上的文件,实现共享与安全访问;
- 用户接口:提供命令行、图形界面以及程序调用接口供用户交互。
1.2 操作系统的发展与现状
核心结论:
操作系统的发展历程与硬件技术进步密切相关,经历了多个阶段的演进,逐步形成多样化的分类体系,以满足不同应用场景的需求。
关键知识点:
发展阶段划分如下:
- 第一代(电子管时代):尚无操作系统概念,采用手工操作或简单批处理方式,效率非常低下;
- 第二代(晶体管时代):出现批处理系统(监督程序雏形),以及执行程序系统,利用中断和通道技术实现 CPU 与外设并行工作;
- 第三代(集成电路时代):引入多道批处理提升资源利用率,分时系统支持多用户交互使用,实时系统则用于需要快速响应的工业控制场景;
- 第四代(大规模集成电路时代):个人计算机兴起,诞生了 PC 操作系统(单用户多任务、图形化界面),同时网络操作系统支持资源共享,嵌入式操作系统广泛应用于移动设备和智能控制系统。
常见的分类方式包括:
- 按处理模式划分:多道批处理系统(注重吞吐量,常见于大型主机)、分时系统(强调交互性,如 UNIX)、实时系统(要求限时响应,适用于航空航天等领域);
- 按规模与用途划分:主机操作系统(高可靠性、高性能)、通用操作系统(结合分时与批处理特性,适合服务器环境)、个人操作系统(强调易用性,代表有 Windows、Mac OS、Android);
- 按体系结构划分:网络操作系统(具备网络通信能力)、分布式操作系统(多个节点协同完成任务)、嵌入式操作系统(体积小、高效可靠,如 iOS、嵌入式 Linux)。
1.3 Linux 操作系统概述
核心结论:
Linux 是一种基于 UNIX 架构设计的开源自由操作系统,继承了 UNIX 的稳定性与高效性,已在服务器、桌面、嵌入式等多个领域广泛应用。
关键知识点:

Linux 的发展背景涉及多个重要因素:
- UNIX 系统采用 C 语言编写,源码公开,奠定了可移植性的基础;
- Minix 是一个教学用微型 UNIX 系统,启发了 Linux 的设计理念;
- Internet 的普及促进了全球开发者的协作;
- GNU 计划致力于推动自由软件运动,提供了大量核心工具(如 gcc、gdb),为 Linux 成熟奠定基础。
发展历程简述:
1991 年,Linus Torvalds 发布 Linux 内核 0.01 版;
1994 年发布 1.0 版本,正式遵循 GPL 开源协议;
1996 年 2.0 版推出后进入实用阶段,随后获得企业界广泛支持并迅速推广。
核心特点包括:
- 继承 UNIX 设计理念,系统稳定可靠;
- 遵循 GPL 协议,代码完全开放,允许自由修改与分发;
- 符合 POSIX 标准,具有良好兼容性;
- 可移植性强,大部分内核代码由 C 语言实现,便于跨平台移植;
- 内建强大的网络功能,性能优越;
- 安全机制完善,权限控制严格,漏洞修复响应迅速。
Linux 系统主要由三部分组成:
- 内核(Kernel):最核心的部分,直接管理硬件资源并调度程序运行;
- Shell:命令解释器,作为用户与系统之间的交互界面;
- 文件系统:组织和存储文件的层次结构集合。
版本类型说明:
- 内核版本格式为“主版本号.次版本号.修订号”,其中主版本和次版本标识核心系列,修订号表示补丁更新或驱动增强;
- 发行版本是在内核基础上集成图形界面、工具链及应用软件的完整操作系统发行包。主流发行版包括:
Red Hat 系列:RHEL、CentOS、Fedora(企业级推荐 RHEL/CentOS);
Debian 系列:Debian、Ubuntu、Linux Mint(初学者推荐 Ubuntu 或 Mint);
SUSE 系列:SUSE Linux Enterprise、openSUSE。
不同发行版针对不同用户群体进行优化配置。
第 2 章 Linux 操作基础
2.1 Linux 基本操作
核心结论:
Linux 是一个多用户多任务系统,必须通过身份认证登录才能使用,基本操作涵盖登录、密码修改、退出、关机与重启等日常维护动作。
关键知识点:
终端的类型可以从多个维度区分:
- 显示模式:字符终端(仅显示文本)与图形终端(支持窗口与鼠标操作);
- 连接方式:本地终端(物理连接的控制台)与远程终端(通过网络接入);
- 实现形式:物理终端、虚拟终端(通过 Ctrl+Alt+F1~F12 切换,最多可达 12 个)以及伪终端(图形环境中模拟的命令行终端,如 GNOME Terminal)。
登录方式主要包括:
- 本地登录:可通过虚拟终端进入字符或图形界面,支持同一用户在多个终端同时登录;
- 远程登录:使用 ssh 协议连接远程主机,借助仿真终端工具(例如 PuTTY)实现访问。
登录流程通常为:
login: 输入用户名
password: 输入对应口令(输入过程不显示字符)
常用核心操作命令:
- 修改密码:使用 passwd 命令,系统提示输入新密码并确认;
- 退出当前会话:执行 logout 命令或按下 Ctrl + D 快捷键;
- 关闭系统:运行 shutdown now 命令(需 root 权限,但桌面版通常允许普通用户执行);
- 重启系统:输入 reboot 命令即可。
2.2 Linux 命令
核心结论:
所有 Linux 命令均由 Shell 解释执行,掌握命令的基本语法结构、输入方法以及获取帮助的方式,是熟练使用 Linux 系统的前提。
关键知识点:
命令的标准格式为:
命令名 [选项] [参数]
其中,选项用于调整命令行为:
- 单字符选项以前缀 “-” 表示(如 -l);
- 多字符选项使用 “--” 开头(如 --help);
- 多个单字符选项可以合并书写(如 ls -la 等价于 ls -l -a)。
参数则是命令作用的对象(如文件名、目录路径等)。
命令的输入与执行过程:
用户在 Shell 提示符后输入完整命令,按回车键提交,Shell 将解析命令并调用相应程序执行。若命令不存在或语法错误,将返回错误信息。可通过 history 查看历史命令记录,使用上下箭头快速调用。

编辑快捷键说明:
运行控制相关按键:
基础常用命令一览:
获取帮助的方式:
总体结论:Linux 的文件体系基于树状层级结构,掌握文件与目录的基本操作是使用系统的基础,重点包括命名规范、权限机制及关键命令的熟练运用。
每个文件都具有两种归属属性:
三种基本权限:
权限适用对象分为四类:
权限表示方式有两种:
核心结论:通过输入输出重定向,可以灵活地改变命令的数据来源和输出目标;结合管道技术,能够将多个命令串联起来,显著提升命令行操作效率。
核心结论:vi 是 Linux 系统中默认的全屏文本编辑工具,具备多种工作模式,功能强大且兼容各种终端环境,广泛应用于程序编写与系统维护场景。
关键知识点:
核心结论:vi 提供了一套完整的基础编辑命令,涵盖光标控制、文本增删改查、复制粘贴及撤销重做等功能,命令设计精简高效,需熟练掌握以提升操作效率。
关键知识点:
核心结论:末行命令主要用于实现全局性任务,如搜索替换、文件管理、多行编辑等,是发挥 vi 高级功能的关键所在。
关键知识点:
输入重定向:使用符号 < 将命令的输入源设置为文件,例如 cat < afile 表示从文件 afile 中读取内容作为输入。
输出重定向:
典型应用场景:合并多个文件内容、快速创建空白文件、向文件追加数据、屏蔽不需要的输出信息等。
管道操作:利用 | 符号连接两个命令,形式为 命令1 | 命令2,表示将前一个命令的标准输出作为后一个命令的标准输入。
T形管道:使用 tee 命令实现分流,格式为 命令1 | tee file | 命令2,既能将中间结果保存到文件,又能继续传递给后续命令处理。
常见应用实例:
核心结论:
在 Linux 环境下进行 C 语言编程,通常需要结合文本编辑器、编译器和调试工具,按照“编写代码 → 编译 → 调试 → 执行”的基本流程操作。整个过程并不强制要求预先学习操作系统原理课程即可上手。
关键知识点:
核心结论:
gcc 的编译过程分为四个阶段:预处理、编译、汇编和链接。通过不同的选项可以控制每个阶段的行为,最终生成可执行程序。
关键知识点:
应用实例:
gcc -o hello hello.c —— 直接生成名为 hello 的可执行程序。gcc -c hello.c 和 gcc -c print.c 分别生成目标文件,然后执行 gcc -o hello hello.o print.o 完成链接。gcc -o hello -Iinclude hello.c print.c —— 使用 -I 指定 include 为头文件查找路径。gcc -o hello hello.c -lcurses —— 连接 curses 库以支持终端界面操作。核心结论:
man 手册是 Linux 下不可或缺的技术参考资源,内容按章节分类,便于开发者快速查找命令用法、系统调用及 C 标准库函数的详细说明。
关键知识点:
man ls)。man 2 exit)。man 3 printf)。-k 关键字:模糊搜索含有该关键字的所有手册条目,例如 man -k exit。-f 名称:列出指定名称在各节中的手册信息,如 man -f printf 显示所有与 printf 相关的手册页。
此外,在 vi 编辑器中也可执行外部 Shell 命令,语法为::!命令,例如 :!ls 可列出当前目录下的文件内容。
关于编辑器设置的一些常用指令:
:set nu —— 开启行号显示;:set nonu —— 关闭行号显示;:set ai —— 启用自动缩进;:set noai —— 禁用自动缩进;:help —— 查看 vi 内置帮助文档。
扫码加好友,拉您进群



收藏
