- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
week10实验报告
实 验 报 告
?操作系统课程设计 实验课时 1 实验项目 Nachos系统调用 实验时间 2015.5.10 实验目的 给出主要逻辑和流程;
提供项目源代码;
将本实验报告和源代码打包提交到课程网站。 实验环境 ? X86,WindowsXP,VMware5.0,RedHat Linux 9.0, SSHSecureShellClient-3.2.9 实验内容(算法、程序、步骤和方法) 包括以下几个方面的内容:
实验环境:
Nachos环境搭建
将NachOS-4.1.tgz压缩文件上传到/usr/local目录
在命令行下使用cd命令切换到指定目录
cd /usr/local
使用tar命令解压压缩文件NachOS-4.1.tgz
tar –zvxf NachOS-4.1.tgz
解压之后目录为NachOS-4.1,把其改成nachos
mv NachOS-4.1 nachos (可选)
2.编译Nachos
进入nachos/code/build.linux子目录
cd ./nachos/code/build.linux
输入make depend检查依赖
输入make,进行编译,如果没有错误,则表示编译成功
编译好的nachos系统镜像就在build.linux目录下,运行时直接 ./nachos 就可以了
可以使用./nachos –u查看nachos运行参数
配置交叉编译 -简单地说,就是在一个平台上生成另一个平台上的可执行代码。
步骤:
将mips-decstation.linux-xgcc.tgz压缩文件上传到/根目录下,然后使用tar -zvxf 命令解压
另外还需要编译测试程序转换工具,进入 nachos/coff2noff目录,运行 ./configure
输入make 进行编译
进入/usr/local/nachos/code/test目录,执行make
如果出现错误信息则vi Makefile.dep,按以下方式修改:
CPP = /usr/local/nachos/lib/gcc-lib/decstation-ultrix/2.95.2/cpp
GCCDIR = /usr/local/nachos/bin/decstation-ultrix-
保存后执行make再次测试
实验内容:
对实践过程的详细说明,针对已经满足的实践要求,采用了何种算法或思想,对Nachos平台的哪些代码进行了什么样的修改。
1.实验背景:
Shell是一个命令处理器(command processor)——是一个读入并解释你输入的命令的程序,它是介于使用者和操作系统之核心程序(kernel)间的一个接口。它是一个交互性命令解释器。shell 独立于操作系统,这种设计让用户可以灵活选择适合自己的shell。shell 让你在命令行键入命令,经过shell 解释后传送给操作系统(内核)执行。
2.实验内容:
本实验需要实现的是一个shell的功能,我们可以使用linux下的/bin/sh来实现shell的具体操作,无需手工实现。而主要的工作就在于给用户呈现一个界面,在界面中显示一些shell的提示符等信息,并将用户输入的命令送入缓存,通过调用SysExec,由/bin/sh中的系统程序来处理,然后反馈出结果。另外需要识别出用户输入的exit或quit来退出shell。
3.实验程序运行流程:(摘自资料)
或者参考:
4.实验具体要求
1).可以通过调用Linux下的/bin/sh来实现该项目shell,主要是实现几个nachos系统调用:SysWrite,SysRead,SysExec,SysJoin,SysStrncmp 然后就是在exception.cc中调用这些系统调用
在shell中它们的作用:
SysWrite: 显示提示符与shell的版本信息
SysRead:读取n个字符到缓存buffer
SysExec 与SysJoin:主要是用来执行命令,如dir等。如果该命令不存在则打印错误信息 。
SysStrncmp:比较两个字符串的前n个字符, 主要用来判断用户是否输入了exit命令以退出shell。
2).本实验需要修改的代码主要在ksyscall.h,exception.cc,syscall.h,shell.c与start.s中:(修改的代码见下面链接)
链接: /view/4e9252c733687e21ae45a95b
实验结果:
对实
您可能关注的文档
最近下载
- pep人教版四年级英语上册专项训练补全对话.docx VIP
- 2025至2030生物制药发酵罐行业细分市场及应用领域与趋势展望研究报告.docx VIP
- 建筑管理职业生涯人物访谈报告.pdf VIP
- 2025-2026年国家和地方BIM政策导向出台汇总.docx VIP
- 国家电网有限公司营销现场作业安全工作规程(试行).docx VIP
- 实 践 设计一个研学旅行方案课件 2025-2026学年度沪科版物理八年级上册.pptx VIP
- 中日汉字简繁新旧体对照表v1 5发布版.pdf VIP
- 阿思丹ASDAN(china)袋鼠数学竞赛2022年试题(中文版本).docx VIP
- 2024秋新沪科版物理八年级上册课件 第二章 声的世界 实践 举办“创意与炫酷”音乐会 .pptx VIP
- 武将合集军政mod组合基础推荐版以及问题答疑V2.9.docx VIP
原创力文档


文档评论(0)