课程解决什么工作场景

这门课的核心目标是打通“底层原理”与“应用开发”之间的认知壁垒,特别适合两类人群:一是从事后端、移动端或系统级开发,希望深入理解程序运行机制、排查复杂性能瓶颈的工程师;二是准备转行鸿蒙应用或系统开发的求职者,需要补齐计算机组成与操作系统基础,以便快速上手 ArkTS 或 C/C++ 开发。它并非针对零基础小白科普“什么是代码”,而是聚焦于硬件如何执行指令、进程如何被调度、内存如何被管理,以及鸿蒙 OS 在此架构上的实现差异。学完后,你能独立分析 CPU 负载异常、理解线程池原理、优化内存占用,并清晰解释鸿蒙分布式软总线背后的 OS 支撑逻辑。

适合什么基础、建议先看哪几块

本课程要求具备基本的编程概念(如变量、函数、循环),了解至少一门语言(Java/Python/C++ 均可)的运行环境即可。若完全不懂命令行或 IDE 操作,建议先自学一小时环境配置。资料结构按“硬件—系统—语言”三层递进,建议学习顺序如下:首先精读 05 CPU基本组成、06 CPU乱序执行、07 NUMA 三节,建立对计算单元的真实认知,避免后续对“多核并行”“缓存一致性”等概念产生误解;其次集中攻克 13 进程、14 进程调度、16 内存管理、17 虚拟地址空间,这是操作系统的核心四大件,必须配合笔记反复消化;最后再看 09 系统启动 与 15 中断,理解操作系统如何从无到有接管硬件。量子计算机(03)与 Java 硬件知识(04)属拓展内容,可略读或跳过,不影响主线掌握。鸿蒙相关部分(如软总线、分布式调度)建议在完成前述基础后,结合鸿蒙官方文档对照理解,效果更佳。

学完能独立做什么、资料怎么配合练习

完成核心模块后,你能独立绘制进程状态迁移图、解释虚拟内存映射过程、定位常见的死锁与内存泄漏成因,并能从 OS 视角评估鸿蒙应用在多设备协同时的资源调度策略。建议的学习闭环是:看一节视频 → 在本地 Linux 环境(或 WSL)中用 strace/ps/top 观察对应现象 → 手写伪代码描述该机制。例如学完“进程调度”后,可用 ps 命令查看不同优先级进程的实际调度表现;学完“虚拟地址”后,用 malloc/free 配合 valgrind 验证内存分配行为。资料中无独立实验项目,因此需主动将理论知识与系统工具结合,形成“原理—现象—验证”的闭环,否则容易停留在“看懂了但不会用”的阶段。

课程目录

操作系统.png   2023-11-26 09:

13 上传 | ├──

01 操作系统_汇编语言 | ├──

02 操作系统_硬件基础知识 | ├──

03 操作系统_量子计算机 | ├──

04 操作系统_Java相关硬件知识 | ├──

05 操作系统_CPU基本组成 | ├──

06 操作系统_CPU的乱序执行 | ├──

07 操作系统_NUMA | ├──

08 操作系统_合并写技术 | ├──

09 操作系统_系统启动 | ├──

10 操作系统_OS基础 | ├──

11 操作系统_基础概念 | ├──

12 操作系统_进程_线程_纤程基础 | ├──

13 操作系统_进程 | ├──

14 操作系统_进程调度 | ├──

15 操作系统_中断 | ├──

16 操作系统_内存管理 | ├──

17 操作系统_虚拟地址空间 | ├──

18 操作系统_ZGC | ├──

19 操作系统_汇编 | └──20 操作系统_内核同步常用方法