热门关键字:  ubuntu  分区  Fedora  linux系统进程  函数

当前位置 :| 主页>Linux教程>内核研究>

Linux上shmmax参数的设置及含义

来源: 作者: 时间:2008-01-01 Tag: 点击:

通过修改/proc/sys/kernel/shmmax参数可以达到此目的。
[root@neirong root]# echo 1073741824 > /proc/sys/kernel/shmmax
[root@neirong root]# more /proc/sys/kernel/shmmax
1073741824


这里设为1G。
对于shmmax文件的修改,系统重新启动后会复位。可以通过修改 /etc/sysctl.conf 使更改永久化。
在该文件内添加以下一行
这个更改在系统重新启动后生效
kernel.shmmax = 1073741824
重起数据库使更改生效:
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> !
[oracle@neirong oracle]$ ipcs -sa

------ Shared Memory Segments --------
key        shmid      owner      perms      bytes      nattch     status      

------ Semaphore Arrays --------
key        semid      owner      perms      nsems     

------ Message Queues --------
key        msqid      owner      perms      used-bytes   messages    

[oracle@neirong oracle]$ exit
exit

SQL> startup
ORACLE instance started.

Total System Global Area  839980852 bytes
Fixed Size                   452404 bytes
Variable Size             201326592 bytes
Database Buffers          637534208 bytes
Redo Buffers                 667648 bytes
Database mounted.
Database opened.
SQL> ! ipcs -sa

------ Shared Memory Segments --------
key        shmid      owner      perms      bytes      nattch     status      
0x7a9c9900 1769472    oracle    640        859832320  35                      

------ Semaphore Arrays --------
key        semid      owner      perms      nsems     
0xfcf02e10 360448     oracle    640        154       

------ Message Queues --------
key        msqid      owner      perms      used-bytes   messages    


此时进程的pmap映射显示为:
[oracle@neirong bdump]$ pmap 4178
ora_lgwr_hsmkt[4178]
08048000 (37308 KB)    r-xp (68:06 1525072)  /opt/oracle/product/9.2.0/bin/oracle
0a4b7000 (8804 KB)     rw-p (68:06 1525072)  /opt/oracle/product/9.2.0/bin/oracle
0ad50000 (3320 KB)     rw-p (00:00 0)        
50000000 (835584 KB)   rw-s (00:04 1835008)  /SYSV7a9c9900
83000000 (4 KB)        r--s (00:04 1835008)  /SYSV7a9c9900
83001000 (644 KB)      rw-s (00:04 1835008)  /SYSV7a9c9900
830a2000 (4 KB)        r--s (00:04 1835008)  /SYSV7a9c9900
830a3000 (3444 KB)     rw-s (00:04 1835008)  /SYSV7a9c9900
b6bb7000 (4112 KB)     rw-p (00:00 0)        
b6fbb000 (44 KB)       r-xp (68:03 32811)    /lib/libnss_files-2.3.2.so
b6fc6000 (4 KB)        rw-p (68:03 32811)    /lib/libnss_files-2.3.2.so
b6fc7000 (512 KB)      rw-p (68:03 40360)    /dev/zero
b7047000 (144 KB)      rw-p (00:00 0)        
b706b000 (1224 KB)     r-xp (68:03 114692)   /lib/tls/libc-2.3.2.so
b719d000 (12 KB)       rw-p (68:03 114692)   /lib/tls/libc-2.3.2.so
b71a0000 (12 KB)       rw-p (00:00 0)        
b71a3000 (72 KB)       r-xp (68:03 32795)    /lib/libnsl-2.3.2.so
b71b5000 (4 KB)        rw-p (68:03 32795)    /lib/libnsl-2.3.2.so
b71b6000 (8 KB)        rw-p (00:00 0)        
b71b8000 (52 KB)       r-xp (68:03 114696)   /lib/tls/libpthread-0.60.so
b71c5000 (4 KB)        rw-p (68:03 114696)   /lib/tls/libpthread-0.60.so
b71c6000 (8 KB)        rw-p (00:00 0)        
b71c8000 (132 KB)      r-xp (68:03 114694)   /lib/tls/libm-2.3.2.so
b71e9000 (4 KB)        rw-p (68:03 114694)   /lib/tls/libm-2.3.2.so
b71ea000 (8 KB)        r-xp (68:03 32791)    /lib/libdl-2.3.2.so
b71ec000 (4 KB)        rw-p (68:03 32791)    /lib/libdl-2.3.2.so
b71ed000 (2940 KB)     r-xp (68:06 491677)   /opt/oracle/product/9.2.0/lib/libjox9.so
b74cc000 (1088 KB)     rw-p (68:06 491677)   /opt/oracle/product/9.2.0/lib/libjox9.so
b75dc000 (12 KB)       rw-p (00:00 0)        
b75df000 (4 KB)        r-xp (68:06 491685)   /opt/oracle/product/9.2.0/lib/libskgxn9.so
b75e0000 (8 KB)        rw-p (68:06 491685)   /opt/oracle/product/9.2.0/lib/libskgxn9.so
b75e2000 (4 KB)        r-xp (68:06 491567)   /opt/oracle/product/9.2.0/lib/libskgxp9.so
b75e3000 (4 KB)        ---p (68:06 491567)   /opt/oracle/product/9.2.0/lib/libskgxp9.so
b75e4000 (4 KB)        rw-p (68:06 491567)   /opt/oracle/product/9.2.0/lib/libskgxp9.so
b75e5000 (4 KB)        r-xp (68:06 491688)   /opt/oracle/product/9.2.0/lib/libodmd9.so
b75e6000 (4 KB)        rw-p (68:06 491688)   /opt/oracle/product/9.2.0/lib/libodmd9.so
b75e7000 (4 KB)        r-xp (68:03 101245)   /etc/libcwait.so
b75e8000 (4 KB)        rw-p (68:03 101245)   /etc/libcwait.so
b75ea000 (4 KB)        rw-p (00:00 0)        
b75eb000 (84 KB)       r-xp (68:03 32778)    /lib/ld-2.3.2.so
b7600000 (4 KB)        rw-p (68:03 32778)    /lib/ld-2.3.2.so
bfffc000 (16 KB)       rwxp (00:00 0)        
mapped: 899660 KB       writable/private: 18096 KB      shared: 839680 KB


实际上,如果没有修改shmmax参数,Oracle在启动过程中就会报出以下错误:
Starting ORACLE instance (normal)
Thu Nov 17 09:27:29 2005
WARNING: EINVAL creating segment of size 0x0000000033400000
fix shm parameters in /etc/system or equivalent

上一页 1 2下一页
[收藏] [推荐] [评论] [打印] [关闭]
上一篇:Linux 内核使用的 GNU C 扩展
下一篇:内核资料汇集帖


相关文章:
精通initramfs构建step by step
Linux利用kexec迅速切换内核
进程上下文VS中断上下文
内核通知链 学习笔记
linux spi子系统驱动分析
menuconfig 配置选项
《Linux操作系统内核实习》之练习一
udev详解
什么叫微内核,宏内核?
Linux 信号signal处理机制
开发简单的 Linux2.6 内核模块
删除内核的perl脚本
Linux2.6内核usb gadget驱动移植
GCC hacks in the Linux kernel
iomem
kernel学习的想法
让自己的驱动支持udev
linux内核编译步骤
内核的等待队列
Linux内核wait_queue深入分析
升级和删除内核
SD卡驱动分析2
Linux Kernel VDSO本地权限提升漏洞
内核中的TCP的追踪分析-15-TCP(IPV4)的客户端与
linux 2.6内核可加载模块的编译
内核模块HelloWorld
在环回接口上发送一个数据报
ARP初始化
1分钟编译FreeBSD内核
linux设备模型之uart驱动架构分析