欢迎来到天天文库
浏览记录
ID:39529919
大小:283.00 KB
页数:32页
时间:2019-07-05
《《操作系统实习课程》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、操作系统实习课程北京大学信息学院计算机科学技术系2002级2004-2005第二学期授课教师主讲教师:陈向群cherry@cs.pku.edu.cn辅导教师:李健lj@os.pku.edu.cn徐冬xudong@os.pku.edu.cn陈国辉cgh@os.pku.edu.cn马世雄mashx@pku.edu.cn地点:电教114网址:http://os.pku.edu.cn课程形式实习实现基于x86体系结构的一个操作系统课堂讲授课堂汇报(presentation)与课堂讨论实习报告课程目标通过设计和实现一个小型操作系
2、统,掌握操作系统基本原理和软件工程知识,以及操作系统设计的新思想在理解操作系统原理的基础上,掌握操作系统的实现方法深入理解操作系统中的重要概念和实现方法虚拟内存、内核和用户态、系统调用、线程、上下文切换、中断,进程间通信、并发和互斥、软硬件之间的接口等等深入理解x86体系结构获得构造复杂系统的实践经验课程介绍在提供的代码框架下,实现你自己的基于x86PC机的小型OSOS虽然不大,但是麻雀虽小,五脏俱全例如:小巧的bootloader,类似exokernel的设计先进的内核,一个shell(让你可以方便的使用所编写的系统
3、)6个循序渐进的实验,从系统的启动开始,由浅入深地带领你完成自己的第一个操作系统实验1:PC启动和调用规范通过PC启动的实验,掌握x86PC机的启动过程,理解链接地址、加载地址和重定位的概念,学习如何编写位置无关代码通过实现setjmp和longjmp两个函数,掌握GCC的调用规范和x86的堆栈结构实验2:内存管理完成虚拟内存和物理内存的管理给定虚拟内存的布局规范,要求建立两级页表来满足该布局规范,并理解如何对虚拟地址空间进行管理维护数据结构来记录每个物理页的分配情况和共享情况,掌握在支持页式虚拟内存的情况下,如何对x
4、86PC机的物理内存进行管理实习介绍实习介绍(续1)实验3:进程管理通过设置进程控制块和编写进程创建、进程中止和进程调度程序,理解如何对进程进行管理通过设置中断描述符标IDT,编写通用中断派发程序和时钟中断例程,理解如何管理中断实习介绍(续2)实验4:系统调用,IPC,页故障处理和fork在IDT中增加系统调用入口,编写系统调用派发程序,掌握系统调用的实现方法,理解系统调用的处理流程实现简单的能传递一个32位整数值的IPC编写用户级的页故障处理程序编写用户级的fork函数,理解子进程如何继承父进程的资源实验5:文件系统
5、和Spawn函数通过实现一个简单的基于磁盘的微内核方式的文件系统,掌握文件系统的实现方法和层次结构Spawn函数与Unix的exec功能类似,该函数把磁盘上的可执行文件读入内存执行,既可测试文件系统,又可以理解程序的加载执行全过程,具体了解一个程序的虚拟空间的具体划分和用途实习介绍(续3)实验6:Shell实现具有管道,重定向功能的shell,能够执行一些简单的基本命令,如cat,sh,ls,echo等该实习由多个同学共同完成,可以根据实际情况对shell的功能进行扩展,通过该实习,可以培养团队合作精神和创新精神其他扩
6、展功能实习介绍(续4)成绩评定评分分布实验报告文档:7%*6次实验代码评定:7%*6次课堂讨论:16%实验报告评分原则按时提交实验报告、报告形式符合规范要求报告内容充实、有自己的见解等课堂表现评分原则课堂是否积极参与提问,回答问题正确,汇报或演示表达清楚等报告提交格式提交:实习报告,源程序注意:如果没有提交源程序或者将源程序附在实习报告中的,请重新提交源程序实习报告文件名规范学号-姓名-主题举例:00208001-李名-实验1报告源程序名字书写规范学号-姓名-主题举例:00208001-李名-实验1源程序实习报告内容要
7、求本次实验的要求本次实验自己所作的工作实验过程中所遇到的问题以及解答个人体会(可选)实验环境及工具一台X86PC机较新的Linux操作系统,例如RedHatLinux9.0实验需在Linux环境下完成GNU工具链目标机模拟器的bochs实验1(Lab1)PC启动和GCC调用规范实习内容和要求Lab1资料清单背景知识:x86andPCarchitecture.pdfIA32的官方资料:SystemProgrammingGuide.pdfInstructionSetReference.pdfBasicArchitec
8、ture.pdf汇编语言:PCAssemblyLanguage.pdf80x86汇编语言程序设计教程 杨秀文等编著 清华大学出版社10.1实验1lab1.pdf电子书:Linux内核0.11完全注释Linux内核源代码情景分析(上)Lab1资料阅读要求x86andPCarchitecture.pdf 了解背景知识Linux内核0.
此文档下载收益归作者所有