阅读:1567回复:9
请教内核里的内存管理问题
在内核里使用内存是否一定要是非分页内存?另外内核里分配内存好象不能很大,如果我想使用一块很大的内存(比如3M),能否成功分配出来?请各位高手指点。谢谢。
|
|
沙发#
发布于:2002-03-28 18:29
谢谢cathyzh妹妹,我看了一下文档并做了一些实验,驱动里的内存问题好象也不是很可怕,不过在中断级>= DISPATCH_LEVEL时限制就比较多了。
|
|
板凳#
发布于:2002-03-28 16:56
用户被禁言,该主题自动屏蔽! |
|
地板#
发布于:2002-03-28 16:55
用户被禁言,该主题自动屏蔽! |
|
地下室#
发布于:2002-03-28 14:34
to LIUTANG:
不客气,但纠正一下,我是个女孩子 !!! |
|
5楼#
发布于:2002-03-28 12:28
多谢老兄们
|
|
6楼#
发布于:2002-03-27 17:22
:P
很大内存也能分配成功,建议你看一下DDK的一个涵数: AllocateCommonBuffer() 分配非分页内存肯定成功。 |
|
7楼#
发布于:2002-03-19 12:53
谢谢各位大哥的帮忙,可能是我的程序的问题,我重新生成了一个框架好象就可以随便分了,我在128M内存的机器上拼着死机作了一个试验,每次分配64K内存,结果总共分配出96M非分页内存,看来还是很有富余的,非分页内存还是比较爽的,不过不能太多,我分到一半的时候系统速度就已经比较慢了。
|
|
8楼#
发布于:2002-03-19 08:54
你是说的Paged和NonPaged吧?如果是这样,那就要看你当前的IRP Level了,如果是大于dispatch level,就只能用NonPaged。
|
|
|
9楼#
发布于:2002-03-19 08:44
1. 内存是否使用分页跟具体操作系统和有无mmu有关.一般来说内核不采用分页,分页会降低内核执行效率.
2. 内核能分配多大内存跟你的具体应用有关.一般嵌入式系统,内存较小.能不能分配3M的话,试试就知道了.呵呵. |
|
|