您的位置:首页 > 其它

Mac OS X中,有三种方式来实现启动项的配置

2017-04-13 23:49 453 查看
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文件:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: