- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验4:文件系统的模拟实现
■实验基本信息
■实验内容说明
实验基本信息
■实验名称
■文件系统的模拟实现
■实验类型:综合学时:2+2 ■实验时间:13.5.30 (下午3-4节)
■地点:I -
■实验环境:
■ VMWare + Ubuntu
实验内容及原理说明
实验内容及原理说明——实验4
实验内容及原理说明
实验内容及原理说明——实验4
■实验目的和要求:
■掌握文件系统调用create unlink、open、close、 reads write的隹用,编程模拟实现文件系统基本功能
■具体功能:
■运行终端给岀命令提示,请用户选择创建、删除、读、 写、退岀等操作(可用数字表示不同命令)
■根据用户选择命令,提示用户输入文件名、文件內容 等彳言息
■执行用户命令
#include unistd.h
#includestdio.h
#include fcntl.h
■创建文件creat (兼具打开功能)
fd= creat (filenamep, mode);
filenamep指向所要创建的文件路径名
mode为文件的存取权限
fd为文件创建成功后返回的文件描述符,即用户打开 文件表中相应文件表项的序号
Ex: fd=creat(u/home/a/newfile9\0775);
■删除文件unlink
u n lin k(file n a mep);
■将文件从所在目录文件中去除,即删除相关基 本目录项
Ex: unlink(u/home/a/newfile^);
实验内容及原理说明
实验内容及原理说明——实验4
实验内容及原理说明一 实验
实验内容及原理说明一 实验4
■打开文件open
fd = open (filenamep, mode);
mode为打开方式
O_RDWREx : open (u/home/a/newfile9\
O_RDWR
O_APPEND); [O RDONLY]
■关闭文件close
close (fd);
■读文件read
nr = read (fd5 buf, count);
buf为读岀信息所应送入的用户数据区首地址
count为要求传送字节数
m?为实际读入字节数
■—旦读到文件末尾,系统调用就返回,故m?可能小于 count,甚至为0
■写文件write
nw = write (fd, buf, count);
■参数类似read
■其中buf是信息传送的源地址,即将buf指向的用户数 据区中的信息写入文件中
创建:fd=creat (filenamep, mode); ■删除:unlink (filenamep);
读:fd=open (filenamep, mode);
nr=read (fd, buf, count); close (fd);
写:fd=open (filenamep, mode);
nw=write (fd, buf, count); close (fd);
/r
/r
/r
/r
#include sys/types.h
#include sys/stat.h
#include unistd.h
#includc stdio.h
nclude fcntl.h
#include Vdiren匚h
#define FII.E_NK)DE (S_IRUSR | S_IWUSR | S_1RGRP | S_IROTH)
#define BUFFSIZE 1024
#define MAX_FIIFNAME_LEN 100
void crcatc_filc(c()nst char *filcNamc)
{
if(creat(fileNameFILE_M()DE) 0)
{
printff1 Create file failed!、n);
}
else
{
printf(HCreate file successfully!\nK);
void del_file(const char *fileName)
{-
if(unlink(fileName) 0)
{ printf(HDelete file failedJXn11);
}
else
{ printf(HDelete filesuccessfull^\n
}
}
void print_file(const char * file Name)
{
int fd = -1;
intn;
charbuf[BUFFSIZEJ;
fd 二 opcn(filcNjirnc,O_RD()NLY); if(fd0)
{
printf(HOpen file Failed!ti); return;
}
whilc((n=rcad(fd,buf3UFFSIZE)) 0)
{
i f(write (STD O UT J
您可能关注的文档
最近下载
- (7)初中英语学科教研工作报告.pdf
- 2023年成都锦城学院软件工程专业《计算机网络》科目期末试卷A(有答案).docx VIP
- 2024-2025学年小学英语五年级下册人教版(新起点)教学设计合集.docx
- 供货方案及质量保证措施范文(7篇).pdf VIP
- 房地产经纪业务、财务管理制度.doc
- 第2讲 名著阅读之《艾青诗选》《水浒传》导读-2024年中考语文复习高频考点精讲.pptx VIP
- 2024-2025学年统编版(部编版)高一思想政治上册期末同步题及答案.docx VIP
- 黑布林英语阅读初一8《彼得·潘》译文.pdf
- 2023年九年级化学下学期期末考试卷(含答案).pdf VIP
- 2024年生产部部门年终总结及明年计划.ppt
文档评论(0)