|Anonymous | Login||2023-03-21 05:43 UTC|
|Main | My View | View Issues | Change Log | Docs|
|Viewing Issue Simple Details [ Jump to Notes ]||[ Issue History ] [ Print ]|
|ID||Category||Severity||Type||Date Submitted||Last Update|
|0000339||[1003.1(2008)/Issue 7] System Interfaces||Comment||Enhancement Request||2010-10-24 20:47||2022-10-21 09:23|
|Priority||normal||Resolution||Accepted As Marked|
|Organization||Cisco Systems, Inc.|
|Final Accepted Text||Note: 0005985|
|Summary||0000339: Add _SC_NPROCESSORS_CONF / _SC_NPROCESSORS_ONLN to sysconf(3) / unistd.h|
These constants help determine how many processors are configured and online (respectively). According to an individual that ported this functionality to OpenBSD almost a year ago, it was already ported and functional to several operating systems :
"Implemented by AIX/Tru64/Solaris/Linux/FreeBSD/NetBSD."
 http://firstname.lastname@example.org/msg01435.html [^]
Add these respective constants to unistd.h as optional features where something similar to the following is stated:
_SC_NPROCESSORS_CONF - The number of processors configured.
_SC_NPROCESSORS_ONLN - The number of processors online (capable of running processes).
The OpenBSD tort seems ok in this case, and both cases could refer to scenarios where inter-machine clustering is occurring, to the extent that stating the wording like "configured in the system." or "running processes) in the system." would be extremely limiting as more systems are utilizing cross-machine resources for `pseudo-cloud' applications; plus, this would also be more flexible when dealing with virtual machines, as the processor itself isn't physical, and thus `in the system' could be misconstrued.
This issue is under consideration for the next version. We request that the reporter of this issue please add proposed, detailed text edits for the addition.
Reporter will be contacted via email as well by the Group Chair on the best way to do this.
According to our records, Solaris implemented these based on the spec in
"UNIX System V Release 4 ES/MP Multiprocessing Detailed Specifications --
Issue 2.", dated August 30, 1991.
Definitions of them also appear in the System V Interface Definition Fourth Edition.
After D2.1 page 436 line 15169 section <unistd.h>, add:
After D2.1 page 2058 line 66703 section sysconf(), add two rows to the table:
The maximum number of execution units that | _SC_NPROCESSORS_CONF
After D2.1 page 2060 line 66792 section sysconf(), add (after the table):
† The nature of an execution unit and the precise conditions under which an execution unit is considered to be available, or can be made available, or how many threads it can execute in parallel, are implementation-defined.
On D2.1 page 2060 line 66800 section sysconf(), change:
The value shall not change during the lifetime of the calling process, [XSI]except ...to:
The value returned for name arguments other than _SC_NPROCESSORS_ONLN shall not change during the lifetime of the calling process, [XSI]except ...
On D2.1 page 2791 line 92825 section getconf, change:
entries corresponding to _SC_CLK_TCK, _SC_GETGR_R_SIZE_MAX, and _SC_GETPW_R_SIZE_MAXto:
entries corresponding to _SC_CLK_TCK, _SC_GETGR_R_SIZE_MAX, _SC_GETPW_R_SIZE_MAX, _SC_NPROCESSORS_CONF, and _SC_NPROCESSORS_ONLN
After page 2791 line 92838 section getconf, add a new bullet point:
The names NPROCESSORS_CONF and NPROCESSORS_ONLN. The values of these configuration variables shall be determined as if they were obtained by calling the function sysconf() with the argument _SC_NPROCESSORS_CONF or _SC_NPROCESSORS_ONLN, respectively.
|2010-10-24 20:47||yaneurabeya||New Issue|
|2010-10-24 20:47||yaneurabeya||Status||New => Under Review|
|2010-10-24 20:47||yaneurabeya||Assigned To||=> ajosey|
|2010-10-24 20:47||yaneurabeya||Name||=> Garrett Cooper|
|2010-10-24 20:47||yaneurabeya||Organization||=> Cisco Systems, Inc.|
|2010-10-24 20:47||yaneurabeya||Section||=> sysconf|
|2010-10-28 15:58||msbrown||Interp Status||=> ---|
|2010-10-28 15:58||msbrown||Note Added: 0000591|
|2015-04-23 23:17||emaste||Issue Monitored: emaste|
|2022-09-28 19:04||alanc||Note Added: 0005983|
|2022-09-29 15:20||geoffclare||Note Added: 0005985|
|2022-09-29 15:21||geoffclare||Final Accepted Text||=> Note: 0005985|
|2022-09-29 15:21||geoffclare||Status||Under Review => Resolved|
|2022-09-29 15:21||geoffclare||Resolution||Open => Accepted As Marked|
|2022-09-29 15:21||geoffclare||Tag Attached: issue8|
|2022-10-20 15:42||geoffclare||Relationship added||related to 0001608|
|2022-10-21 09:23||geoffclare||Status||Resolved => Applied|
|Mantis 1.1.6[^] Copyright © 2000 - 2008 Mantis Group|