qianzheng82 发表于 2003-5-26 20:47:53

关于Linux内核的内存管理机制

Linux的内核会尽量把空闲内存做为磁盘缓存,可是大家有没有发现,当用户打开一个应用程序的时候,总会一下子系统速度变慢,然后才恢复正常,我用系统监视工具查看内存时,可以看到磁盘缓存会变小,有一部分被放到交换区,这样就空出一些内存给当前应用程序用.但问题就在这时产生了,因为内核为了防止内存碎片的产生,对内存做了一次平移,这个操作要占用cpu的大量时间,所以当一个程序打开时会感觉很慢(这点对于用低主频的cpu尤为明显,我用的是celeron500),这就给用户的操作性带来一定的负面影响,感觉不连贯,这点和windows有很大的差别.可能也是这个特性使得linux的后台程序可以运行得很好吧,这或许是linux适合作服务器的原因吧.但这样做是否值得?请大家讨论一下.个人认为应该为桌面版linux做一个新的内存管理模块,固定一个磁盘缓存的大小,这样多出的内存在应用程序需要的时候就可及时被分配,不是能很好地改善对用户的响应速度吗?
以上观点纯属个人平时的一般观察所得出,也许有不对的地方请大家指出,因为我没有读过linux的内核,很多细节也不是很清楚,目前正在学习当中.

nforce 发表于 2003-5-26 21:55:44

你的内存够大就行啦。:)。对不对,用1G的内存现在也不是什么梦想了。

Dragonfly 发表于 2003-5-26 22:16:05

what u mean "对内存做了一次平移"?
这个特性 is not only good for background processes, but also for u application.
for the disk buffer cache, u can tune the parameters in u /proc/sys/vm/bdflush, find some doc to see hwo to tune it.

樱家冢 发表于 2003-5-27 08:06:34

what u mean "对内存做了一次平移"?
这个特性 is not only good for background processes, but also for u application.
for the disk buffer cache, u can tune the parameters in u /proc/sys/vm/bdflush, find some doc to see hwo to tune it.
谢谢了,终于发现,呵呵。

Dragonfly 发表于 2003-5-27 08:21:12

find what?:?:
页: [1]
查看完整版本: 关于Linux内核的内存管理机制