清华大学uCore-操作系统内核实现
本系列文章是学堂在线清华大学操作系统慕课,课程实验-实现uCore内核的讲义总结及个人攻略,如果有对课程感兴趣的朋友建议看原课程。
前置知识(即提前要掌握的知识):
- C语言和汇编语言
- 数据结构和算法
- 计算机组成原理
实验内容:
Lab1. uCore-OS启动、中断与设备管理: 0200~1800行
Lab2. uCore-物理内存管理: 1800~2500行
Lab3. uCore-虚拟内存管理: 2500~3200行
Lab4. uCore-内核线程管理: 3200~3600行
Lab5. uCore-用户进程管理: 3600~4300行
Lab6. uCore-进程调度: 4300~5100行
Lab7. uCore-同步互斥: 5100~6400行
Lab8. uCore-文件系统: 6400~9999行
效果
好的方面:
- 理论和实验能够较好地结合起来,不再感到OS课是一个只要死记硬背的课程
- 理解了一个OS的全局设计实现,而不是一个个分离的知识点
- 掌握了许多OS原理上没有涉及或涉及不够的东西,比如中断/系统调用的实现,X86的段页机制,进程上下文如何切换的,内核态和用户态的具体区别是什么
- 这是大学期间碰到的最复杂的软件,学习了分析和设计大型系统软件的方法
实验所用电子书:uCore实验指导书
清华大学uCore-操作系统内核实现相关推荐
- 发布AI操作系统、应用市场,开源机器学习数据库和AI操作系统内核,第四范式这波操作有点秀!
"AI的发展经历了'高期望--能否落地--落地是否有用"等多次潮起潮落.今天,AI的价值再次引发一些讨论和怀疑." 第四范式创始人兼首席执行官戴文渊在近日举行的新品发布会 ...
- 基于 Bochs 的操作系统内核实现
简介 Bochs 简介 Bochs(读音Box)是一个开源的模拟器(Emulator),它可以完全模拟x86/x64的硬件以及一些外围设备.与VirtualBox / VMware等虚拟机(Virtu ...
- 公开课-C++学习路线实战导引:从0开始到操作系统内核开发
公开课观看办法: 加入到51CTO学院C++交流群 431187655 在群中直播 课程简介 从整个IT行业角度出发, C/C++技术定位于后端服务与系统级软件研发工作,这意味着C/C++的从业人员应 ...
- Linux查看版本当前操作系统内核信息
1. # uname -a (Linux查看版本当前操作系统内核信息) 输出 Linux xxx 4.4.0-31-generic #50~14.04.1-Ubuntu SMP Wed Jul 13 ...
- 深入理解操作系统内核架构(送书)!
近年来,我国自主研发操作系统被反复提及.近期,一个计算机领域内非常专业的词来到了几乎所有人的视线内,这就是--微内核.人们对操作系统内核的讨论越来越热烈,甚至有人说我不懂什么叫微内核,什么是宏内核,接 ...
- 五分钟了解操作系统内核
操作系统和内核 关于操作系统是这样定义的: 操作系统(英语:Operating System,缩写:OS)是管理计算机硬件与软件资源的系统软件,同时也是计算机系统的内核与基石.操作系统需要处理如管理与 ...
- 【OS学习笔记】二十二 保护模式六:保户模式下操作系统内核如何加载用户程序并运行 对应的汇编代码之用户程序
本汇编代码对应文章:保户模式下操作系统内核如何加载用户程序并运行中的实际用户程序代码. 对应的主引导扇区代码:主引导扇区代码 对应的内核代码:内核代码 ;代码清单13-3;文件名:c13.asm;文件 ...
- 【OS学习笔记】二十一 保护模式六:保户模式下操作系统内核如何加载用户程序并运行 对应的汇编代码之内核代码
本汇编代码对应文章保户模式下操作系统内核如何加载用户程序并运行 中的实际内核代码 对应的主引导扇区代码:主引导扇区代码 对应的用户程序代码:用户程序代码 ;代码清单13-2;文件名:c13_core. ...
- 【OS学习笔记】二十 保护模式六:保户模式下操作系统内核如何加载用户程序并运行 对应的汇编代码之主引导扇区程序
本汇编代码对应保户模式下操作系统内核如何加载用户程序并运行 的实际主引导扇区代码: 对应的内核代码在:内核代码 对应的用户程序代码在:用户程序代码 ;代码清单13-1;文件名:c13_mbr.asm; ...
- 嵌入式操作系统内核原理和开发
嵌入式操作系统内核原理和开发(开篇) 操作系统是很多人每天必须打交道的东西,因为在你打开电脑的一刹那,随着bios自检结束,你的windows系统已经开始运行了.如果问大家操作系统是什么?可能有的人会 ...
最新文章
- web.xml文件位于web项目的目录结构中的_看完这篇,别人的开源项目结构应该能看懂了...
- 为什么前端开发这么不稳定?
- Web前端要学什么框架呢?推荐这几款
- 解决ubuntu下eclipse 经常崩溃的问题
- 模拟 http connecttimeout_燃烧室数学模型模拟软件NPSS
- CentOS7安装Java,java高级面试笔试题
- 黄刘生--数据结构--答案 2
- MySQL-----pymysql模块
- java许愿墙_wishingWall 一个好看的许愿墙板块,功能强大,页面美观 Java Develop 238万源代码下载- www.pudn.com...
- pyqt5 实现右键自定义_Python界面(GUI)编程PyQt5事件和信号
- 书店智能机器人编程与拼装体验课堂_让人工智能与编程教育走进初中教学课堂...
- 高品质的算法混响插件-Initial Audio AR1 Reverb v1.0.1 WiN-MAC
- java百度云盘,看完直呼内行
- php多层if函数,if函数嵌套计算公式用法
- 陈敏 Java课设实验报告
- TB6560 驱动板资料
- 山东理工大学pta实验三四重点题目再现。
- 程序员租房福利! 最新 2018年上海公积金提取 租房提取
- 别收藏 Excel 函数大全了!北大硕博生为帮助女朋友,开发了个 ChatExcel,一键处理表格...
- Excel函数 - 提取月份,转换月份格式