缺省情况下,非全局区域与全局区域中的操作系统具有相同特征,它运行 Solaris 10 操作系统或更高的 Solaris 10 发行版。这些本地的非全局区域和全局区域在标准、运行时行为、命令集和性能特性等方面完全一致。
此外,也可以在非全局区域内运行不同的操作环境。标记区域 (branded zone, BrandZ) 框架对 Solaris Zones 基础结构进行了扩展,从而包括标记的创建或运行时行为的替换集。标记可以指各种操作环境。例如,非全局区域可以模仿其他版本的 Solaris 操作系统或 Linux 等操作环境。或者,它可以通过其他特性或功能来增强本机标记行为。每个区域都配有一个关联标记。
标记定义了可在区域中安装的操作环境并确定系统在该区域内的行为方式,从而确保该区域中安装的非本机软件可以正常运行。此外,区域的标记可用于在应用程序启动时识别正确的应用程序类型。所有标记区域管理都通过扩展本机区域结构来执行。所有区域的大多数管理步骤都相同。
可以在已配置状态下更改区域标记。一旦安装了标记区域,就不能更改或删除标记。
BrandZ 通过以下方式来扩展区域工具:
配置区域时,使用 zonecfg 命令设置区域的标记类型。
使用 zoneadm 命令报告区域的标记类型并管理区域。
虽然可以在启用标签的 Solaris Trusted Extensions 系统上配置和安装标记区域,但不能在此系统配置中引导标记区域。
权限。
设备支持。标记可以选择禁止添加任何不受支持或无法识别的设备。可以向 solaris8 非全局区域中添加设备。请参见关于 Solaris 8 标记区域。
标记区域所需的文件系统由相应标记定义。通过使用 zonecfg 的 fs 资源属性,可以向标记区域中添加其他 Solaris 文件系统。
标记区域在内核中提供一组插入点,这些插入点只适用于在某一标记区域中执行的进程。
这些点位于 syscall 路径、进程装入路径和线程创建路径之类的路径中。
在其中每个点处,标记可以选择补充或替换标准 Solaris 行为。
标记还能为 librtld_db 提供插件库。通过插件库,Solaris 工具(如 mdb(1) 中介绍的调试器和 dtrace(1M) 中介绍的 DTrace)可以访问在标记区域内运行的进程的符号信息。