如何使用 prctl
命令显示给定资源控制的信息
MORE INFO : http://docs.oracle.com/cd/E26926_01/html/E25831/rmctrls.task-33.html
设置参数:(10G)
vi /etc/system
set noexec_user_stack=1
set semsys:seminfo_semmni=100
set semsys:seminfo_semmns=1024
set semsys:seminfo_semmsl=256
set semsys:seminfo_semvmx=32767
set shmsys:shminfo_shmmax=4294967295
set shmsys:shminfo_shmmin=1
set shmsys:shminfo_shmmni=100
set shmsys:shminfo_shmseg=10
重启root/
如下参数如果没有提示,就不需要修改//
* set hard limit on file descriptors
set rlim_fd_max = 4096
* set soft limit on file descriptors
set rlim_fd_cur = 1024
max_user_process
http://www.dbatoolz.com/t/11gr2-install-fails-hard-limit-maximum-user-processes.html
solaris问答:
http://www.uplooking.com/content/view/1626/
11G:///
Oracle Metalink was useless — total waste of time — I hate that site now, it’s gone completely into the crapper.
SOLUTION (thanks to David D’Acquisto advice):
1) edit /etc/system as follows:
set shmsys:shminfo_shmmax=12025908428
set shmsys:shminfo_shmmni=100
set shmsys:shminfo_shmseg=10
set semsys:seminfo_semmni=100
set semsys:seminfo_semmns=1024
set shmsys:shminfo_shmmin=1
set max_nprocs=30000
set maxuprc=16384
2) setup project for oracle user (if it’s already setup then just ignore the duplicate error while running projadd command):
projadd -U oracle user.oracle
projmod -s -K "project.max-sem-ids=(priv,100,deny)" user.oracle
projmod -s -K "process.max-sem-nsems=(priv,256,deny)" user.oracle
projmod -s -K "project.max-shm-memory=(priv,12025908428,deny)" user.oracle
projmod -s -K "project.max-shm-ids=(priv,100,deny)" user.oracle
projmod -s -K "process.max-file-descriptor=(priv,65536,deny)" user.oracle
3) bounce the box:
init 6
Here’s how to check for the setting:
## before above changes were applied
##
$ kstat|grep v_proc
v_proc 16362
$
$ kstat |grep v_maxup
v_maxup 16357
v_maxupttl 16357
$
## after changes/reboot
##
$ kstat|grep v_proc
v_proc 30000
$
$ kstat |grep v_maxup
v_maxup 16384
v_maxupttl 29995
$
NOTE: the setting above are based on 16gb of RAM if yours is less/more — adjust as per David’s formula.
No related posts.
分享到:
相关推荐
通过上述步骤,可以在 Solaris 11 上成功安装并配置 Oracle 10g R2 数据库。虽然安装过程中可能会遇到各种问题,但只要遵循官方文档并仔细检查每个步骤,就能顺利完成安装任务。希望本文能够帮助到初次接触 Solaris ...
9. **Resource Controls**:Solaris 11提供了丰富的资源控制机制,如Process Resource Controls (PRCTL)和Project and Zone Resource Controls,用于限制和管理应用程序的资源消耗。 10. **Solaris Zerotouch ...
Oracle 10g 安装文档(Solaris 10) 本文档将指导用户在 Solaris 10 操作系统中安装 Oracle 10g,并介绍了在安装、运行和优化过程中对系统资源的配置和调整。 一、 Solaris 10 中的资源管理 在 Solaris 10 中,...
《Solaris 10初级管理员指南》 Solaris 10是Oracle公司推出的UNIX操作系统,以其稳定、安全和高效的特点广泛应用于企业级服务器环境。作为初级管理员,掌握Solaris 10的基础操作和管理技能至关重要。以下是一些关键...
- **参数**:操作类型、参数1、参数2、参数3、参数4、参数5。 - **返回值**:成功返回0,失败返回-1。 - **用途**:执行各种与进程相关的操作。 **ptrace** - **功能**:进程跟踪。 - **参数**:请求类型、被跟踪...
Linux内核是开源操作系统的核心,它负责管理硬件资源,提供系统服务,同时也作为用户和硬件之间的一层接口。内存管理是Linux内核中最为关键的部分之一,它直接关系到系统的稳定性和效率。start_kernel函数作为Linux...
- **参数**: 需要提供一个键值对列表来指定要读取或修改的系统参数。 **3. acct 启用或禁止进程记账** - **功能**: `acct` 用于开启或关闭进程记账功能。 - **参数**: 需要提供一个文件路径作为记账文件。 **4....
它接受一个指针作为参数,这个指针指向要设置的新名字。 - `PR_SET_NAME`常量用于指定操作类型,表示设置线程名字。 - `SYS_gettid`是一个宏,它返回当前线程的ID(tid)。 - 设置线程名字的长度受到限制,通常不...
2. **修改configure参数**: 在configure命令中添加额外的参数,例如: ``` ../configure --prefix=/usr/glibc2.25 -I../include/ -include../include/unistd.h -include../include/prctl.h ``` 这些参数确保...
1. **数据处理**:PostGIS是一个在PostgreSQL数据库上扩展的空间和地理对象支持。在安装和配置过程中,Perl可能用于处理和解析配置文件,或者在数据导入/导出阶段进行数据转换。 2. **工具脚本**:PostGIS附带了...
进程名称可以被动态更改,通过`prctl()`系统调用,进程可以修改自己的名字,这对于调试和系统监控非常有用。 ### 退出代码 进程结束时会返回一个退出代码,表示其运行状态。通常,退出代码0表示正常终止,非零值则...
1. 劫持 prctl 系统调用:通过劫持 prctl 系统调用,可以监视发起系统调用的进程的行为,并检测攻击。 2. 行为监视:通过监视发起系统调用的进程的行为,可以检测到恶意进程的攻击行为。 3. 防御程序编译:将防御...
##### 11. `getpid` 获取进程标识号 - **功能**: 获取当前进程的PID。 - **应用场景**: 用于进程间通信、调试和日志记录。 ##### 12. `getppid` 获取父进程标识号 - **功能**: 获取当前进程的父进程PID。 - **应用...
* prctl:对进程进行特定操作 * ptrace:进程跟踪 * sched_get_priority_max:取得静态优先级的上限 * sched_get_priority_min:取得静态优先级的下限 * sched_getparam:取得进程的调度参数 * sched_getscheduler:...
- `prctl()`: 对进程执行特定操作,如安全控制。 - `ptrace()`: 进程跟踪,用于调试。 - `sched_get_priority_max()`, `sched_get_priority_min()`: 获取调度策略的优先级范围。 - `sched_getparam()`, `sched_...
2. **系统调用**:使用`prctl`、`sched_setscheduler`等系统调用来改变进程调度参数。 3. **内核接口**:与内核进行交互,例如修改CPU频率,可能需要使用`/sys/class`或`/proc`目录下的文件系统接口。 4. **权限...
- **功能**: 修改线程的架构相关的状态。 - **应用场景**: 调整线程的行为或属性。 4. **add_key** - **功能**: 向内核密钥管理系统添加密钥。 - **应用场景**: 安全通信场景。 以上列举的只是Linux系统函数的...
在Unix/Linux系统中,C++可以使用`sys/prctl.h`头文件中的`prctl`函数来调整进程优先级。`nice`值是衡量进程优先级的一个指标,范围通常为-20(最高优先级)到19(最低优先级)。`setpriority`和`getpriority`函数...
这些调用包括但不限于`getrusage`(获取进程资源使用情况)、`prctl`(处理进程控制)和`procfs`(通过/proc文件系统读取信息)。 在`top`的源码中,你会看到如何周期性地刷新显示的统计信息。这涉及到定时器的设置...