当前位置:网站首页 > 软件测试基础 > 正文

操作系统基础教程(操作系统课程讲解)

第一讲 操作系统概述


1.1 课程概述


1.2 什么是操作系统


1.3 操作系统历史演变


1.4 操作系统结构


1.5 OS实验概述


第二讲 操作系统与系统结构和程序设计语言


2.1 从OS角度看计算机系统


2.2 从OS角度看RISC-V


2.3 Rust语言与系统编程


2.4 RISC-V CPU启动


2.5 RISC-V CPU启动进一步分析


第三讲 中断、异常和系统调用


3.1 基本概念与原理


3.2 硬件架构支持


3.3 中断处理机制


3.4 系统调用


第四讲 物理内存管理: 连续内存分配


4.1 计算机体系结构和内存层次


4.2 地址空间和地址生成


4.3 连续内存分配


4.4 碎片整理


4.5 伙伴系统


4.6 SLAB分配器


第五讲 物理内存管理: 非连续内存分配


5.1 非连续内存分配的需求背景


5.2 段式存储管理


5.3 页式存储管理


5.4 页表概述


5.5 快表和多级页表


5.6 RISC-V页映射机制


5.7 使能RISC-V页表


第六讲 虚拟存储概念


6.1 虚拟存储的需求背景


6.2 覆盖和交换


6.3 局部性原理


6.4 虚拟存储概念


6.5 虚拟页式存储


6.6 缺页异常


6.7 RISC-V缺页异常


第七讲 虚拟存储:局部页面置换算法


7.1 页面置换算法的概念


7.2 最优算法、先进先出算法和最近最久未使用算法


7.3 时钟置换算法和最不常用算法


7.4 Belady现象和局部置换算法比较


7.5 页表自映射


第八讲 虚拟存储:全局页面置换算法


8.1 工作集置换算法


8.2 缺页率置换算法


8.3 抖动和负载控制


8.4 面向缓存的页替换算法


第九讲 进程和线程


9.1 进程的概念


9.2 进程控制块


9.3 进程状态


9.4 三状态进程模型


9.5 挂起进程模型


9.6 线程的概念


9.7 用户线程


9.8 内核线程


9.9 进程地址空间与熔断 (meltdown) 漏洞


第十讲 进程和线程控制


10.1 进程切换


10.2 进程创建


10.3 进程加载


10.4 进程等待与退出


10.5 rCore进程和线程控制


第十一讲 处理机调度


11.1 处理机调度概念


11.2 调度准则


11.3 先来先服务、短进程优先和最高响应比优先调度算法


11.4 时间片轮转、多级反馈队列、公平共享调度算法和ucore调度框架


11.5 实时调度


11.6 优先级反置


11.7 rCore调度框架


第十二讲 多处理机调度


12.1 对称多处理与多核架构


12.2 多处理器调度概述


12.3 O(1)调度


12.4 CFS调度


12.5 BFS调度算法


第十三讲 同步互斥


13.1 背景


13.2 现实生活中的同步问题


13.3 临界区和禁用硬件中断同步方法


13.4 基于软件的同步方法


13.5 高级抽象的同步方法


第十四讲 信号量与管程


14.1 信号量


14.2 信号量使用


14.3 管程


14.4 哲学家就餐问题


14.5 读者-写者问题


14.6 Rust语言中的同步机制


第十五讲 死锁和并发错误检测


15.1 死锁概念


15.2 死锁处理方法


15.3 银行家算法


15.4 死锁检测


15.5 并发错误检测


第十六讲 进程通信


16.1 进程通信概念


16.2 信号和管道


16.3 Linux信号机制


16.4 消息队列和共享内存


16.5 D-Bus机制


16.6 Binder机制


第十七讲 文件系统概念


17.1 文件系统和文件


17.2 文件描述符


17.3 目录、文件别名和文件系统种类


17.4 虚拟文件系统


17.5 文件缓存和打开文件


17.6 文件分配


17.7 空闲空间管理和冗余磁盘阵列RAID


第十八讲 文件系统实例


18.1 FAT文件系统


18.2.1 EXT4文件系统-历史


18.2.2 EXT4文件系统-支持大容量存储


18.2.3 EXT4文件系统-支持恢复异常


18.3 ZFS文件系统


第十九讲 I/O子系统


19.1 I/O特点


19.2 I/O结构


19.3 I/O数据传输


19.4 磁盘调度


19.5 Linux I/O子系统


第二十讲 内核与程序设计语言


20.1 Linux内核错误分析


20.2.1 用rust写操作系统-系统编程语言rust


20.2.2 用rust写操作系统-rust与操作系统开发


第二十一讲 异步编程 (Asynchronous Programming)


21.1 Background


21.2 Futures in Rust


21.3 Generators and async/await


21.4 Self-Referential Structs & Pin


21.5 Waker and Reactor


第二十二讲 Virtual Machine Monitor


22.1 Overview


22.2.1 How VMM works - CPU


22.2.2 How VMM works - memory & I/O


期末考试


第一讲 操作系统概述(2022)


第一节 课程概述 & 教学安排


第二节 什么是操作系统


第三节 操作系统历史演化


第四节 操作系统结构


第五节 实践:试试UNIX/Linux


OS实验讲解视频-2022春


uCore实验讲解视频


rCore实验讲解视频
























































































































































到此这篇操作系统基础教程(操作系统课程讲解)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!












































































































































































































































































































版权声明


相关文章:

  • 电脑剪辑视频教学入门零基础怎么学(电脑剪辑视频教学入门零基础怎么学的)2025-10-27 16:00:10
  • 程序员基础入门需要会哪些(程序员基础入门需要会哪些东西)2025-10-27 16:00:10
  • 程序员知识精选(程序员必知的硬核基础知识)2025-10-27 16:00:10
  • 计算机硬件基础实验报告总结(计算机基础实验结果及分析)2025-10-27 16:00:10
  • 电脑剪辑视频教学入门零基础书籍(视频剪辑教程自学电脑)2025-10-27 16:00:10
  • 操作系统基础题(操作系统例题)2025-10-27 16:00:10
  • linux入门基础教程目录(linux基本目录)2025-10-27 16:00:10
  • linux入门基础教程哪个好(linux入门什么书比较好)2025-10-27 16:00:10
  • 计算机硬件基础实训报告总结(计算机软硬件实训)2025-10-27 16:00:10
  • 网络协议测试工具(软件测试网络协议)2025-10-27 16:00:10
  • 全屏图片