SCHED_GETPARAM(3P)

✨ SCHED_GETPARAM(3P) ✨

okay bestie, welcome to the POSIX Programmer's Manual πŸ’– this one lives in section 3P and it's literally called SCHED_GETPARAM(3P), and yes we are about to become so normal about scheduling parameters, i promise πŸŽ€

🫢 PROLOG (the lil heads-up) 🫢

So like, real talk before we get into it: this manual page is part of the POSIX Programmer's Manual. The Linux implementation of this interface may differ β€” so if you're on Linux, go consult the corresponding Linux manual page for the deets on Linux behavior. Or, plot twist, the interface may not be implemented on Linux at all. πŸ™ˆ Not me finding that out the hard way. Anyway.


πŸ’… NAME πŸ’…

sched_getparam β€” get scheduling parameters (REALTIME) ✨

🌸 SYNOPSIS 🌸

#include <sched.h>

int sched_getparam(pid_t pid, struct sched_param *param);

πŸ¦‹ DESCRIPTION πŸ¦‹

So the sched_getparam() function shall return the scheduling parameters of a process specified by pid, and it drops them into the sched_param structure pointed to by param. That's the whole vibe. πŸ‘‘

If a process specified by pid exists, and if the calling process has permission, then the scheduling parameters for the process whose process ID is equal to pid shall be returned. Permission check? She's doing it. πŸ’…

If pid is zero, the scheduling parameters for the calling process shall be returned β€” like, you're getting your own tea. β˜• And heads up bestie: the behavior of the sched_getparam() function is unspecified if the value of pid is negative. Not "undefined-ish", not "probably fine" β€” unspecified. So don't. 🚫

🌈 RETURN VALUE 🌈

Upon successful completion, the sched_getparam() function shall return zero ✨. If the call to sched_getparam() is unsuccessful, the function shall return a value of -1 and set errno to indicate the error. Classic. πŸ’€

πŸ”₯ ERRORS πŸ”₯

The sched_getparam() function shall fail if:

  • EPERM β€” The requesting process does not have permission to obtain the scheduling parameters of the specified process. no permission, no peek, sorry babe 🚫
  • ESRCH β€” No process can be found corresponding to that specified by pid. she's just not there, fr fr 😭
Also, note this: the following sections are informative. So like, cute, but not the law. πŸŽ€

πŸ™ˆ EXAMPLES πŸ™ˆ

None. literally nothing. empty. a void. and honestly? iconic.

πŸ“ APPLICATION USAGE πŸ“

None. again, nothing. we're just vibing.

🧚 RATIONALE 🧚

None. no reasoning given. it's giving "trust me bestie".

⭐ FUTURE DIRECTIONS ⭐

None. the future is uncertain but this section is not β€” it's empty. πŸ’œ

πŸ‘‘ SEE ALSO πŸ‘‘

  • sched_getscheduler()
  • sched_setparam()
  • sched_setscheduler()

Also: The Base Definitions volume of POSIX.1‐2017, <sched.h> πŸ“š


Okay so legal bestie moment, but make it cute:

Portions of this text are reprinted and reproduced in electronic form from IEEE Std 1003.1-2017, Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 7, 2018 Edition, Copyright (C) 2018 by the Institute of Electrical and Electronics Engineers, Inc and The Open Group.

In the event of any discrepancy between this version and the original IEEE and The Open Group Standard, the original IEEE and The Open Group Standard is the referee document. She's the final judge, no cap. βš–οΈ

The original Standard can be obtained online at http://www.opengroup.org/unix/online.html .

Any typographical or formatting errors that appear in this page are most likely to have been introduced during the conversion of the source files to man page format. To report such errors, see https://www.kernel.org/doc/man-pages/reporting_bugs.html . πŸ›


and that's the whole page bestie, mwah πŸ’‹ this lil masterpiece came from IEEE/The Open Group, dated 2017 β€” periodt πŸ’–βœ¨πŸ¦‹πŸŒΈπŸŽ€

πŸ“¦ where this page comes from