操作系统课程设计报告(含源代码)

操作系统课程设计报告(含源代码)

ID:6809157

大小:1.10 MB

页数:26页

时间:2018-01-26

操作系统课程设计报告(含源代码)_第1页
操作系统课程设计报告(含源代码)_第2页
操作系统课程设计报告(含源代码)_第3页
操作系统课程设计报告(含源代码)_第4页
操作系统课程设计报告(含源代码)_第5页
资源描述:

《操作系统课程设计报告(含源代码)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、操作系统课设操作系统课程设计报告姓名:学号:班级:2010年6月25日26操作系统课设目录一、试验实现3试验三、生成目标机33.1.编译unixlite内核33.2.制作目标机的启动软盘33.3.对目标机的硬盘分区33.4.格式化目标机的硬盘43.5. 安装目标机的文件系统43.6.测试目标机5试验四、HelloWorld!54.1.目标54.2.步骤5试验五、系统调用的原理65.1.目标65.2.步骤7试验七、实现信号灯操作的系统调用97.1.增加四个系统调用:97.2.编写四个测试程序:137.3.运行测试程序15试验八

2、、实现进程间通信的系统调用168.1.增加四个系统调用:168.2.编写四个测试程序:208.3.运行测试程序22二、心得体会2326操作系统课设第一部分试验实现试验三、生成目标机试验步骤:3.1.编译unixlite内核生成系统内核可执行文件kernel.target和系统内核镜像文件Image#cd~/kernel#makedep#make3.2.制作目标机的启动软盘把系统内核镜像文件Image写入到软盘。#cd~/kernel#ddif=Imageof=/dev/fd03.3.对目标机的硬盘分区[root@(none)

3、kernel]#fdisk/dev/hdbCommand(mforhelp):m//帮助Command(mforhelp):p//打印当前分区表Command(mforhelp):n//创建新的分区Commandactioneextendedpprimarypartition(1-4)p//分区类型是主分区Partitionnumber(1-4):1//第一主分区Firstcylinder(1-4,default1)://输入回车,使用缺省值Usingdefaultvalue1Lastcylinderor+sizeor+si

4、zeMor+sizeK(1-4,default4)://输入回车,使用缺省值Usingdefaultvalue426操作系统课设Command(mforhelp):p//打印当前分区表Command(mforhelp):t//改变分区类型Selectedpartition1Hexcode(TypeLtolistcodes):81//输入minix分区代码:81Command(mforhelp):p//打印当前分区表Command(mforhelp):w//存盘退出3.4.格式化目标机的硬盘#mkfs.minix-v-n30/

5、dev/hdb13.5. 安装目标机的文件系统1挂载目标机的硬盘#mount/dev/hdb1/mnt/hdb12安装基本的文件系统#tarzxvfrootfs.tar.gz-C/mnt/hdb13卸载目标机的硬盘#umount/mnt/hdb13.6.测试目标机26操作系统课设试验四、HelloWorld!4.1.目标在目标机启动时打印出你的学号。4.2.步骤1编辑内核源文件~/kernel/init/main.cc,main.cc定义了系统的入口:main函数,在main函数中找到如下两行代码:intmain(){.….

6、printf("TotalMemorySizeis%dMeg",nphysmeg);i386init();/*setupgdt,idt,cr0*/…..}2在这两行之间插入打印学号的代码,变为:printf("TotalMemorySizeis%dMeg",nphysmeg);printf("Thisisstudent:");i386init();/*setupgdt,idt,cr0*/3在~/kernel目录下使用make命令重新编译内核,生成内核镜像文件Image:#cd~/kernel#make26操作系统

7、课设1把系统内核镜像文件Image写入到软盘:#cd~/kernel#ddif=Imageof=/dev/fd02在windows下启动目标机,查看目标机启动时是否打印出你的学号。结果:试验五、系统调用的原理5.1.目标通过为unixlite开发一个简单的系统调用了解系统调用的原理,要增加的系统调用原型是:26操作系统课设intadd(inta,intb);add的功能是返回参数a、参数b两者相加的和。5.2.步骤5.2.1.分配空闲的系统调用号为add系统调用分配空闲的系统调用号,查看~/kernel/asm/trapS.

8、S获得系统调用列表:#defineSYS(name).longsys##name#defineXXX(name).longsysnosysentry(syscalltab)sys(setup)/*0*/sys(exit)sys(fork)sys(read)sys(write)sys(ope

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。