p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; text-align: center; font: 22.0px "Times New Roman"; color: #000000 }
p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px "Times New Roman"; color: #000000 }
p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px SimSun; color: #000000 }
p.p4 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Times New Roman"; color: #000000 }
p.p5 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Times New Roman"; color: #000000; min-height: 15.0px }
p.p6 { margin: 0.0px 0.0px 0.0px 0.0px; font: 10.5px "Times New Roman"; color: #000000; min-height: 11.0px }
p.p7 { margin: 0.0px 0.0px 0.0px 0.0px; font: 10.5px SimSun; color: #000000 }
p.p8 { margin: 0.0px 0.0px 0.0px 0.0px; font: 10.5px "Times New Roman"; color: #000000 }
li.li4 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Times New Roman"; color: #000000 }
li.li8 { margin: 0.0px 0.0px 0.0px 0.0px; font: 10.5px "Times New Roman"; color: #000000 }
span.s1 { }
span.s2 { font: 22.0px SimSun }
span.s3 { font: 14.0px SimSun }
span.s4 { font: 12.0px "Times New Roman" }
span.s5 { font: 12.0px SimSun }
span.s6 { font: 12.0px Helvetica; color: #000000 }
span.s7 { font: 10.5px "Times New Roman" }
span.s8 { font: 10.5px SimSun }
ol.ol1 { list-style-type: decimal }
Mac OS x 启动项设置
Mac OS X的启动原理:
1,mac固件激活,初始化硬件,加载BootX引导器。
2,BootX加载内核与内核扩展(kext)。
3,内核启动launchd进程。
4,launchd根据 /System/Library/LaunchAgents ,/System/Library/LaunchDaemons , /Library/LaunchDaemons,/Library/LaunchAgents , ~/Library/LaunchAgents里的plist配置,启动服务守护进程。
在Mac OS X中,有三种方式来实现启动项的配置:
- Login Items;2)StartupItems;3)launchd daemon
1.Login Items
打开System Preferences,选择System -> Accounts,选择Login Items选项卡,将/Applications目录下的.app直接拖进右边的列表中。重启电脑之后就会发现列表中的程序在开机之后就自动启动了。
2.StartupItems
定义:StartupItems:就是在系统启动过程中运行的程序,它们可以是运行完就立即终止的程序(比如,开机清空废纸篓),也可以是一直持续在系统运行周期的后台进程。
路径:
1)/System/Library/StartupItems
2)/Library/StartupItems
大部分与系统相关的StartupItems都放在/System/Library/StartupItems这个路径下,它们会先于/Library/StartupItems路径下的执行,因为前者路径下的StartupItems提供了系统级的基础服务,比如crash reporting,core graphics services,system accounting等,而后者路径在默认情况下是不存在的,需要自己手动创建。
例如:这里我们以/Library/StartupItems目录下的IcebergControlTower为例。
简单来说,在Mac OS X上,一个StartupItems包含以下两个方面的内容:
1)可执行程序;
- 包含依赖进程关系的plist文件(StartupParameters.plist)。
例如:
StartupParameters.plist 是一个属性列表,包含了运行可执行程序的必要条件。
创建一个StartupParameters.plist文件
The Executable File创建:
注意:1)可执行文件的名称和它所在的文件夹的文件名是一样的,这是系统默认的规则。
2)操作可执行文件需要获得root权限。
3)可执行文件是一个shell脚本。
打开IcebergControlTower文件目录下同名的可执行文件,可以看到脚本的具体内容:
3. Launchd Daemon
launchd是Mac OS下用于初始化系统环境的关键进程,它是内核装载成功之后在OS环境下启动的第一个进程。
配置文件路径:创建plist放在~/Library/LaunchAgents路径下
例如: plist文件格式及每个字段的含义:
创建一个plist文件: