- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
操作系统课程设计报告848812261.doc
操作系统课程设计报告
专 业: 计算机科学与技术
班 级: xxx
学 号: xxx
姓 名: xxx
指导教师:
2010年 12月 20日
目录
一、设计题目及要求 - 2 -
1.1、题目 - 2 -
1.2、目的 - 2 -
1.3、要求 - 2 -
1.4、任务 - 2 -
二、设计原理 - 3 -
2.1 总体设计思想 - 3 -
2.2 主要使用的系统接口列表: - 3 -
2.3 Linux中对FAT格式文件属性的定义: - 4 -
2.4 程序整体流程图: - 4 -
三、开发环境与设备 - 4 -
四、测试结果 - 4 -
五、总结及心得 - 8 -
附录 - 8 -
一、设计题目及要求
1.1、题目
设计一个简单的文件系统
1.2、目的
掌握Linux内核编译的基本步骤和设计简单设备驱动程序的方法
理解操作系统中调度的概念和调度算法
理解Linux文件管理的知识
1.3、要求
1、本课程设计时间为一周,周一到周五半天时间为集中上机调试,其余时间为学生查阅资料、制定设计方案、编写程序。
2、第一题一至两人一组,第二题和第三题可以一至三人一组,选择设计内容中的课题,或自定课题,但须经过指导教师同意。
3、周二提交设计思路,周五检查任务完成情况,最迟下周一提交设计报告。
4、上课不能迟到、早退。
5、请自觉维护实验室清洁,爱护实验设备。
1.4、任务
准备一个U盘,在Linux下编写一个用户程序,对U盘上的文件进行管理,要求提供如下一组函数:
(1) 设计并实现一个目录列表函数(类似Linux的shell命令ls)。该函数只需包含基本命令即可,不必想Linux中ls那样有很多命令选项。
(2) 设计并实现一个改变目录的函数,即把当前目录切换到上一层目录或当前目录的子目录中(无需处理路径名)。
(3) 设计并实现一个删除文件的函数,该函数使用要删除的文件名(在当前目录中)作为参数。该函数需要查找文件,遍历FAT中的链接。在删除的情况下,要注意文件的隐藏、只读和系统属性,任何具有这些设置的文件都不能删除。
二、设计原理
2.1 总体设计思想
本实验要求对FAT格式的U盘文件系统进行管理,而linux本身提供了很多文件管理接口,本设计利用了这些接口函数进行文件管理,相对直接读取磁盘的FAT表,这种方法设计较为简单,实现容易。
2.2 主要使用的系统接口列表:
getcwd() 获取当前目录路径
opendir() 打开目录
chdir() 更改路径
readdir() 读取目录
closedir() 关闭目录
lstat() 获取文件相关信息并放入缓冲区中
open() 打开文件
ioctl() 控制文件i/o操作。本设计中使用FAT_IOCTL_GET_ATTRIBUTES 扫描FAT文件表并获取相关文件的FAT属性
remove() 删除文件
close() 关闭文件
除了系统接口和相关调用之外,还使用了自写的shell命令行界面,快速排序算法和各种显示和排版语句等。
2.3 Linux中对FAT格式文件属性的定义:
#define ATTR_RO 1 read-only
#define ATTR_HIDDEN 2 hidden
#define ATTR_SYS 4 system
#define ATTR_VOLUME 8 volume label
#define ATTR_DIR 16 directory
#define ATTR_ARCH 32 archived
2.4 程序整体流程图:
三、开发环境与设备
Linux 操作系统平台 Fedora (2.6.35.9)
Eclipse 3.5.2集成开发环境 + Eclipse CDT 6.0
Linux GCC 前端编译器
格式化为FAT格式的U盘
四、测试结果
4.1 创建测试用例。在Windows下将U盘格式化,创建测试文件和目录,并设置相关属性
4.2 将U盘连接到装有Linux系统的计算机,在特权状态下启动程序
4.3 通过cd 命令跳转到U盘根目录,测试cdprog()函数,执行结果正确
4.4 使
您可能关注的文档
- 《数字信号处理》上机实验指导书new.doc
- 中国国家教育部认可的韩国大学名单4 nnew.doc
- 固体废物专业处置单位排放污染物基本信息申报表(试行).doc
- 大学英语二级测试题new.doc
- 桐乡市职业教育中心学校,数学文化课为专业课服务,点到直线的距离公式含C语言程序.doc
- 定语从句知识点汇总.doc
- success_毕业论文(设计).doc
- 青岛版五年级上册数学寒假作业每日练练.doc.doc
- 洪水对地下水源水质的影响.doc
- 护理学12375.doc
- 2024年江西省寻乌县九上数学开学复习检测模拟试题【含答案】.doc
- 2024年江西省省宜春市袁州区数学九上开学学业水平测试模拟试题【含答案】.doc
- 《GB/T 44275.2-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第2部分:术语》.pdf
- 中国国家标准 GB/T 44275.2-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第2部分:术语.pdf
- GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构.pdf
- 《GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构》.pdf
- 中国国家标准 GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构.pdf
- GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南.pdf
- 中国国家标准 GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南.pdf
- 《GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南》.pdf
文档评论(0)