|
你先说说要物理内存的大小有什么用?
自己编个程序,调用 BIOS 的 int15/e820 功能,就可以获得各个内存块的大小。
至于说物理内存有多大,还真不容易判断出来。
内存碎块太多,而用户究竟需要其中的哪个值?或者哪几个组合起来的值,就不好说了,不同的人,需求也不同。
好了,我再补充一点个人的不成熟意见。
内存有多少?够用不够用?这本来是不该去管的事情。
当你执行 map 的时候,map 如果发现没有合适的内存块可用,它会出错的。
你的程序只需检测 map 给出的错误信息,便可给用户一个交代了,而根本就用不着费那牛劲去找最大的内存块。
最大内存块即使找着了,也不一定有多大用处。因为你还得考虑你要放多少个 IMG 到内存中。如果先前已经有 IMG 放在了其中,那么你再放一个就可能要失败了。你仍旧还是需要计算,仍旧是麻烦。而如果你把这些繁琐事都交给 map 去处理,它就会以失败信息的形式告诉你:内存不够用。
[ 本帖最后由 不点 于 2012-10-19 21:31 编辑 ] |
|