作者LIAR (玻璃做的大叔)
看板EZsoft
标题Re: [请问] IMDISK的VM参数有何意义?
时间Sat Jan 19 22:35:32 2013
※ 引述《LIAR (玻璃做的大叔)》之铭言:
: 标题: [请问] IMDISK的VM参数有何意义?
: 时间: Wed Jan 9 21:32:11 2013
:
: vm Storage for this type of virtual disk is allocated from virtual memory
: in the system process. If a file is specified with -f that file is
: is loaded into the memory allocated for the disk image.
:
: → ilanese:你要不要去外国的英文讨论区发问啊? 01/10 13:42
: → mshx:imdisk -a -t vm -s 4G -m R: -p "/fs:ntfs/v:MemDisk /q /y" 01/14 11:12
: → mshx:vm这参数的意思是允许使用pagefile,但并不一定会使用 01/14 11:14
: → mshx:若你不加vm这参数,当ram 4G时你要求开一个4G ramdisk 01/14 11:15
: → mshx:我想你会直接当掉 01/14 11:15
我说一下测试结果,如果是直接建立一个RAMDISK,vm加不加都没差的样子,
如果空间不够就直接讲不够,而只要做得出来,要放pagefile也没问题(by swapadd)。
那-t vm在我看来要有-f file的运作才有意义,如果是
-a -f R:\file.mnt -m X: -s 512M
那会出现一个R:\file.mnt,大小就是-s指定的512M,这时可以格式化X:放档案进去,
这个X:空间不会用到真实记忆体。如果有用LINUX的话,我想应该和
dd if=/dev/zero of=file.mnt bs=1M count=512
mount -o loop file.mnt mount_point
是一样的意义,换句话说就根本没用到记忆体就是了。那这样能干吗?
我想到也许可以把一堆小档案的cache、temp封装在一起,这样硬碟档案比较不会散乱。
刚才没有用-t vm的话,你每次写入这个虚拟磁碟机,你会发现那个file.mnt都被改写。
好,现在remount
imdisk -D -m X:
imdisk -a -f R:\file.mnt -m X:
会发现会和unmount前一模一样。
好!如果一开始用-t mv的话呢?这时imdisk会切一块同样大小的RAM把file.mnt丢过去,
这时I/O都在RAM里面,也就是货真价实的ramdisk,此外R:\file.mnt不会变动。如果
之後再remount(这时用不用vm都没差,只是看而已),会发现磁碟内容回复到
"前一次mount"之前,而前一次mount到RAM里的内容就完全永别了。
如果有讲错,请懂得人麻烦指点一下,我是根据目前测试的结果判断的。
至於这招的应用吗?我想到的就是刚才讲的封装小档案,当然我用temp和cache举例
很不好,因为这些通常是要丢掉的。不过我之前只会用subst来把一些资料夹装成
磁碟机,除了缩短指令外好像没其他用途,现在这个就能玩打包的游戏了XD。
--
起初,他们追杀共产主义者,我没有说话,因为我不是共产主义者;
接着,他们追杀犹太人,我没有说话,因为我不是犹太人;
後来,他们追杀工会成员,我没有说话,因为我不是工会成员;
此後,他们追杀天主教徒,我没有说话,因为我是新教教徒;
最後,他们奔我而来,却再也没有人站起来为我说话了。
《First They Came(他们首次来时)》,Martin Niemoller牧师(1892-1984)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 180.176.45.179
1F:→ mshx:我只能推你真是认真 01/23 14:57
2F:→ LIAR:好奇宝宝XD 01/27 18:26
3F:→ LIAR:话说awealloc在64bit有没有必要用我就不知道了。 01/27 18:29