62 lines
1.8 KiB
Groff
62 lines
1.8 KiB
Groff
'\"macro stdmacro
|
|
.TH "Frame Scheduler" 3
|
|
.SH NAME
|
|
\f4frs_start\f1 \- starts execution of a frame scheduler object
|
|
.SH SYNOPSIS
|
|
\f4#include <sys/frs.h>\f1
|
|
.PP
|
|
\f4int frs_start(frs_t\(** \f2frs\fP);\f1
|
|
.fi
|
|
.SH DESCRIPTION
|
|
\f4frs_start\fP is called by the controller thread/process
|
|
of \f2frs\fP to start execution of the frame scheduler.
|
|
.PP
|
|
A frame scheduler may be started after all minor frames have
|
|
been initialized. Minor frame initialization consists of
|
|
making sure all FRS scheduled activity threads/processes
|
|
have been created, enqueued, and running for all participating
|
|
frame scheduler objects. This synchronization is typically
|
|
managed via barrier or semaphore synchronization services
|
|
(see Frame Scheduler Programming Examples).
|
|
.PP
|
|
All participating frame scheduler objects (master and slaves)
|
|
must be started by their corresponding controllers via \f4frs_start\fP,
|
|
before frame rate scheduling can commence.
|
|
.PP
|
|
\f4frs_start\fP will fail if one or more of the following
|
|
conditions are true:
|
|
.TP 15
|
|
.SM
|
|
\%[EINVAL]
|
|
Invalid frame scheduler object.
|
|
.TP 15
|
|
.SM
|
|
\%[EPERM]
|
|
No permission to execute frame scheduler functions.
|
|
.TP 15
|
|
.SM
|
|
\%[EPERM]
|
|
The calling thread/process is not an FRS controller.
|
|
.TP 15
|
|
.SM
|
|
\%[EPERM]
|
|
The calling pthread is not system scope.
|
|
.TP 15
|
|
.SM
|
|
\%[ENODEV]
|
|
The REACT/Pro Frame Scheduler Subsystem has not been installed.
|
|
.SH "DIAGNOSTICS"
|
|
Upon successful completion, \f4frs_start\fP will return 0.
|
|
Otherwise, -1 is returned and errno is set to indicate the error.
|
|
.SH "SEE ALSO"
|
|
\f4frs_join\f1(3),
|
|
\f4frs_yield\f1(3),
|
|
\f4frs_stop\f1(3),
|
|
\f4frs_resume\f1(3),
|
|
.P
|
|
The REACT Real-Time Programmer's Guide (insight(1)) covers Frame Scheduler
|
|
principles and usage in detail.
|
|
.P
|
|
Frame scheduler programming examples (if installed) can be found in the
|
|
following directory: /usr/share/src/react/examples.
|