mirror of
https://github.com/MintCN/linux-insides-zh.git
synced 2026-05-05 15:19:56 +08:00
Update linux-mm-1.md
This commit is contained in:
@@ -27,7 +27,7 @@ struct memblock {
|
||||
};
|
||||
```
|
||||
|
||||
这个结构体包含五个域。第一个 `bottom_up` 域置为 `true` 时允许内存以自底向上模式进行分配。下一个域是 `current_limit`。 这个域描述了内存块的尺寸限制。接下来的三个域描述了内存块的类型。内存块的类型可以是:被保留,内存和物理内存(如果 `CONFIG_HAVE_MEMBLOCK_PHYS_MAP` 编译配置选项被开启)。接下来我们来看看下一个数据结构- `memblock_type` 。让我们来看看它的定义:
|
||||
这个结构体包含五个域。第一个 `bottom_up` 域置为 `true` 时允许内存以自底向上模式进行分配。下一个域是 `current_limit`,这个域描述了内存块的尺寸限制。接下来的三个域描述了内存块的类型。内存块的类型可以是:可用的、被保留的和物理内存(如果 `CONFIG_HAVE_MEMBLOCK_PHYS_MAP` 编译配置选项被开启)。接下来我们来看看下一个数据结构- `memblock_type` 。让我们来看看它的定义:
|
||||
|
||||
```C
|
||||
struct memblock_type {
|
||||
@@ -59,7 +59,7 @@ struct memblock_region {
|
||||
#define MEMBLOCK_HOTPLUG 0x1
|
||||
```
|
||||
|
||||
同时,如果 `CONFIG_HAVE_MEMBLOCK_NODE_MAP` 编译配置选项被开启, `memblock_region` 结构体也提供了整数域 - [numa](http://en.wikipedia.org/wiki/Non-uniform_memory_access) 节点选择器。
|
||||
同时,如果 `CONFIG_HAVE_MEMBLOCK_NODE_MAP` 编译配置选项被开启, `memblock_region` 结构体也包含节点ID - [numa](http://en.wikipedia.org/wiki/Non-uniform_memory_access) 节点选择器。
|
||||
|
||||
我们将以上部分想象为如下示意图:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user