那位大侠对固态硬盘有研究?
2360 44
[16 楼] 西风之神 [泡菜]
09-12-11 10:59
虚拟内存 Virtual Memory 很简单的翻译
RAM和MAIN MEMORY是两码事?
你真看过OS源码吗?

这个需要看OS源码吗?难道普通程序就不访问内存了?

简单说一下:
以x86系统,保护模式为例

当要访问内存时,发出指令,比如[mov 寄存器名,xxxxx]
xxxx就是个虚拟内存地址 (Intel手册叫linear address),顺利的话,数据就抓到指定的寄存器了(无论数据是在L1,L2,L3如果有的话,还是主内存)
不顺利的情况之一就是,数据很不巧,不在内存里(通常在硬盘上),这个时候,操作系统才介入,把数据先读入内存(加入内存很满,那么在把数据读入之前,得先把其他数据先写入硬盘,腾出空间来)。然后重新执行这条指令。

[西风之神 编辑于 2009-12-11 11:00]
[15 楼] poip [泡菜]
09-12-11 00:08
原文由 Angel17th 在2009-12-09 23:56发表

多级存储体系,下级性能的提升可以有效缓解上级在容量不够时的压力。

寄存器,缓存,硬盘,不可称之为一体化的,只有在全包含策略的情况下,下级的部分虚拟存储器与上级是一体化的。

所谓用完不可能是基于操作系统的内存管理不允许用完物理内存,但是实际上虚存的大量使用以及内存和外存的交换都是内存用尽的标志。

至于 实际用量/物理内存 这个数值大于1的情况并不罕见,否则虚拟内存是干嘛用的?


虚拟内存是干嘛用的?问的好。

其实这一套名词原本都不是中文的,“虚拟内存”翻译真的是很诗意,叫人浮想联翩。
为什么要虚拟?莫不是实体的用完了,就玩“虚”的了,那么一定虚在是硬盘了... ...

可惜不是那么回事。“虚拟内存”是CPU读data的时候的一个课题。

UPS读data的算法是这样的,

Basic Identification Algorithm (操作系统核心,基本算法示意):

//Search cache Directory for Tag

if "hit" then
       Use offset to fetch data from RAM
else
        //access main memory

       if "hit" then
                Store data (and block) in cache and
                Pass data to CPU
       else
                Do Context Switch (while processing IO from the disk)
//end

里面的很多名词也有很诗意的翻译,可以一个一个找,那,那里虚了呢?建议多学学OS的源码,把访问data这部分搞清,就会知道了。

科学的东西不是文学,不知道的就说不知道,学会了就好,不丢人。
[14 楼] Angel17th [资深泡菜]
09-12-9 23:56
原文由 poip 在2009-12-09 23:42发表

真可爱,以为内存就是码麻将一样,一张挨一张的用呢。哈哈!
可惜呀,OS不是那样跑的。
内存的使用,基本上很浪费,OS一直靠经验值猜你的下几个读写要求。
每次的猜测产生对内存的读写,如果CPU不用,那就是浪费。
存储是一个体系,从寄存器,到一级缓存,到2级缓存,到内存到硬盘,是一体化的。
“实际用量/物理内 ......


多级存储体系,下级性能的提升可以有效缓解上级在容量不够时的压力。

寄存器,缓存,硬盘,不可称之为一体化的,只有在全包含策略的情况下,下级的部分虚拟存储器与上级是一体化的。

所谓用完不可能是基于操作系统的内存管理不允许用完物理内存,但是实际上虚存的大量使用以及内存和外存的交换都是内存用尽的标志。

至于 实际用量/物理内存 这个数值大于1的情况并不罕见,否则虚拟内存是干嘛用的?
[13 楼] poip [泡菜]
09-12-9 23:42
原文由 Angel17th 在2009-12-09 18:49发表

额,这位都说完了……关键点就在于一旦内存用量超过你的物理内存数目,此外就是从硬盘读入内存。

[Angel17th 编辑于 2009-12-09 18:49]


真可爱,以为内存就是码麻将一样,一张挨一张的用呢。哈哈!
可惜呀,OS不是那样跑的。
内存的使用,基本上很浪费,OS一直靠经验值猜你的下几个读写要求。
每次的猜测产生对内存的读写,如果CPU不用,那就是浪费。
存储是一个体系,从寄存器,到一级缓存,到2级缓存,到内存到硬盘,是一体化的。
“实际用量/物理内存数=R”R和物理值无关,那是一个数学问题,用完的可能(=1)根本没有。
[12 楼] noisy0083 [资深泡菜]
09-12-9 23:26
原文由 lzyspirit 在2009-12-09 17:51发表

需要频繁读硬盘的程序理论上会快?
问题是哪些属于这种类型的呢? 呵呵,同问一下。


此外还有系统本身(需要记录各种日志,需要打开各种程序)
大缓存程序(浏览器需要产生各种临时文件,PS也是,Google Earth也是)
数据库程序

至于媒体编辑和播放等等却不太因为固态硬盘而变快,一是媒体压缩还是CPU是瓶颈,二是媒体数据一般都是顺序读取的,不太需要随机读取,顺序读取的话,机械硬盘并不慢
[11 楼] babayu [资深泡菜]
09-12-9 19:51
原文由 zchong1219 在2009-12-09 19:45发表
x25-m 80g raid0


寫入弱些  該用X25-E(SLC) RAID 0 "爽"

PS :x25-m  不在個人選擇清冊中

[babayu 编辑于 2009-12-09 20:00]
[10 楼] zchong1219 [陈年泡菜]
09-12-9 19:45
x25-m 80g raid0
[9 楼] babayu [资深泡菜]
09-12-9 18:55
原文由 quentinli 在2009-12-09 17:13发表
那位大侠对固态硬盘有研究? 给介绍介绍


買2台SSD 不就知道了  不過似乎SSD保固不長 Intel原廠保三年似乎信心不足

同樣快 1秒開PS
raid 0 WD 640*4


DDR3 RAM DISK 4G


[babayu 编辑于 2009-12-09 19:01]
[8 楼] clarity [泡菜]
09-12-9 18:51
好象有缺陷。
[7 楼] Angel17th [资深泡菜]
09-12-9 18:49
原文由 阿嘻 在2009-12-09 18:42发表

photoshop就是,如果你处理超大图片,它就会不停的和硬盘交换数据.其实不止photoshop,所有需要用到大内存的程序,一旦内存用量超过你的物理内存数目,Windows就会拿硬盘当作虚拟内存补上.
另外就是多媒体编码程序,这个应该好理解吧,它的主要工作就是不停的读写硬盘.


额,这位都说完了……关键点就在于一旦内存用量超过你的物理内存数目,此外就是从硬盘读入内存。

[Angel17th 编辑于 2009-12-09 18:49]
[6 楼] zchong1219 [陈年泡菜]
09-12-9 18:49
没研究,在使用,两块x25-m做raid0。就是一个快字,能在1秒左右开启ps。
[5 楼] 阿嘻 [资深泡菜]
09-12-9 18:42
原文由 lzyspirit 在2009-12-09 17:51发表

需要频繁读硬盘的程序理论上会快?
问题是哪些属于这种类型的呢? 呵呵,同问一下。

photoshop就是,如果你处理超大图片,它就会不停的和硬盘交换数据.其实不止photoshop,所有需要用到大内存的程序,一旦内存用量超过你的物理内存数目,Windows就会拿硬盘当作虚拟内存补上.
另外就是多媒体编码程序,这个应该好理解吧,它的主要工作就是不停的读写硬盘.
[4 楼] lzyspirit [资深泡菜]
09-12-9 17:51
原文由 老咸鱼 在2009-12-09 17:22发表
最主要是开关机和跑大程序速度快了,开机6秒。


需要频繁读硬盘的程序理论上会快?
问题是哪些属于这种类型的呢? 呵呵,同问一下。
[3 楼] 老咸鱼 [禁言中]
09-12-9 17:22
最主要是开关机和跑大程序速度快了,开机6秒。
[2 楼] 新老熊 [泡菜]
09-12-9 17:18
帮顶,俺也想听听
[1 楼] quentinli [泡菜]
09-12-9 17:13
那位大侠对固态硬盘有研究? 给介绍介绍