培训对象: 面向系统架构师、后端开发工程师、运维工程师及对底层技术感兴趣的技术人员。也适合需要深入理解系统运行机制、优化应用性能的研发人员。
培训目标: 深入理解操作系统的核心原理与实现机制,掌握进程管理、内存管理、文件系统、设备管理等关键模块的工作方式。能够运用操作系统知识进行性能优化和故障排查。
培训内容介绍:
操作系统概述与系统调用:学习操作系统的发展历程与基本概念,理解内核态与用户态的切换机制,掌握系统调用的完整流程。
进程与线程管理:深入讲解进程控制块(PCB)的结构、进程状态转换、上下文切换机制,学习线程的实现模型与轻量级进程的设计。
CPU调度算法:掌握FCFS、SJF、优先级调度、时间片轮转、多级反馈队列等调度算法的原理与适用场景,理解调度算法对系统响应时间的影响。
进程同步与互斥:学习临界区问题、信号量机制、管程模型,通过生产者-消费者、读者-写者等经典问题掌握同步原语的使用。
死锁的预防与处理:深入讲解死锁产生的四个必要条件,掌握死锁预防、避免(银行家算法)、检测与恢复的策略。
内存管理基础:学习连续内存分配、分页、分段、段页式管理的原理,理解逻辑地址到物理地址的转换过程。
虚拟内存技术:掌握虚拟内存的概念、请求调页、页面置换算法(FIFO、LRU、LFU、Clock),理解工作集模型与抖动现象的防治。
文件系统实现:学习文件系统的层次结构、索引节点(inode)、目录组织、空闲空间管理,理解VFS(虚拟文件系统)的设计思想。
设备管理:掌握I/O硬件结构、设备控制器、设备驱动程序的工作机制,学习中断处理、DMA传输的流程与优化。
Linux进程与内存管理:以Linux为例,深入剖析进程描述符task_struct、进程创建(fork/exec)、内存描述符mm_struct的实现。
ELF文件格式与程序加载:学习ELF文件的结构(代码段、数据段、BSS段),掌握程序加载与动态链接的实现原理。
操作系统性能优化实践:通过CPU占用过高、内存泄漏、I/O瓶颈等真实案例,学习操作系统层面的性能分析与优化方法。