HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages 是什么意思
时间: 2024-04-06 13:32:15 浏览: 20
这段信息是Linux内核启动时打印的,它表示系统已经成功注册了1.00 GiB的HugeTLB(Huge Transparent Huge Pages)页面大小,但是还没有预先分配任何页面。HugeTLB是一种特殊的页面大小,它比普通页面大很多,可以减少内存管理开销,提高系统性能。这段信息的意思是,在系统启动时,内核已经准备好了支持1.00 GiB的HugeTLB页面大小,但是还没有提前分配任何页面,需要在运行时根据需要动态分配。
相关问题
vm.admin_reserve_kbytes = 8192 vm.block_dump = 0 vm.compact_unevictable_allowed = 1 vm.dirty_background_bytes = 0 vm.dirty_background_ratio = 10 vm.dirty_bytes = 0 vm.dirty_expire_centisecs = 3000 vm.dirty_ratio = 20 vm.dirty_writeback_centisecs = 500 vm.dirtytime_expire_seconds = 43200 vm.drop_caches = 3 vm.extfrag_threshold = 500 vm.hugepages_treat_as_movable = 0 vm.hugetlb_shm_group = 0 vm.laptop_mode = 0 vm.legacy_va_layout = 0 vm.lowmem_reserve_ratio = 256 256 32 1 vm.max_map_count = 65530 vm.memory_failure_early_kill = 0 vm.memory_failure_recovery = 1 vm.min_free_kbytes = 67584 vm.min_slab_ratio = 5 vm.min_unmapped_ratio = 1 vm.mmap_min_addr = 65536 vm.mmap_rnd_bits = 28 vm.mmap_rnd_compat_bits = 8 vm.nr_hugepages = 0 vm.nr_hugepages_mempolicy = 0 vm.nr_overcommit_hugepages = 0 vm.numa_stat = 1 vm.numa_zonelist_order = Node vm.oom_dump_tasks = 1 vm.oom_kill_allocating_task = 0 vm.overcommit_kbytes = 0 vm.overcommit_memory = 0 vm.overcommit_ratio = 50 vm.page-cluster = 3 vm.panic_on_oom = 0 vm.percpu_pagelist_fraction = 0 vm.stat_interval = 1 vm.swappiness = 60 vm.user_reserve_kbytes = 131072 vm.vfs_cache_pressure = 100 vm.watermark_scale_factor = 10 vm.zone_reclaim_mode = 0
这是一个包含多个与虚拟内存相关的系统参数的列表。以下是其中一些参数的解释:
- `vm.max_map_count`:最大映射数量,限制了内存中可以同时映射的页面数量,从而影响了缓存的大小。
- `vm.dirty_background_bytes` 和 `vm.dirty_background_ratio`:脏页的阈值,当脏页的数量超过该阈值时,系统会开始写回脏页。
- `vm.dirty_bytes` 和 `vm.dirty_ratio`:系统允许脏页占用的内存大小的上限。
- `vm.min_free_kbytes`:系统保留的空闲内存的大小,当空闲内存低于该值时,系统会开始清理缓存。
- `vm.swappiness`:控制系统在内存不足时使用交换空间的程度,该参数的值越高,系统越可能使用交换空间。
你可以使用 `sysctl` 命令来修改这些参数的值,具体的命令如下:
```
sysctl -w <parameter>=<value>
```
其中 `<parameter>` 表示参数名,`<value>` 表示你希望设置的值。请注意,该命令的修改是临时的,如果你想要永久生效,需要将修改写入到 `/etc/sysctl.conf` 配置文件中。
内核配置支持 PHP-FPM
如果你想在 Linux 系统上使用 PHP-FPM(FastCGI 进程管理器),你需要确保你的内核已经编译了支持 FastCGI 的相关选项。
首先,你需要检查你的内核是否已经编译了以下选项:
```
CONFIG_CGROUPS
CONFIG_CGROUP_PERF
CONFIG_CGROUP_HUGETLB
CONFIG_CGROUP_NET_CLASSID
CONFIG_CFS_BANDWIDTH
CONFIG_CGROUP_SCHED
CONFIG_FAIR_GROUP_SCHED
CONFIG_RT_GROUP_SCHED
CONFIG_SYSFS_DEPRECATED
CONFIG_SYSFS_DEPRECATED_V2
CONFIG_MEMCG
CONFIG_MEMCG_SWAP
CONFIG_MEMCG_KMEM
CONFIG_MEMCG_SWAP_ENABLED
CONFIG_BLK_CGROUP
CONFIG_BLK_DEV_THROTTLING
CONFIG_IOSCHED_CFQ
CONFIG_CFQ_GROUP_IOSCHED
CONFIG_CGROUP_CPUACCT
CONFIG_CGROUP_DEVICE
CONFIG_CGROUP_FREEZER
CONFIG_CGROUP_PIDS
CONFIG_CGROUP_RDMA
CONFIG_CGROUP_SOCK
CONFIG_NET_CLS_CGROUP
CONFIG_CGROUP_NET_PRIO
```
如果这些选项没有编译进你的内核,你需要重新编译并启用它们。你可以通过修改内核配置文件 `config` 或使用 `make menuconfig` 命令来进行编译。
一旦你的内核已经编译了上述选项,你就可以安装 PHP-FPM 并在 Web 服务器上启用它。具体的安装和配置方法可以参考 PHP-FPM 的官方文档。