操作系统课程设计报告
专业:软件工程学号:姓名:马提交日期:2017110
f操作系统课程设计报告
【设计目的】
1、通过一个简单多用户文件系统的设计,加深理解文件系统的内部功能和内部实现
2、结合数据结构、程序设计、计算机原理等课程的知识,设计一个二级文件系统,进一步
理解操作系统
3、通过对实际问题的分析、设计、编程实现,提高学生实际应用、编程的能力
【设计内容】
为Li
ux系统设计一个简单的二级文件系统。要求做到以下几点:
1可以实现下列几条命令:
logi
用户登录
dir
列目录
create
创建文件
delete
删除文件
ope
打开文件
close
关闭文件
read
读文件
write
写文件
cd
进出目录
2.列目录时要列出文件名,物理地址,保护码和文件长度
3.源文件可以进行读写保护
【实验环境】
C
DevCpp
【设计思路】
本文件系统采用两级目录,其中第一级对应于用户账号,第二级对应于用户帐号下的文
件。另外,为了简便文件系统未考虑文件共享,文件系统安全以及管道文件与设备文件等特
殊内容。
首先应确定文件系统的数据结构:主目录、子目录及活动文件等。主目录和子目录都以
文件的形式存放于磁盘,这样便于查找和修改。用户创建的文件,可以编号存储于磁盘上。
如:file0file1file2…并以编号作为物理地址,在目录中进行登记。
结构体:
typedefstructthestructureofOSFILE
i
tfpaddr
filephysicaladdress
i
tfle
gth
filele
gth
i
tfmodefilemode0ReadO
ly1WriteO
ly2Reada
dWrite3Protect
charf
ameMAXNAMEOSFILE
file
ame存放重要信息
typedefstructthestructureofOSUFD
charufd
ameMAXNAMEufd
ame
OSFILEufdfileMAXCHILDufdow
file
OSUFD
用户下面的文件
1
f操作系统课程设计报告
typedefstructthestructureofOSUFDLOGIN
charufd
ameMAXNAME
ufd
ame
charufdpword8
ufdpassword
OSUFD_LOGIN
typedefstructfileope
mode
i
tifope
ifope
0close1ope
i
tope
mode0reado
ly1writeo
ly2reada
dwrite3i
itialOSUFD_OPENMODE
主要的函数说明:voidLogi
FLOGINFileSystem用户登录voidDirFDirFileSystem列目录voidCdFCha
geDir改变目录voidCreateFCreateFile创建文件voidDeleteFDeleteFile删除文件voidModifyFMModifyFileMode修改voidOpe
FOpe
File打开文件voidCloseFCloseFile关闭文件voidReadFReadFile读文件voidWriteFWriteFile写文件voidQuitFQuitFileSystem离开文件系统voidhelp其他重要函数:voidclrscr清屏i
tExistDchardir
ameWhetherDirNameExistExistiNotExist0i
tExr