dev下的shm目录

/dev/shm/是linux下一个非常有用的目录,因为这个目录不在硬盘上,而是在内存里。因此在linux下,就不需要大费周折去建 ramdisk,直接使用/dev/shm/就可达到很好的优化效果。 /dev /shm/需要注意的一个是容量问题,在linux下,它默认最大为内存的一半大小,使用df -h命令可以看到。但它并不会真正的占用这块内存,如果/dev/shm/下没有任何文件,它占用的内存实际上就是0字节;如果它最大为1G,里头放有 100M文件,那剩余的900M仍然可为其它应用程序所使用,但它所占用的100M内存,是绝不会被系统回收重新划分的,否则谁还敢往里头存文件呢?

默认系统就会加载/dev/shm ,它就是所谓的tmpfs,有人说跟ramdisk(虚拟磁盘),但不一样。象虚拟磁盘一样,tmpfs 可以使用您的 RAM,但它也可以使用您的交换分区来存储。而且传统的虚拟磁盘是个块设备,并需要一个 mkfs 之类的命令才能真正地使用它,tmpfs 是一个文件系统,而不是块设备;您只是安装它,它就可以使用了。

tmpfs有以下优势:

1,动态文件系统的大小。
2,tmpfs 的另一个主要的好处是它闪电般的速度。因为典型的 tmpfs 文件系统会完全驻留在 RAM 中,读写几乎可以是瞬间的。
3,tmpfs 数据在重新启动之后不会保留,因为虚拟内存本质上就是易失的。所以有必要做一些脚本做诸如加载,绑定的操作。

时间: 2024-07-28 22:35:14

dev下的shm目录的相关文章

如何在Win9x/2k下建立共享目录

在Windows中建立一个共享目录,通常是使用NetShareAdd函数.但是在Win2k和Win9x下,这个函数分别是包含在Netapi32.dll和Svrapi.dll中. 那么如果直接在程序中使用Netapi32.lib或Svrapi.lib,在不同的操作系统下运行时会发生找不到xxx函数的输出错误. 解决的办法就是通过GetProcAddress动态获取NetShareAdd.正好ccrun在csdn回答一位网友的问题,顺便写了些代码,在这里贴出来. 注: 1. 以下代码已在Win2k

linux驱动加载后能找到设备,但是/dev下不能找到设备文件

问题描述 linux驱动加载后能找到设备,但是/dev下不能找到设备文件 linux驱动加载后能找到设备,但是/dev下不能找到设备文件,我用的是动态分配设备号,insmod也能通过,但是/dev下就是找不到设备文件,加载后也不能通过测试程序我基本上直接用的板子例程,静态动态我都试了,就是不行,日志文件里面也什么都没有,板子是2410的,主机是红帽的,希望大神能够指点迷津/*****************************************Copyright (c)********

developer-关于Dev下REPORT DESIGNER下的数据字段保存时变成标签的问题?

问题描述 关于Dev下REPORT DESIGNER下的数据字段保存时变成标签的问题? 各位朋友,我在程序设计过程中,能够给REPORT赋值,一切保存都是正常的,但当我保存过后我在次打开配置模板时,所有的数据字段都变成了LABEL标签.烦请搞手帮我解答. 解决方案 http://technet.microsoft.com/zh-CN/library/dd239322(v=sql.105)

red hat-linux(redhat)下挂载samba目录的属性乱码,不能访问挂载目录

问题描述 linux(redhat)下挂载samba目录的属性乱码,不能访问挂载目录 解决方案 http://blog.sina.com.cn/s/blog_034747150101c73n.html 解决方案二: Linux下挂载Windows共享目录Linux下自动挂载Windows Samba共享目录关于samba 连接不上.目录访问问题的总结

web inf-关于jsp中work目录,和web-inf下的classes目录的问题

问题描述 关于jsp中work目录,和web-inf下的classes目录的问题 如果写的是jsp代码,编译后是放到work目录里: 但是如果写的是servlet,保存到classes目录里,就不会出现在work目录里. 请问这是怎么回事呢??

c语言-linux /dev下没有fb0 这么解决?????

问题描述 linux /dev下没有fb0 这么解决????? 尝试用 mknod /dev/fb0 c 29 0指令创建成功但用open打开时 错误提示说 没有这个device 求大神帮助 不急 解决方案 Ubuntu下 解决 "没有/dev/fb0"/dev/fb0 (linux FrameBuffer)linux 开启支持FrameBuffer--解决打开/dev/fb0失败的问题 解决方案二: mknod /dev/fb0 c 29 0 字符 mknod /dev/fb0 b

asp.net站点下使用虚拟目录出现503错误,应用程序池停止

问题描述 asp.net站点下使用虚拟目录出现503错误,应用程序池停止 事情是这样的,有一个asp.net的站点, 因为项目需求, 这个站点以默认网站下的一个应用程序的形式部署, 这个网站的一个上传文件功能须将文件上传到虚拟目录, 虚拟目录添加后,站点一访问,应用程序池就停止了,查看事件为"未能映射路径/xxx/xxx". 但是,我在另一个端口下新建了一个测试站点,这次将网站放在根目录下,以相同方式建立虚拟路径,网站则可以正常访问. 请问有谁遇到过这个问题吗?期待你的解答,谢谢! 解

在 lib 下新建一个目录放入 jar 包,tomcat访问不到

问题描述 在 lib 下新建一个目录放入 jar 包,tomcat访问不到 如在lib 下新建一个hibernate 的目录,将heibernate相关的jar包放到里面,编译时正常 ,但是在tomcat 环境下,找不到目录内的jar包. 将这些jar放到 lib目录下又可正常运行, 请问是需要配置哪些地方吗. 解决方案 设置jar包的lib目录 解决方案二: 首先,可以重新发布下项目,看看有没有问题,其次,再试试手动将这个jar添加到类路径下. 解决方案三: 要放到WEB-INF下面,你可以在

求救,DEV下为什么SDL中可以正常运行但是加载不出图片(图片和源代码在同一文件夹下)

问题描述 求救,DEV下为什么SDL中可以正常运行但是加载不出图片(图片和源代码在同一文件夹下) #include"SDL/SDL.h" #include const int SCREEN_WIDTH = 640; const int SCREEN_HEIGHT = 480; const int SCREEN_BPP = 32; SDL_Surface *message = NULL; SDL_Surface *background = NULL; SDL_Surface *scree