diff options
| author | Dan McDonald <danmcd@joyent.com> | 2022-03-15 12:07:15 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-03-15 12:07:15 -0400 |
| commit | 83decd22b44019b0fe369224fb19e1ef21263ab6 (patch) | |
| tree | 0bbbaea9d4231f77a406362904280d6ba53e1d55 /usr/src/man/man8/picld.8 | |
| parent | ad491f11d9af43fd3f0d6159c9e08112de475a54 (diff) | |
| download | illumos-joyent-83decd22b44019b0fe369224fb19e1ef21263ab6.tar.gz | |
OS-8361 IPD 4 (man page renumbering) tracking issue
Reviewed by: Brian Bennett <brian.bennett@joyent.com>
Approved by: Brian Bennett <brian.bennett@joyent.com>
Diffstat (limited to 'usr/src/man/man8/picld.8')
| -rw-r--r-- | usr/src/man/man8/picld.8 | 132 |
1 files changed, 132 insertions, 0 deletions
diff --git a/usr/src/man/man8/picld.8 b/usr/src/man/man8/picld.8 new file mode 100644 index 0000000000..d55774bdd2 --- /dev/null +++ b/usr/src/man/man8/picld.8 @@ -0,0 +1,132 @@ +'\" te +.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved. +.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. +.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] +.TH PICLD 8 "May 16, 2020" +.SH NAME +picld \- PICL daemon +.SH SYNOPSIS +.nf +\fB/usr/lib/picl/picld\fR +.fi + +.SH DESCRIPTION +The Platform Information and Control Library (\fBPICL\fR) provides a mechanism +to publish platform-specific information for clients to access in a +platform-independent way. \fBpicld\fR maintains and controls access to the +\fBPICL\fR information from clients and plug-in modules. The daemon is started +in both single-user and multi-user boot mode. +.sp +.LP +Upon startup, the \fBPICL\fR daemon loads and initializes the plug-in modules. +These modules use the \fBlibpicltree\fR(3PICLTREE) interface to create nodes +and properties in the \fBPICL\fR tree to publish platform configuration +information. After the plug-in modules are initialized, the daemon opens the +\fBPICL\fR daemon door to service client requests to access information in the +\fBPICL\fR tree. +.SS "PICL Tree" +The \fBPICL\fR tree is the repository of all the nodes and properties created +by the plug-in modules to represent the platform configuration. Every node in +the \fBPICL\fR tree is an instance of a well-defined \fBPICL\fR class. The name +of the base \fBPICL\fR class is \fBpicl\fR, which defines a basic set of +properties that all nodes in the tree must possess. Two of those properties are +\fBname\fR and \fB_class\fR, where \fBname\fR contains the name of the node, +and the \fB_class\fR contains the \fBPICL\fR class name of the node. Certain +nodes in the \fBPICL\fR tree have well-known names. For example, the name of +the root node of the \fBPICL\fR tree is \fB/\fR and the name of the root node +of the sub-tree containing platform device nodes is \fBplatform\fR. +.SS "PICL plug-in Modules" +The \fBPICL\fR plug-in modules are shared objects that publish +platform-specific data in the \fBPICL\fR tree. They are located in well-known +directories so that the daemon can locate and load them. +.sp +.LP +Plug-in modules are located in one of the following plug-in directories +depending on the platform-specific nature of the data that they collect and +publish: +.sp +.in +2 +.nf +/usr/platform/`uname -i`/lib/picl/plugins +/usr/platform/`uname -m`/lib/picl/plugins +.fi +.in -2 +.sp + +.sp +.LP +A plug-in module can specify its dependency on another plug-in module using the +\fB-l\fR or \fB-R\fR linker option. The plug-ins are loaded by the daemon using +\fBdlopen\fR(3C) according to the specified dependencies. Each plug-in module +must define a \fB\&.init\fR section, which is executed when the plug-in module +is loaded, to register themselves with the daemon. See +\fBpicld_plugin_register\fR(3PICLTREE) for additional information on plug-in +registration. +.sp +.LP +The plug-in modules use the \fBlibpicltree\fR(3PICLTREE) interface to publish +nodes and properties in the \fBPICL\fR tree so that clients can access them. +.sp +.LP +When the \fBPICL\fR daemon invokes the initialization routine of the plug-in +module, the plug-in collects the platform information and creates nodes and/or +properties to represent the configuration in the \fBPICL\fR tree. A plug-in can +create additional threads to monitor the platform configuration and update the +\fBPICL\fR tree with any changes. This enables a \fBPICL\fR plug-in to operate +as a daemon within the \fBPICL\fR framework. +.sp +.LP +An environmental monitor is an example of a plug-in module that uses a thread +to monitor the temperatures and fan speeds of the platform, then publishes the +environmental information in the \fBPICL\fR tree so clients can access them. +.sp +.LP +Clients use the \fBlibpicl\fR(3PICL) interface to send requests to \fBpicld\fR +for accessing the \fBPICL\fR tree. +.SH EXIT STATUS +\fBpicld\fR does not return an exit status. +.SH FILES +.ne 2 +.na +\fB\fB/var/run/picld_door\fR\fR +.ad +.RS 23n +\fBPICL\fR daemon door +.RE + +.sp +.ne 2 +.na +\fB\fB/usr/lib/picl/picld\fR\fR +.ad +.RS 23n +\fBPICL\fR daemon +.RE + +.SH SEE ALSO +.BR svcs (1), +.BR dlopen (3C), +.BR libpicl (3PICL), +.BR libpicltree (3PICLTREE), +.BR picld_log (3PICLTREE), +.BR picld_plugin_register (3PICLTREE), +.BR attributes (7), +.BR smf (7), +.BR svcadm (8) +.SH NOTES +The \fBpicld\fR service is managed by the service management facility, +\fBsmf\fR(7), under the service identifier: +.sp +.in +2 +.nf +svc:/system/picl +.fi +.in -2 +.sp + +.sp +.LP +Administrative actions on this service, such as enabling, disabling, or +requesting restart, can be performed using \fBsvcadm\fR(8). The service's +status can be queried using the \fBsvcs\fR(1) command. |
