This section describes general kernel parameters relating to physical memory and stack size.
Modifies the system's idea of the number of physical pages of memory after the OS and firmware are accounted for.
Unsigned long
Number of usable pages of physical memory available on the system—not counting the memory where the core kernel and data are stored.
1 to amount of physical memory on system
Pages
No
None
Whenever you want to test the effect of running with less physical memory. Note that because this parameter does not take into account the memory used by the core kernel and data as well as various other data structures allocated early in the startup process, the value of physmem should be less than the actual number of pages that represent the smaller amount of memory.
Unstable
Default value of size of stack to be used when a kernel thread is created, and the calling routine does not provide an explicit size to be used.
Integer
8192 for all 32-bit SPARC and IA based platforms
16,384 for 64-bit sun4u platforms
0 to 262,144
Bytes in multiples of the value returned by getpagesize(3C).
Yes. Affects threads created after the variable is changed.
Must be greater than or equal to 8192 and less than or equal to 262,144 (256 x 1024) and must be a multiple of the system page size. If these conditions are not met, the following message is displayed:
Illegal stack size, Using N |
The value of N is the default described above.
When the system panics because it has run out of stack space. The best solution for this problem is to determine why the system is running out of space and make a correction. Increasing the default stack size means that almost every kernel thread will have a larger stack, resulting in increased kernel memory consumption for no good reason, because that space will generally be unused. The increased consumption means that other resources competing for the same pool of memory will have the amount of space available to them reduced, possibly decreasing the system's ability to perform work. Among the side effects will be a reduction in the number of threads which the kernel can create. This solution should be treated as no more than an interim workaround until the root cause is remedied.
Unstable
Maximum number of system events allowed to be queued waiting for delivery to the syseventd daemon. Once the size of the system event queue reaches this limit, no other system events will be allowed on the queue.
Integer
2000
0 to MAXINT
System events
Yes
The sysevent framework checks this value every time a system event is generated by ddi_log_sysevent(9F) and sysevent_post_event(3SYSEVENT).
When error log messages indicate that a system event failed to be logged, generated, or posted.
Unstable
Specify the amount of kernel pageable memory available. This memory is used primarily for kernel thread stacks. Increasing this number allows either larger stacks for the same number of threads or more threads. This parameter can only be set on systems running 64–bit kernels. Systems running 64-bit kernels use a default stack size of 24 Kbytes.
Unsigned long
64–bit kernels, 2 Gbytes
32–bit kernels, 512 Mbytes
64–bit kernels, 512 Mbytes - 24 Gbytes
32-bit kernels, 512 Mbytes
8–Kbyte pages
No
Value is compared to minimum and maximum sizes (512 Mbytes and 24 Gbytes for 64-bit systems) and if smaller than the minimum or larger than the maximum, it is reset to 2 Gbytes and a message to that effect is displayed.
The actual size used in creation of the cache is the lesser of the value specified in segkpsize after the constraints checking and 50% of physical memory.
This is one of the steps necessary to support large numbers of processes on a system. The default size of 2 Gbytes, assuming at least 1 Gbyte of physical memory is present, allows creation of 24–Kbyte stacks for more than 87,000 kernel threads. The size of a stack in a 64-bit kernel is the same whether the process is a 32-bit process or a 64-bit process. If more than this number is needed, segkpsize can be increased assuming sufficient physical memory exists.
Unstable
For information, see segkpsize (Solaris 9 12/02 Release).