Date: Tue, 08 Jul 2003 19:41:45 -0400 (EDT) From: John Baldwin <jhb@FreeBSD.org> To: deischen@freebsd.org Cc: David Xu <davidxu@viatech.com.cn> Subject: Re: libc_r silliness Message-ID: <XFMail.20030708194145.jhb@FreeBSD.org> In-Reply-To: <Pine.GSO.4.10.10307081901470.29674-100000@pcnet5.pcnet.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 08-Jul-2003 Daniel Eischen wrote: > On Wed, 9 Jul 2003, David Xu wrote: >> >> From: "John Baldwin" <jhb@FreeBSD.org> >> >> > On Tuesday 08 July 2003 06:35 am, Terry Lambert wrote: >> > > Daniel Eischen wrote: >> > > > I have not found anything yet regarding sched_get_priority_{min,max} >> > > > confusion in the POSIX spec... >> > > >> > > http://www.opengroup.org/onlinepubs/007904975/functions/sched_get_priority_ >> > >max.html >> > > >> > > The functions take a policy parameter; they are supposed to >> > > return "appropriate" values, which I took to mean "appropriate >> > > to the policy parameter supplied at the time they were called": >> > > >> > > int sched_get_priority_max(int policy); >> > > int sched_get_priority_min(int policy); >> > > >> > > The sched_get_priority_max() and sched_get_priority_min() >> > > functions shall return the appropriate maximum or minimum, >> > > respectively, for the scheduling policy specified by policy. >> > >> > Yes, but in a multithreaded program when I call >> > sched_get_priority_max(SCHED_RR), does that tell me the maximum process >> > SCHED_RR priority for use with sched_setschedparam() or does it tell me the >> > maximum thread SCHED_RR priority for use with pthread_setschedparam()? >> > >> See page: >> http://www.opengroup.org/onlinepubs/007904975/basedefs/sched.h.html >> They are marked with 'TPS' code, so they are applied to thread scheduling. >> Otherwise, they should be marked with 'PS' code. > > Actually, <sched.h> is marked PS, not TPS, and the text of > the page talks about "process": > > Each process is controlled by an associated scheduling policy > and priority. Associated with each policy is a priority range. > Each policy definition specifies the minimum priority range for > that policy. The priority ranges for each policy may overlap > the priority ranges of other policies. > > Regardless, we have kernel scheduling parameters _and_ thread > scheduling parameters. From my interpretation, these interfaces > refer to the process scheduling, not thread scheduling. > This is a good link too: > > http://www.opengroup.org/onlinepubs/007904975/functions/xsh_chap02_08.html#tag_02_08_04_01 > > Each process shall be controlled by an associated scheduling policy > and priority. These parameters may be specified by explicit > application execution of the sched_setscheduler() or > sched_setparam() functions. > > Each thread shall be controlled by an associated scheduling policy > and priority. These parameters may be specified by explicit > application execution of the pthread_setschedparam() function. So is X/Open OSI whoever just assuming that the process and thread scheduling policies implement identical priority ranges? -- John Baldwin <jhb@FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.20030708194145.jhb>