当前位置:首页 >> >> Project3

Project3


Project Workshop of Operating System
2011.11

Project 3
实现一个基于网络的模拟磁盘驱动程序和一个文件系统(可以在 Linux 下完成) 一、磁盘驱动程序: 1. 程序分为服务器端和客户端。 客户端负责接收磁盘指令, 通过 TCP/IP 协议告知服务器端, 服务器端接到请求以后把结果再返回给客户端, 客户端再将结果返回。 这样客户端看起来好 像一个磁盘驱动程序。 2. 服务器端利用电梯算法实现对虚拟磁盘的读写。建立一个大文件(如 200M 或以上)作 为模拟磁盘,读写以扇区(512 字节)为单位进行。 typedef char block[512]; 3. 客户端实现以下接口(客户端与服务器端传输的数据格式自己设计) : int read_block (int block_num, char *block); //成功返回 0,否则返回-1。 int write_block (int block_num, char *block); //成功返回 0,否则返回-1。 int dev_open (); //成功则返回设备的 block 数,否则返回-1。 二、文件系统: 1. 使用该网络模拟磁盘驱动设计一个文件系统(在客户端) ,最多可以容纳至少 10000 个文 件,设备最大容量至少 200MB, 单个文件最大容量至少为 50MB,提供目录树功能,文件名 最长为 255 个字符,每块大小 512 字节。 2. 文件系统实现以下接口: int my_open(char *path) //打开一个已经存在的文件以备读或写,成功则返回文件描述 符,失败则返回-1(如文件不存在则失败) 。 int my_creat(char *path) //为只写操作打开一个新文件(文件已经存在则失败 ) ,成功则 返回文件描述符,失败则返回-1。 int my_read(int fd,void *buf, int count) //顺序读取一个文件,成功返回读取字节数,失败 返回-1。 int my_write(int fd,void *buf,int count) //顺序写入一个文件,成功返回写入字节数,失败 返回-1。 int my_close(int fd) //关闭文件,成功返回 0,失败返回-1。 int my_remove(char *path) //删除文件,文件不存在则失败,成功返回 0,失败返回-1。 int my_rename(char *old ,char *new) //文件改名(支持 move 操作) ,成功返回 0,失败返 回-1。 int my_mkdir(char *path) //创建目录(只有在所有上层目录都已存在的情况下才创建成 功,否则失败) ,成功返回 0,失败返回-1。 int my_rmdir(char *path) //删除文件夹 (假设文件夹已经为空) 成功返回 0, , 失败返回-1。 void my_mkfs() //检查设备是上是否已经存在文件系统,如果不存在,则创建一个。 void show_file_list() //查看文件系统中存在的文件。 3. 用“/”分离表示任意深度路径,能够解析路径。 说明: 若时间精力有限,可只直接实现一个文件系统,但这样只能拿到基本分,建议从第一部 分做起。


更多相关文档:

Project3_Logisim完成单周期处理器开发.pdf

Project3_Logisim完成单周期处理器开发_计算机硬件及网络_IT/计算机_专业资料。P Project3 Logisim m 完成单周期处理 理器开发 发一、 、 1. 设计说 说明 处理...

/project3/basicCommu.unkown

1 Basic Communications Using MPI This sub-project is to warm up before the parallel matrix multiplication project. Do the following 3 practices: Go ...

CEO 3 PROJECT.unkown

1 PROJECT HOPE ANNUAL REPORT 2004 A Mess

Unit 3 Projects.unkown

nit 3 Projects □ (3.1 notebook, unit p

小学英语牛津上海版三年级下册Project3《The four seasons》优质....doc

小学英语牛津上海版三年级下册Project3《The four seasons

模块7unit3project.doc

模块7unit3project - 通道一中 高一 年级 英语 学科集体备课导学案 Unit3 Living with technology 课题课型 Project 新授课时 2...

高一模块3unit3project知识点._图文.ppt

高一模块3unit3project知识点. - Unit 3 Back to the past Project Creating an illustrated time chart Rea...

湖南省醴陵二中高一英语课件:M2U3Project_图文.ppt

湖南省醴陵二中高一英语课件:M2U3Project - Unit3 Project Interviewing an expert Lead in 1. Have you ever drea...

2017-2018学年牛津版 必修二 Unit 3 Amazing people-Project课件(....ppt

2017-2018学年牛津版 必修二 Unit 3 Amazing people-Project课件(共22张PPT)_高考_高中教育_教育专区。Interviewing an expert chuzhou middle school Li hongxia ...

高中 牛津英语模块3 Unit3Project课件 公开课_图文.ppt

高中 牛津英语模块3 Unit3Project课件 公开课 - Firstly,

牛津英语模块五UNIT3project公开课课件_图文.ppt

牛津英语模块五UNIT3project公开课课件_英语_高中教育_教育专区。Unit 3 Science and nature Project 秀美的大伊山 However.... If nature goes wrong, what ...

高一模块一Unit3Project公开课_图文.ppt

高一模块一Unit3Project公开课 - Unit 3 Looking go

2017-2018学年牛津版 必修二 Unit 3 Amazing people-Project课件(....ppt

2017-2018学年牛津版 必修二 Unit 3 Amazing people-Project课件(21张PPT)_高考_高中教育_教育专区。Interview a professional! Project Shen Zhou V the first ...

牛津高中英语模块5Unit3Project_图文.ppt

牛津高中英语模块5Unit3Project - Project Having a

Unit 3_图文.ppt

Unit 3 The Grammatical Aspect of English Words 2014-10-22 1 Pre-Class ...No. 1, 4, 5, 6 2014-10-22 28 Project Work ? Chinese learners seem ...

PintosProject3 virtual memory_图文.pdf

PintosProject3 virtual memory - Pintospr

05-DMAIC-Control_图文.ppt

05-DMAIC-Control - Control 概述 DMAIC Step Phase Define (定义) Step 1 Project选定 2 Project定义 3 Proj...

project3红外传感器.doc

project3红外传感器 - HEFEI UNIVERSITY 红外传感器 系

高中牛津M5U3-project3最新_图文.ppt

高中牛津M5U3-project3最新 - 这是我在学校M5U3project中

高中英语 Unit3Project单元测试 牛津版必修3_图文.ppt

高中英语 Unit3Project单元测试 牛津版必修3_初一语文_语文_初中教育_教育专区。合作探究 高中英语牛津版第三模块 Unit 3 Back to the past Project Project ...

更多相关标签:
网站地图

文档资料共享网 nexoncn.com copyright ©right 2010-2020。
文档资料共享网内容来自网络,如有侵犯请联系客服。email:zhit325@126.com