操作系统实战45讲- 极客时间课程推荐/优惠

操作系统实战45讲--极客时间课程推荐/优惠

从0到1,实现自己的操作系统
彭东网名 LMOS,Intel 傲腾项目关键开发者
专栏 | 60讲 | 67004人已学习
优惠价¥68原价:199
官网优惠购买

版权声明

本站非极客时间官网,与官方无任何关系。我们不提供课程下载或详细内容,仅作为课程分享和推荐平台。我们鼓励大家支持正版,尊重创作者的劳动成果,这样不仅能帮助创作者持续产出优质内容,也能让自己获得更好的学习体验。请通过官方渠道购买和学习课程,感谢您的理解与支持。

课程详情

你将获得:

  • 洞悉 OS 运行机制与架构实现;
  • 强化理解 Linux 核心技术;
  • 系统级别的编程技巧;
  • “保姆级”代码注释及详解图。

课程介绍

作为计算机王国中的实际“掌舵人”,操作系统是一切法则的制定者。它掌管着硬件软件等一切资源,并负责处理多种基本事务(内存管理、资源配置、I/O 设备、网络通信等),既能维护公平正义又能杀伐决断,而我们的课程就是讲解如何实现它。


课程设计

课程中,彭东老师将多年的操作系统开发经验倾囊相授,并带你从系统级的高度分析和解决相关问题,理论结合实践,带你从无到有实现一个自己的操作系统。

实现路径

  • 从最小内核 Hello OS 练手,初步了解操作系统如何运行;
  • 对比经典操作系统,推陈出新,设计自己的操作系统——Cosmos 内核结构;
  • 解决操作系统的硬件、同步以及初始化问题,建立 Cosmos 操作系统的测试环境以及虚拟硬件;
  • 利用操作系统实现对计算机的管控,把 Cosmos 操作系统做大做强;
  • 拓展视野,储备知识,分享技术前沿内容。

知识体系

下图是彭东老师绘制的简版操作系统知识体系图,上面涉及的所有知识点,都会在后续的课程讲到。尽管看上去只是些简短的词汇,但随着课程的展开,你会发现每一小块,都犹如一片汪洋。

终极目标

  • 搞懂操作系统长什么样,如何运作,深入理解和掌握相关知识(理论);
  • 实现一个自己的,基于 x86 平台的支持多进程的操作系统内核(实操)。

课程目录

课前必读

  • 开篇词 | 为什么要学写一个操作系统?
  • 编辑手记 | 升级认知,迭代自己的操作系统

尝尝鲜:从一个Hello到另一个Hello

  • 01 | 程序的运行过程:从代码到机器运行
  • 02 | 几行汇编几行C:实现一个最简单的内核

心有蓝图:设计

  • 03 | 黑盒之中有什么:内核结构与设计
  • 04 | 震撼的Linux全景图:业界成熟的内核架构长什么样?

程序的基石:硬件

  • 05 | CPU工作模式:执行程序的三种模式
  • 06 | 虚幻与真实:程序中的地址如何转换?
  • 07 | Cache与内存:程序放在哪儿?

基本法:同步原语

  • 08 | 锁:并发操作中,解决数据同步的四种方法
  • 09 | 瞧一瞧Linux:Linux的自旋锁和信号量如何实现?

夺权:启动初始化

  • 10 | 设置工作模式与环境(上):建立计算机
  • 11 | 设置工作模式与环境(中):建造二级引导器
  • 12 | 设置工作模式与环境(下):探查和收集信息
  • 13 | 第一个C函数:如何实现板级初始化?
  • 14 | Linux初始化(上):GRUB与vmlinuz的结构
  • 15 | Linux初始化(下):从_start到第一个进程

土地革命:内存

  • 16 | 划分土地(上):如何划分与组织内存?
  • 17 | 划分土地(中):如何实现内存页面初始化?
  • 18 | 划分土地(下):如何实现内存页的分配与释放?
  • 19 | 土地不能浪费:如何管理内存对象?
  • 20 | 土地需求扩大与保障:如何表示虚拟内存?
  • 21 | 土地需求扩大与保障:如何分配和释放虚拟内存?
  • 22 | 瞧一瞧Linux:伙伴系统如何分配内存?
  • 23 | 瞧一瞧Linux:SLAB如何分配内存?

活动实体:进程

  • 24 | 活动的描述:到底什么是进程?
  • 25 | 多个活动要安排(上):多进程如何调度?
  • 26 | 多个活动要安排(下):如何实现进程的等待与唤醒机制?
  • 27 | 瞧一瞧Linux:Linux如何实现进程与进程调度?

下属部门:设备I/O

  • 28 | 部门分类:如何表示设备类型与设备驱动?
  • 29 | 部门建立:如何在内核中注册设备?
  • 30 | 部门响应:设备如何处理内核I/O包?
  • 31 | 瞧一瞧Linux:如何获取所有设备信息?

用户故事

  • 用户故事 | 成为面向“知识库”的工程师
  • 用户故事 | 操作系统发烧友:看不懂?因为你没动手
  • 用户故事 | 技术人如何做选择,路才越走越宽?
  • 用户故事 | 用好动态调试,助力课程学习
  • 用户故事 | yiyang:我的上机实验“爬坑指南”
  • 用户故事|艾同学:路虽远,行则将至
  • 用户故事|驰往:借镜观形,学以致用

银行仓库:文件系统

  • 32 | 仓库结构:如何组织文件?
  • 33 | 仓库划分:文件系统的格式化操作
  • 34 | 仓库管理:如何实现文件的六大基本操作?
  • 35 | 瞧一瞧Linux:虚拟文件系统如何管理文件?

通信部:网络

  • 36 | 从URL到网卡:如何全局观察网络数据流动?
  • 37 | 从内核到应用:网络数据在内核中如何流转
  • 38 | 从单排到团战:详解操作系统的宏观网络架构
  • 39 | 瞧一瞧Linux:详解socket实现与网络编程接口
  • 40 | 瞧一瞧Linux:详解socket的接口实现

服务交接:接口

  • 41 | 服务接口:如何搭建沟通桥梁?
  • 42 | 瞧一瞧Linux:如何实现系统API?

番外篇:虚化的世界

  • 43 | 虚拟机内核:KVM是什么?
  • 44 | 容器:如何理解容器的实现机制?
  • 45 | ARM新宠:苹果的M1芯片因何而快?
  • 46 | AArch64体系:ARM最新编程架构模型剖析

结束语

  • 结束语 | 生活可以一地鸡毛,但操作系统却是心中的光
  • 结课测试 |这些操作系统的问题,你都掌握了么?
  • 参考答案 | 对答案,是再次学习的一个机会
  • LMOS来信:第二季课程带你“手撕”计算机基础

特别放送

  • 大咖助场|以无法为有法,以无限为有限

作者介绍

彭东,网名 LMOS,Intel 傲腾项目关键开发者,《深度探索嵌入式操作系统:从零开始设计、架构和开发》作者。研究操作系统数十年,精通 Linux、BSD、SunOS 等开源操作系统内核,对 Windows 的 NT 内核也有一定研究。 曾独立开发过两套全新的操作系统内核:LMOS 和 LMOSEM。其中 LMOS 先后发布了 8 个测试版本,至今已是一个多进程、多 CPU、支持虚拟内存的全 64 位操作系统内核(x86_64 体系下),代码量达 10 万余行。LMOSEM(基于 ARM 体系)则是嵌入式操作系统的新尝试,实验了不同于 LMOS 的新架构、新代码。

作者其他课程

计算机基础实战课 - 极客时间课程推荐/分享/优惠/折扣
计算机基础实战课
系统级工程师“压箱底”的学习笔记
彭东网名 LMOS,Intel 傲腾项目关键开发者
专栏 | 20465人已学习
优惠价¥68原价:199
官网优惠购买

推荐

Vue开发实战 - 极客时间课程推荐/分享/优惠/折扣
Vue开发实战
从0开始搭建大型Vue项目
唐金州一点资讯前端技术专家,Ant Design Vue 作者
视频课 | 61505人已学习
优惠价¥59原价:129
官网优惠购买
如何看懂一幅画 - 极客时间课程推荐/分享/优惠/折扣
如何看懂一幅画
从油画开始,提升审美能力
罗桂霞意大利罗马美术学院讲师、Amelia 当代艺术节创办人
专栏 | 6567人已学习
优惠价¥59原价:99
官网优惠购买
程序员进阶攻略 - 极客时间课程推荐/分享/优惠/折扣
程序员进阶攻略
每个程序员都应该知道的成长法则
胡峰京东成都研究院技术专家
专栏 | 34028人已学习
优惠价¥68原价:199
官网优惠购买
容器实战高手课 - 极客时间课程推荐/分享/优惠/折扣
容器实战高手课
在实战中深入理解容器技术的本质
李程远eBay总监级工程师,云平台架构师
专栏 | 25231人已学习
优惠价¥59原价:129
官网优惠购买
手把手带你写一个MiniSpring - 极客时间课程推荐/分享/优惠/折扣
手把手带你写一个MiniSpring
8周搭建一个可用的Spring框架
郭屹前 Sun Microsystems Java 研发工程师,开源软件 MiniSpring、MiniTomcat 开发者
专栏 | 6661人已学习
优惠价¥59原价:99
官网优惠购买
重学TypeScript - 极客时间课程推荐/分享/优惠/折扣
重学TypeScript
从基础语法到深度应用,晋级 TS 高手
周爱民二十年资深架构师、前端绿皮书作者
视频课 | 1250人已学习
优惠价¥68原价:199
官网优惠购买