allocation failed: out of vmalloc space – use vmalloc= to i

日期:2019-09-07编辑作者:系统操作

在行使oclhashcat+GPU校验密码强度时,会遭逢allocation failed: out of vmalloc space –use vmalloc=<size> to increase size.那些主题材料。
 
在grub的kernel部分加上vmalloc=512M就能够  形如:kernel /boot/vmlinuz-2.6.18-274.17.1.el5 ro root=LABEL=/1 vmalloc=512M
 
查看当前vmalloc的轻重缓急的不二诀借使
 
cat /proc/meminfo
 
VmallocTotal:   507896 kB
VmallocUsed:     17956 kB
VmallocChunk:   480352 kB

$cat /proc/meminfo
MemTotal:        2052440 kB //总内存
MemFree:           四千4 kB //空闲内部存储器
Buffers:           一九九九6 kB //给文件的缓冲大小
Cached:           436412 kB //高速缓冲存储器(
SwapCached:        一九九零4 kB //被高速缓冲存款和储蓄用的调换空间尺寸
Active:          1144512 kB //活跃使用中的高速缓冲存款和储蓄器页面文件大小
Inactive:         732788 kB //不时常使用的高速缓冲存款和储蓄器页面文件大小
Active(anon):     987640 kB //anon:不久
Inactive(anon):   572512 kB
Active(file):     156872 kB
Inactive(file):   160276 kB
Unevictable:           8 kB
Mlocked:               8 kB
HighTotal:       1177160 kB //The total and free amount of memory, in kilobytes, that is not directly mapped into kernel space.
HighFree:           7396 kB // The HighTotal value can vary based on the type of kernel used.
LowTotal:         875280 kB // The total and free amount of memory, in kilobytes, that is directly mapped into kernel space.  used.
LowFree:           42608 kB //The LowTotal value can vary based on the type of kernel
SwapTotal:        489940 kB //调换空间总大小
SwapFree:         450328 kB //空闲调换空间
Dirty:               104 kB //等待被写回到磁盘的尺寸
Writeback:             0 kB //正在被写回的高低
AnonPages:       1408256 kB //未映射的页的轻重缓急
Mapped:           131962 kB //设备和文书映射的深浅
Slab:              37368 kB //内核数据结构缓存的大小,可减弱申请和自由内部存款和储蓄器带来的开销
SReclaimable:      14164 kB //可收回slab的大小
SUnreclaim:        23204 kB //不可收回的slab的深浅23204+14164=37368
PageTables:        13308 kB //管理内部存储器分页的索引表的大小
NFS_Unstable:          0 kB //不稳固页表的分寸
Bounce:                0 kB //bounce:退回
WritebackTmp:          0 kB //
CommitLimit:     1516160 kB
Committed_AS:    2511900 kB
VmallocTotal:     122880 kB //虚构内部存款和储蓄器大小
VmallocUsed:       28688 kB //已经被接纳的设想内部存款和储蓄器大小
VmallocChunk:      92204 kB
HugePages_Total:       0 //大页面包车型大巴分红
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:       10232 kB
DirectMap2M:      899072 kB

摘自 素包子

========================================================================================
相应选项中文意观念各位高手已经清楚,如何翻译有哪些错误,请必需建议:
MemTotal: 全数可用RAM大小 (即物理内存减去部分预留位和根本的二进制代码大小)
MemFree: LowFree与HighFree的总和,被系统留着未使用的内部存储器
Buffers: 用来给文件做缓冲大小
Cached: 被高速缓冲存储器(cache memory)用的内部存款和储蓄器的深浅(等于 diskcache minus SwapCache ).
SwapCached:被高速缓冲存款和储蓄器(cache memory)用的置换空间的大小
             已经被换到出来的内部存款和储蓄器,但照旧被存放在在swapfile中。用来在供给的时候异常快的被轮换而无需再次张开I/O端口。
Active: 在活跃使用中的缓冲或高速缓冲存储器页面文件的分寸,除非非常须要否则不会被移作他用.
Inactive: 在相当使用中的缓冲或高速缓冲存款和储蓄器页面文件的大小,恐怕被用来其它门路.
HighTotal:
HighFree: 该区域不是一贯照射到基础空间。内核必得利用不一样的手腕运用该段内部存款和储蓄器。
LowTotal:
LowFree: 低位可以到达高位内部存款和储蓄器同样的效能,何况它仍是可以够被内核用来记录一些谈得来的数据结构。Among many
              other things, it is where everything from the Slab is
              allocated.  Bad things happen when you're out of lowmem.
         
SwapTotal: 交流空间的总大小
SwapFree: 未被运用交流空间的大小
Dirty: 等待被写回到磁盘的内部存款和储蓄器大小。
     
Writeback: 正在被写回到磁盘的内部存款和储蓄器大小。
  
AnonPages:未映射页的内部存款和储蓄器大小
  
Mapped: 设备和文件等映射的大大小小。
  
Slab: 内核数据结构缓存的深浅,可以减去申请和假释内部存款和储蓄器带来的消耗。
SReclaimable:可收回Slab的大小
SUnreclaim:不可撤消Slab的大小(SUnreclaim+SReclaimable=Slab)
PageTables:管理内存分页页面包车型地铁索引表的分寸。
NFS_Unstable:不安定页表的轻重
Bounce:
CommitLimit: Based on the overcommit ratio ('vm.overcommit_ratio'),
              this is the total amount of  memory currently available to
              be allocated on the system. This limit is only adhered to
              if strict overcommit accounting is enabled (mode 2 in
              'vm.overcommit_memory').
              The CommitLimit is calculated with the following formula:
              CommitLimit = ('vm.overcommit_ratio' * Physical RAM) + Swap
              For example, on a system with 1G of physical RAM and 7G
              of swap with a `vm.overcommit_ratio` of 30 it would
              yield a CommitLimit of 7.3G.
              For more details, see the memory overcommit documentation
              in vm/overcommit-accounting.
             
Committed_AS: The amount of memory presently allocated on the system.
              The committed memory is a sum of all of the memory which
              has been allocated by processes, even if it has not been
              "used" by them as of yet. A process which malloc()'s 1G
              of memory, but only touches 300M of it will only show up
              as using 300M of memory even if it has the address space
              allocated for the entire 1G. This 1G is memory which has
              been "committed" to by the VM and can be used at any time
              by the allocating application. With strict overcommit
              enabled on the system (mode 2 in 'vm.overcommit_memory'),
              allocations which would exceed the CommitLimit (detailed
              above) will not be permitted. This is useful if one needs
              to guarantee that processes will not fail due to lack of
              memory once that memory has been successfully allocated.
VmallocTotal: 能够vmalloc设想内部存款和储蓄器大小
VmallocUsed: 已经被应用的设想内部存储器大小。
VmallocChunk: largest contigious block of vmalloc area which is free

failed: out of vmalloc space use vmalloc=size to increase size.那一个标题。 在grub的kernel部分加上vmalloc...

 

上边轻易来个例证,看看已用内部存款和储蓄器和大意内部存款和储蓄器大小..
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int MemInfo(char* Info, int len);
int main()
{
  char buf[128];
  memset(buf, 0, 128);
  MemInfo(buf, 100);
  printf("%s", buf);
  return 0;
}
int MemInfo(char* Info, int len)
{
  char sStatBuf[256];
  FILE* fp;
  int flag;
  int TotalMem;
  int UsedMem;
  char* line;
  if(system("free -m | awk '{print $2,$3}' > mem"));
  memset(sStatBuf, 0, 256);
  fp = fopen("mem", "rb");
  if(fp < 0)
  {
    return -1;
   }
  fread(sStatBuf,1, sizeof(sStatBuf) , fp);
 
  line = strstr(sStatBuf, "/n");
  TotalMem = atoi(line);
  line = strstr(line, " ");
  UsedMem = atoi(line);
  memset(sStatBuf, 0, 256);
  sprintf(sStatBuf, "Used %dM/Total %dM/n", UsedMem, TotalMem);
  if(strlen(sStatBuf) > len)
   {
     return -1;
   }
   memcpy(Info, sStatBuf, strlen(sStatBuf));
   return 0;
}
结果:Used 488M/Total 495M

参考:

本文由今晚最快开奖现场直播发布于系统操作,转载请注明出处:allocation failed: out of vmalloc space – use vmalloc= to i

关键词:

操作系统是什么,Server的snapapi折腾笔记

目标:我要在一个被修改过的linux(基于centos5.4修改的,重新编译过内核)系统,备份他的整个硬盘,该硬盘做了LV...

详细>>

Gedit中文乱码问题,10之Gedit中文乱码问题

缺省配置下,用Ubuntu 的文件编辑器(gedit)展开GB18030/GBK/GB2312等项目标华语编码文本文件时,将会出现乱码。    ...

详细>>

编制程序境遇,增添代码补全功效

 比相当多生手在一起首用Vim的时候,都会感觉上手相比困难,何况轻便吐槽Vim对STL补全的支撑。然后又转到VS去了,...

详细>>

文件系统

名称: mount 使用权限: 系统官员或/etc/fstab中允许的使用者 使用办法: mount [-hV] mount -a [-fFnrsvw] [-t vfstype] mount [-fnrsvw] [...

详细>>