欢迎来到天天文库
浏览记录
ID:14117000
大小:493.50 KB
页数:30页
时间:2018-07-26
《操作系统课设报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、操作系统课程设计报告姓名:何俊学号:040430310计算机操作系统课程设计报告学号:040430310姓名:何俊日期:2007年7月1日第30页共30页操作系统课程设计报告姓名:何俊学号:040430310一、课设目的通过unix系统编程加深对操作系统的理解,并增强动手能力二、实验内容1.UNIX系统编程环境介绍1.1.常见命令1.2.tar归档和gzip压缩1.3.vi编辑器1.4.make和Makefile2.实验环境介绍2.1.QEMU、宿主机和目标机2.2.完成本次实验所要的软件包2.3.宿主机中的软件包2.4.注意事项3.生成目标机3.1.编译unix
2、lite内核3.2.制作目标机的启动软盘3.3.对目标机的硬盘分区3.4.格式化目标机的硬盘3.5.安装目标机的文件系统3.6.测试目标机4.HelloWorld!4.1.目标第30页共30页操作系统课程设计报告姓名:何俊学号:0404303104.2.步骤4.3.注意事项5.系统调用的原理5.1.目标5.2.unixlite的系统调用机制5.3.步骤5.4.注意事项6.UnixLite内部函数接口6.1.常用的头文件6.2.等待队列7.实现信号灯操作的系统调用7.1.增加四个系统调用:7.2.编写四个测试程序:7.3.实现提示7.4.运行测试程序8.实现进程间通
3、信的系统调用,参考教科书P568.1.增加四个系统调用:8.2.编写四个测试程序:8.3.实现提示8.4.运行测试程序9.访问页表9.1.目标第30页共30页操作系统课程设计报告姓名:何俊学号:0404303109.2.步骤9.3.注意事项三、步骤及结果2.1生成目标机2.11编译unixlite内核生成系统内核可执行文件kernel.target和系统内核镜像文件image。#cd~/kerenl#makedep#make2.12 制作目标机的启动软盘把系统内核镜像文件image写入到软盘。#ddif=imageof=/dev/fd02.13对目标机的硬盘分区#
4、fdisk/dev/hdbcommand(mforhelp):n//创建新的分区commandactioneextendedpprimarypartition(1-4)p//分区类型是主分区partitionnumber(1-8):1//第一主分区firstcylinder(1-8,default1)://输入回车,使用缺省值usingdefaultvalue1lastcylinderor+sizeor+sizemor+sizek(1-8,default8)://输入回车,使用缺省值usingdefaultvalue8command(mforhelp):tsele
5、ctedpartition1hexcode(typeltolistcodes):81command(mforhelp):w第30页共30页操作系统课程设计报告姓名:何俊学号:0404303102.14格式化目标机的硬盘#mkfs.minix-v-n30/dev/hdb12.15安装目标机的文件系统#mount/dev/hdb1/mnt/hdb1//挂载目标机的硬盘#tarzxvfrootfs.tar.gz-c/mnt/hdb1//安装基本的文件系统#umount/mnt/hdb1//卸载目标机的硬盘2.16测试执行scripts/launch-target.bat
6、,出现如下画面2.2输出学号2.21编辑内核源文件~/kernel/init/main.cc,main.cc定义了系统的入口:main函数,在main函数中找到如下两行代码:intmain(){...printf("totalmemorysizeis%dmeg",nphysmeg);i386init();/*setupgdt,idt,cr0*/...}第30页共30页操作系统课程设计报告姓名:何俊学号:0404303102.22在这两行之间插入打印学号的代码,变为:printf("totalmemorysizeis%dmeg",nphysmeg);prin
7、tf("thisisstudent:040330104zhuangleim");i386init();/*setupgdt,idt,cr0*/2.23在~/kernel目录下使用make命令重新编译内核,生成内核镜像文件image#cd~/kernel#make2.24把系统内核镜像文件image写入到软盘:#cd~/kernel#ddif=imageof=/dev/fd0该处为学号2.15测试结果,在windows下启动目标机2.3系统调用2.31为add系统调用分配空闲的系统调用号,查看~/kernel/asm/traps.s获得系统调用列表:第30页共30
8、页操作系统
此文档下载收益归作者所有