Linux操作系统, 构建自己的内核—237人已学习
课程介绍
本课程的目的是遵从人的认知方式,由感性到理性,由小到大,由浅入深,从一个最简单的引导扇区开始,逐步增添代码,最后形成一个拥有GUI, 能够运行多种程序的多任务操作系统,在本课程的第一节有一个SampleOS演示,大家可以看看,我们最终完成的操作系统样子。 本课程需要一定的汇编语言和算法数据结构基础,但只要你愿意坚持,这些都不是问题。
课程收益
让学习者掌握操作系统的算法理论,并能付诸实现,在吃透理论的基础上实现一个完整的操作系统,从而增强你的系统设计能力,编码能力,架构能力,以及全局把控能力
讲师介绍
陈屹 更多讲师课程
拥有十年软件开发经验,曾经在realnetworks, 微软等知名公司担任软件工程师职位。 精通c/c /java/javascript/phtyon, 实践经验丰富,乐于追根刨底,对数学,对算法,对各种技术原理始终抱有无止境的好奇之心。
课程大纲
1. 添加文件API 21:48
2. 放大招!为系统开发星球大战游戏程序 27:29
3. 防范缓冲区溢出和强杀死循环程序 36:04
4. 实现进程的特权级转换 38:46
5. 为内核时钟API和216色调色板 27:58
6. 实现窗口创建API,由DOS进入windows 31:48
7. 实现进程的特权级转换 38:46
8. 不锁死控制台启动用户进程 28:58
第2章:动手写一个最小的操作系统内核
1. 最终目标展示:一个完善的操作系统 21:39
2. 用java和汇编开发一个hello world系统内核 40:20
3. 用java做操作系统内核:软盘读写 43:01
4. 让内核突破512字节的限制 21:16
5. java开发操作系统内核:由实模式进入保护模式之32位寻址 46:46
6. 保护模式超强的寻址功能:天空任鸟飞 19:34
7. C语言结合汇编开发系统内核 30:44
8. 利用C语言绘制操作系统图像界面 27:04
9. 使用调色板绘制系统界面 37:23
10. 绘制系统内核字体 21:56
11. 在系统内核中绘制鼠标指针 15:44
12. 为系统内核建立中断机制 40:06
13. 内核键盘中断处理进阶 24:54
14. 让鼠标漫天飞舞:在内核中实现鼠标的中断处理 42:32
15. 系统内核的洪荒之力:挪动鼠标 22:23
16. 操作系统内核管理模块的实现1-检测可用内存 19:54
17. 系统内核管理模块的实现2--解析内存状态信息 13:36
18. 内存管理算法实现 28:53
19. 内核开发之:使用图片分层技术实现窗口叠加 37:06
20. 操作系统系统内核开发:内核编译自动化 26:22
21. 提高窗体图层叠加处理速度 16:59
22. 操作系统内核开发:使用图层技术开发一个MessageBox 12:31
第3章:操作系统图形界面开发
1. 突破BIOS无法连续读取软盘72扇区的限制 22:54
2. 消除图层刷新而导致的严重闪烁-1 16:38
3. 消除图层刷新而导致的严重闪烁-2 16:35
4. 操作系统内核开发:实现定时器功能 20:46
5. 操作系统内核开发:利用时钟中断实现光标闪烁特效 13:46
6. 操作系统内核开发:改进分辨率和按键响应 10:30
7. 操作系统内核开发:输入文本框和鼠标移动窗体 12:31
第4章:进程设计
1. 进程初体验 28:10
2. 实现进程相互切换 19:05
3. java开发系统内核:实现进程自动切换,再现Linus当年辉煌一刻 15:24
4. java开发系统内核:进程切换模块化 13:53
5. java开发系统内核:进程的挂起和恢复 15:19
6. java开发系统内核:依靠多任务实现多窗口 12:01
7. java开发系统内核:实现进程优先级 11:45
第5章:为系统开发应用程序
1. 实现命令控制台 9:05
2. 使用Tab键进行窗口切换 8:52
3. 激活窗口获取键盘输入 17:49
4. shift按键的响应处理 11:38
5. caps按键处理实现大小写切换 13:26
6. 进程的消息通讯 14:06
7. 回车键的处理 8:59
8. mem第一个控制台命令 13:05
9. cls 控制台清空命令 9:07
10. 基于FAT12文件系统的dir命令实现 19:31
11. 实现type命令读取文件内容 24:42
12. 运行系统的第一个应用程序 22:18
13. 实现应用程序和内核间的控制权切换 16:43
14. 像Linux 一样通过中断实现API接口 18:37
15. 使用一个中断实现多个API调用 16:43
16. 使用C语言开发系统应用程序 27:02
17. 应用程序与系统内核的内存隔离 26:54
18. 应用程序与内核运行环境的交叉转换 24:43
19. 让内核从严重错误中恢复 25:29
20. 为窗口图形图形绘制提供API 21:38
21. 键盘和窗口关闭API 17:03
22. 让鼠标能操控窗体 21:27
23. 多窗口多进程 22:37
24. 无限制控制台进程的创建和关闭 31:08
25. LDT局部描述符表 24:58
大家可以点击【 查看详情】查看我的课程