溪水 发布留言 2007-4-15 12:43
[求助]模拟一个小型UNIX文件系统
文件系统应具有的基本功能
(1)多用户 :usr1,usr2 (2个用户)
(2)多级目录:具有树形目录结构;
(3)具有login (用户登录)和用户身份认证功能;
(4)文件的创建: create
(5)文件的打开:open
(6)文件的读:read
(7)文件的写:write
(8)文件关闭:close
(9)删除文件:delete
(10)创建目录(建立子目录):mkdir
(11)改变当前目录:cd
(12)列出文件目录:dir(列目录时要列出文件名、物理地址和文件长度)
(13)退出:logout
(14)有文件保护机制,如对文件设置访问权限等(如用户usr1不能对usr2创建的文件进行修改等)。
2.选用程序设计语言:C或C++等。
3.注意界面友好,有提示信息!
没思路啊~~~[em03][em08][em08]
溪水 发布留言 2007-4-16 13:04
[em03]没人会?
crackerwang 发布留言 2007-4-16 13:21
什么样才算模拟啊?
如果要真的写个文件系统那可是很麻烦的.
要写索引区,
我上次想把内存做硬盘来模拟一下.不知道符合不符合你的要求.
如果要真的用硬盘来写的话那就只能用windows的格式化过的来写.我觉得那样就没有什么意思了
如果那样的话说白了其实就是写一个unix的shell
溪水 发布留言 2007-4-18 09:24
不是真的文件系统,只是模拟一下过程而已~
crackerwang 发布留言 2007-4-18 12:12
那你可以用也些dos命令啊.
比如删除就用
systerm("del")什么的
文件权限windos里也有.
至于用户什么的可以把ID密码放在文件里
然后读取比较
溪水 发布留言 2007-4-19 16:05
提 示
1.本次课程设计为模拟UNIX文件系统来设计一个多用户多目录的文件系统。
1)课程设计所利用的空间为1M的内存(模拟外存文件系统存储空间)。这1M内存分成512块,每块为512个字节,这512块就是文件系统总共的可用块数,文件系统的分配就是以块为单位来分配的,空闲块的管理利用位示图的方法来管理。申请1M的内存的方法可以利用malloc()等。
2)在构造文件系统空间时,不用做引导块;专用块中只包含对空闲块和空闲磁盘i节点进行管理的信息,即位示图和记录空闲磁盘i节点号的数组;要做磁盘i节点区和文件存储区;不用做进程对换区。注意:仔细计算,合理分配各区域。
3)磁盘i节点可以利用在内存中生成链表或者数组的方法来生成,并且限制磁盘i节点数的最大值。同样内存i节点也可以利用链表的方法在内存中生成。
4)在往文件中写或者读的时候我们都是对内存中内容进行读写。例如你在文件中写的时候,其实是对分配的文件块中对应的内存赋值。当程序运行结束的时候,文件的内容都会丢失。我们这个文件系统只是一个模拟文件系统功能的虚拟文件系统。
5)不用实现文件共享。
2. 主要数据结构
(1)目录结构
(2)磁盘i节点结构
(3)系统打开文件表结构
(4)用户打开文件表结构
(5)内存活动i节点结构(提示:可设计成与磁盘i节点结构相同的数据结构)
lgx2008 发布留言 2008-7-8 08:35
这个容易
我做过这个多个版本的,需要的请联系:13553697314
页: [1]