Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

startupitemcontext(8) [opendarwin man page]

StartupItemContext(8)					    BSD System Manager's Manual 				     StartupItemContext(8)

NAME
StartupItemContext -- Execute a program in StartupItem context SYNOPSIS
StartupItemContext [program [arguments]] DESCRIPTION
The StartupItemContext utility launches the specified program in StartupItem bootstrap context. Each Darwin and Mac OS X login creates a unique bootstrap subset context to contain login specific Mach port registrations with the bootstrap server. All such registrations per- formed within the context of that subset are only visible to other processes within that context or subsequent subsets of it. Therefore, a Mach port based service/daemon launched within a login context will not be visible to other such contexts. To override this, a root user can use the StartupItemContext utility to launch the program within the same bootstrap context as all other StartupItems. All subsequent Mach port bootstrap registrations perfomed by the program will be visible system-wide. NOTES
All bootstrap port lookups will also be resticted to the StartupItem context. The services provided on a per-login basis (clipboard, etc...) will not be available to the program. SEE ALSO
SystemStarter(8) mach_init(8) "Bootstrap Contexts Unleashed" http://developer.apple.com/techpubs/macosx/Darwin/General/KernelProgramming/contexts/index.html HISTORY
The StartupItemContext Darwin July 7, 2002 Darwin

Check Out this Related Man Page

launchd(8)						    BSD System Manager's Manual 						launchd(8)

NAME
launchd -- System wide and per-user daemon/agent manager DESCRIPTION
launchd manages processes, both for the system as a whole and for individual users. The primary and preferred interface to launchd is via the launchctl(1) tool which (among other options) allows the user or administrator to load and unload jobs. Where possible, it is preferable for jobs to launch on demand based on criteria specified in their respective configu- ration files. launchd also manages XPC services that are bundled within applications and frameworks on the system. During boot launchd is invoked by the kernel to run as the first process on the system and to further bootstrap the rest of the system. You cannot invoke launchd directly. NOTES
On Darwin operating systems, the canonical way to launch a daemon is through launchd as opposed to traditional POSIX and POSIX-like mecha- nisms or mechanisms provided in earlier versions of OS X. These alternate methods should be considered deprecated and not suitable for new projects. In the launchd lexicon, a daemon is, by definition, a system-wide service of which there is one instance for all clients. An agent is a ser- vice that runs on a per-user basis. Daemons should not attempt to display UI or interact directly with a user's login session. Any and all work that involves interacting with a user should be done through agents. XPC services which are marked with a ServiceType of System are functionally equivalent to daemons and run in the same environment, sharing the same Mach bootstrap namespace. XPC services which are marked with a ServiceType of User are equivalent to agents with the LimitLoadToSes- sionType key specifying the Background session and run in the same environment, sharing the same Mach bootstrap namespace. See launchd.plist(5) for more information about user sessions. On Darwin platforms, a user environment includes a specific Mach bootstrap subset, audit session and other characteristics not recognized by POSIX. Therefore, making the appropriate setuid(2) and setgid(2) system calls is not sufficient to completely assume the identity for a given user. Running a service as a launchd agent or a per-user XPC service is the only way to run a process with a complete identity of that user. FILES
~/Library/LaunchAgents Per-user agents provided by the user. /Library/LaunchAgents Per-user agents provided by the administrator. /Library/LaunchDaemons System-wide daemons provided by the administrator. /System/Library/LaunchAgents Per-user agents provided by Apple. /System/Library/LaunchDaemons System-wide daemons provided by Apple. SEE ALSO
launchctl(1), launchd.plist(5), DEVELOPER DOCUMENTATION
The Daemons and Services Programming Guide can be found at the following URL: https://developer.apple.com/library/content/documentation/MacOSX/Conceptual/BPSystemStartup/Chapters/Introduction.html Darwin 25 November, 2013 Darwin
Man Page