操作系统课设参考报告

所需积分/C币:21 2019-04-09 18:57:41 1.35MB PDF
111
收藏 收藏
举报

基于geekos操作系统的底层学习
桂林电子科技大学课程设计(论文)报告用纸 目录 目录 1绪论 11 Geeks操作系统概述 12课程设计的目的与任务 121项目设计0 122项目设计1. 111122 123项目设计2 124项目设计3 2系统分析 2.1 GeeKs实验项目开发环境的搭建. 4 、 vmware安装 3系统设计与实现 31项目设计流程图和原理 311项目设计0原理 312项目设计1原理 778 313项目设计2原理 314项目设计3原理 32项目设计的具体实现代码(要有详细注释) 321项目设计0具体实现代码 1 322项目设计1具体实现代码 12 323项目设计2具体实现代码 13 324项目设计3具体实现代码 16 4系统测试及编译运行…… 23 41系统编译运行的结果及分析说明 23 4.1.1 projecto 4.1.2 project1.… 24 4.1.project 4 4.1.projects 25 42、遇到问题及解决方法 27 桂林电子科技大学课程设计(论文)报告用纸 5、总结 28 6、参考文献… 28 桂林电子科技大学课程设计(论文)报告用纸第1页共28页 1绪论 计算机操作系统是管理计算札系统软件、硬件资源、控制程序j 行、改善人杋界面、提供各种服务、合理组织计算杋工作流程和为用 户有效使用计算提供良好的运行环境的系统软件,它为用户使用计算 机提供一个方便、灵活、安仝、可靠的工作环境,也是气体应用软件 赖以存在的基础,不仅是搞笑计算机专业学生需要了解它,从事计算 机行业的人员也需要深入的了解它 此次课程设计,通过搭建 linux实验平台,对专门卫操作系统课 程教学而设计的操作系统-— Geckos的项目代码的补充和完善,从 浅到深,由表及里地去理解操作系统的设计思想,理解操作系统的基 本工作原理。 11 GecKos操作系统概述 GeekS:是一个基于X86架构的PC机上运行的微操作系统内 核,由美国马理兰大学的教师开发,是一个用C语言开发的操作系 统, Geeks主要用于操作系统课程设计,目的是使学生能够实际动 手参与到一个操作系统的开发工作中。学生可以在 Linux或Unix环 境下对其进行功能扩充,且其针对进程、文件系统、存储管理等操作 系统核心内容分别设计了7个难度逐渐增加的项目供学生选择 12课程设计的目的与任务 121项目设计0 项目设计目的 熟悉 GeekS的项日编译、调试和运行环境,掌握 GeekS 运行工作过程。 、项目设计要求: 1、搭建 Geeks的编译和调试平台,掌握 GeekS的内核 进程工作原理。 2、熟悉键盘操作涿数,编程实现一个内核进程。该进程的 桂林电子科技大学课程设计(论文)报告用纸第2页共28页 功能是:接收键盘输入的字符并显示到屏幕上,当输入ctrl+d时,结 束进程的运行 122项目设计1 项目设计目的 熟悉ELF文件格式,了解 Geeks系统如何将ELF格式的 可执行程序装入到内存,建立内核进程并运行的实现技术 项目设计要求 1、修改/ geckos/elf:c文件:在函数 Parse elf executable() 中添加代码,分析ELF格式的可执行文件(包括分析得出ELF文件 头、程序头,获取可执行文件长度,代码段、数据段等信息),并填充 Exe Format数据结构中的域值 2、在 Linux环境下编译系统得到 GeekS镜像文件。 3、编写一个相应的 bochs配置文件 4、在 bochs中运行 Geeks系统显示结果。 123项目设计2 项目设计目的 扩充 GeekS操作系统内核,使得系统能够支持用户级进程 的动态创建和执行。 、项目2要求用户对以下几个文件进行修改: 1)“sr/ GeekS/ user c”文件中的函数 Spawn(),其功能是生成一 个新的用户级进程; 2)“src/ Geek oS/user. c'文件中的函数 Switch to user context() 调度程序在执行一个新的进程前调用该函数以切换用户地址空间; 3)“src/ Geeks/elfc”文件中的函数 Parse elF Executable()。 该函数的实现要求和项目1相同。 4)“src/ GeekOS/usersegc”文件中主要是实现一些为实现对 src/ GeekS/ user c”中高层操作支持的函数。 Destroy User Context()函数的功能是释放用户态进程占用 的内存资源。 Load User Program()函数的功能通过加载可执行文件镜像 创建新进程的 User Context结构。 桂林电子科技大学课程设计(论文)报告用纸第3页共28页 Copy From User()和 Copy to_User()函数的功能是在用 户地址空间和内核地址空间之间复制数据,在分段存储器管理模式下, 只要段有效,调用 memcpy函数就可以实现这两个函数的功能 Switch To_ Address Space()函数的功能是通过将进程的LDT 装入到LDT寄存器来激活用户的地址空间; 5)“src/ Geeks/kthread. c”文件中的 Start user Thread函数和 etup User Thread函数 Setup User Thread()函数的功能是为进程初始化内核栈,栈 中是为进程首次进入用户态运行时设置处理器状态要使用的数据 Start User Thread()是一个高层操作,该函数使用 User Contex对象开始一个新进程。 6)“src/ GeckOS/ kthread. c”文件中主要是实现用户程序要求内核 进行服务的一些系统调用函数定义。要求用户实现的有 Sys Exit() 函数、 Sys Printstring()函数、 Sys getKey()、 Sys SetAttr()、 Sys Getcursor()、 Sys Putcursor()、 Sys spawn()函数、 Sys Wait ()函数和 Sys GetPid()函数 7)在 main. c文件中改写生成第一个用户态进程的函数调用 Spawn Init Process(void) ,24项目设计3 项目设计目的 硏究进程调度算法,掌握用信号量实现进程间同步的方法 为 GeckOS扩充进程调度算法一一基于时间片轮转的进程多级反馈调 度算法,并能用信号量实现进程协作。 项月设计要求 (1)实现 src/geckos/syscall.c 文件中的 Sys Setscheduling policy 系统调用,它的功能是设置系统釆用的何种进程调度策略 (2)实现src/ geckos,/ syscall.c文件中的 Sys Get TimeofDay系统 调用,它的功能是获取全局变量 g numTicks的值; (3)实现函数 Change scheduling policy(,具体实现不同调度算 法的转换。 (4)实现 syscal!c中信号量有关的四个系统调用: ys createsemaphore()、sysP()、sysV()和sys_ destroysemaphore(。 桂林电子科技大学课程设计(论文)报告用纸第4页共28页 2系统分析 21 GeeKs实验项目开发环境的搭建 、 vmware安装 打开已经下载好的虚拟机安装包 博 VMware Workstation pro安装 政迎使用 VMware workstation pro安装向导 w。 RKSTAT。N通过装向导可以更改在您的计算机 VMware Workstation pr功能的方式 PRO 除。单击”下 机中刪 Ware 上一步()[下一步0取消 下一步:接收协议 VMyate wur ksleliuu pru安装 八 最终用户许可协说 请仔细阅读以下许可协议 VMWARE最终用户许可协议 请注意,在本软件的安装过程中无论可能会出现任何条 款,使用本软件都将受此最终用户许可协议各条款的约 重要信息,请仔细阅读:您一旦下载、安装或使用本软 件,您(自然 即同意接受本最终用户许可协议 “本协议)的约束。如果您不同意本协议的条款,请勿下 阿我接受许可协议中的条款A 打印上一步[下一步0取消 桂林电子科技大学课程设计(论文)报告用纸第5页共28页 选择安装位置,安装完成: i= VMware Workstation Pro =i VMware workstation pro安装向导已完成 WORKSTATION单击完成我钮退出安装向导。 wwA民 PRO 如果要立即输入许可证密钥,请按下面的许可证 vmware 许可证 输入许可证完成 焊 Mware Workstation pro安装 输入许可证密钥 此对话框可保存产品许可证密钥 许可证密钥格式:X×000300 5A02H-A0243-2349-GTC7K-3C6IN 繳λ您的誶可证锣,蓍毕击过嚀此字感空,即后婷意入 匚输入但 桂林电子科技大学课程设计(论文)报告用纸第6页共28页 一产 焊 VMware Workstation pro安装 VMware Workstation pro装向导已完成 WORKSTATION单击完成按钮退出安装向导 PRO vmware 完成行 打开虚拟机,在虚拟机中安装 linux系统,完成并开始 geckos项 日开发 12 Ubuntu y.04-VMware Workstation 主 k SuBunt9.04x 钥2日星二11:23⊥午中su

...展开详情
试读 32P 操作系统课设参考报告
立即下载 身份认证后 购VIP低至7折
一个资源只可评论一次,评论内容不能少于5个字
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
  • 签到新秀

关注 私信
上传资源赚钱or赚积分
最新推荐
操作系统课设参考报告 21积分/C币 立即下载
1/32
操作系统课设参考报告第1页
操作系统课设参考报告第2页
操作系统课设参考报告第3页
操作系统课设参考报告第4页
操作系统课设参考报告第5页
操作系统课设参考报告第6页
操作系统课设参考报告第7页

试读结束, 可继续读3页

21积分/C币 立即下载