跳过导航链接 | |
退出打印视图 | |
Oracle Solaris 管理:Oracle Solaris Zones、Oracle Solaris 10 Zones 和资源管理 Oracle Solaris 11 Information Library (简体中文) |
19. 安装、引导、关闭、停止、卸载和克隆非全局区域(任务)
23. 迁移 Oracle Solaris 系统和迁移非全局区域(任务)
24. 关于安装了区域的 Oracle Solaris 11 系统上的自动安装和软件包
25. Oracle Solaris Zones 管理(概述)
26. 管理 Oracle Solaris Zones(任务)
28. 各种 Oracle Solaris Zones 问题的故障排除
29. Oracle Solaris 10 Zones 介绍
30. 评估 Oracle Solaris 10 系统和创建归档文件
31. (可选)将 Oracle Solaris 10 native 非全局区域迁移到 Oracle Solaris 10 Zones
假设您的系统具有两个 CPU,并且运行两个并行的计算密集型 (CPU-bound) 工作负荷,分别称为 A 和 B。每个工作负荷都正在作为单独的项目运行。已对这些项目进行了配置,从而为项目 A 指定了 SA 个份额,为项目 B 指定了 S B 个份额。
在传统的 TS 调度程序下,会为系统上正在运行的各个工作负荷平均地提供相同的 CPU 资源量。每个工作负荷将使用 50% 的系统容量。
如果在 FSS 调度程序的控制之下运行,并且 S A=SB ,也会为这些项目提供大致等量的 CPU 资源。但是,如果为项目提供了不同的份额数,则它们的 CPU 资源分配量也就不同。
以下三个示例说明了份额在不同的配置中如何起作用。这些示例显示在可用资源能够满足或无法满足需求的情况下,从使用情况的角度来说,份额仅在算术意义上是精确的。
如果 A 和 B 各具有两个计算密集型 (CPU-bound) 进程,并且 S A = 1,S B = 3,那么份额总数为 1 + 3 = 4。在该配置中,如果 CPU 请求充足,则分别向项目 A 和 B 分配 25% 和 75% 的 CPU 资源。
如果 A 和 B 各自仅有一个计算密集型 (CPU-bound) 进程,并且 S A = 1,S B = 100,那么份额的总数为 101。因为每个项目只有一个运行的进程,所以每个项目都不能使用一个以上的 CPU。由于在此配置中项目之间没有争用 CPU 资源,因此,为项目 A 和 B 各分配了全部 CPU 资源的 50%。在此配置中,CPU 份额值无关紧要。即使为两个项目都指定了零份额,项目的资源分配量也相同 (50/50)。
如果 A 和 B 各有两个计算密集型 (CPU-bound) 进程,并且为项目 A 提供 1 个份额,为项目 B 提供 0 个份额,则不会为项目 B 分配任何 CPU 资源,而为项目 A 分配所有 CPU 资源。B 中的进程始终以系统优先级 0 运行,因此它们永远不能运行,这是因为项目 A 中的进程始终具有较高的优先级。