原帖由 oyd_admin 于 2007-9-26 14:54 发表
兼容不同的文件系统,这个理由不错。毕竟,如果所有文件系统都能实现一次删除整棵树的话,那么rm -rf的行为就是吃多了。
但是,我一开始就问的是文件系统的问题,是版主非要扯到操作系统的接口问题上。
另 ...
原帖由 oyd_admin 于 2007-9-26 15:05 发表
还有,我当然知道rm比mv慢,我也知道rm为什么这么慢,我是想知道有没有可能(例如设计一种新的文件系统和算法)使得rm和mv速度在一个级别上。
...
原帖由 oyd_admin 于 2007-9-26 15:05 发表
还有,我当然知道rm比mv慢,我也知道rm为什么这么慢,我是想知道有没有可能(例如设计一种新的文件系统和算法)使得rm和mv速度在一个级别上。
也许你们体会不到,但是当你删除一棵目录树需要半个小时的时候,你 ...
原帖由 flw2 于 2007-9-26 15:13 发表
当然可能。但是这是需要代价的。
我们所谓的文件系统,都是“通用文件系统”
如果一个80G的硬盘只能存40G文件,你干吗。当然我只是举个例子,实际的代价并不一定是这样的
而且
mv /tmp/file /就是个 ...
原帖由 oyd_admin 于 2007-9-26 14:54 发表
兼容不同的文件系统,这个理由不错。毕竟,如果所有文件系统都能实现一次删除整棵树的话,那么rm -rf的行为就是吃多了。
但是,我一开始就问的是文件系统的问题,是版主非要扯到操作系统的接口问题上。
另 ...
原帖由 oyd_admin 于 2007-9-26 15:09 发表
难道文件系统的设计,一定要先删除子目录,父目录才能删除吗?
他们都以为我在问为什么递归删除的功能不放在内核中,实际上我在问为什么要递归删除,我不认为这两个是同一种问题。
原帖由 oyd_admin 于 2007-9-26 16:24 发表
不知道谁有文件系统的起源方面的资料,就是那种阐述文件系统为什么会成为现在这样的文章。
我刚才试图设计一种能快速rm -R的文件系统,但是发现无论怎么实现,它都无法快速的mv了。
mv操作应该是比rm更频繁 ...
原帖由 思一克 于 2007-9-26 15:35 发表
本质就是这样的。
文件系统比一个有千万个货架的仓库,每个架子上还有盒子,里面还有小盒子。
现在要将1,8, x, y, z, x1, a1, .......N号码的盒子中的东西誊空(或做标记)。还要保留其他的不动。本来就是 ...
原帖由 oyd_admin 于 2007-9-26 15:09 发表
难道文件系统的设计,一定要先删除子目录,父目录才能删除吗?
他们都以为我在问为什么递归删除的功能不放在内核中,实际上我在问为什么要递归删除,我不认为这两个是同一种问题。
原帖由 flw2 于 2007-9-26 14:42 发表
版主怎么关了呢。楼主基础还是有问题,竟然说和mv比较
以下是我的回复
版主已经说的差不多完了
UNIX操作系统的接口向来都是精简,而且确实是没有必要,操作系统来做比不更简单,它还是要一个一个的删除 ...
原帖由 oyd_admin 于 2007-9-27 10:53 发表
我有一个奇想,既保持对通用文件系统的兼容,又能在O(1)时间复杂度删除一棵目录树,不知道行不行的通:
我们知道mount是可以把一个设备挂到一个文件系统中,umount操作就是O(1)的复杂度。
如果我们能随时把一个普通文件虚拟成一个存储设备的话,这个设备再mount到文件系统中,那么不管随后建立了多少级子目录,全删除都是O(1)的复杂度了。
理论上来说,实现把普通文件虚拟成设备应该不难,直接写在内核中或者做成驱动程序。
在虚拟设备上的读写效率问题,我觉得只要剩余磁盘空间还充足的话,就不会差真实设备太多。
原帖由 oyd_admin 于 2007-9-27 10:53 发表
我有一个奇想,既保持对通用文件系统的兼容,又能在O(1)时间复杂度删除一棵目录树,不知道行不行的通:
我们知道mount是可以把一个设备挂到一个文件系统中,umount操作就是O(1)的复杂度。
如果我们能随时把一 ...
原帖由 oyd_admin 于 2007-9-27 10:53 发表
我有一个奇想,既保持对通用文件系统的兼容,又能在O(1)时间复杂度删除一棵目录树,不知道行不行的通:
我们知道mount是可以把一个设备挂到一个文件系统中,umount操作就是O(1)的复杂度。
如果我们能随时把一 ...
原帖由 oyd_admin 于 2007-9-27 10:53 发表
我有一个奇想,既保持对通用文件系统的兼容,又能在O(1)时间复杂度删除一棵目录树,不知道行不行的通:
我们知道mount是可以把一个设备挂到一个文件系统中,umount操作就是O(1)的复杂度。
如果我们能随时把一 ...
欢迎光临 Chinaunix (http://bbs.chinaunix.net/) | Powered by Discuz! X3.2 |