命名服务

来源:互联网 发布:股票个股分析软件 编辑:程序博客网 时间:2024/06/04 19:38

命名服务

 

 

 

8.1  名字

OS负责实现各个对象(如进程、

信箱、结点、I/O设备、文件、地址)之间的消息传递,这就要求访问的系统对象都有一个名字。

 

一个名字(标识符),就是标识一

个对象的一串符号(位或者字符)。

名字和对象之间对应是一个引用关

系,通过名字对对象进行

引用和标识。

对于计算机本身,用数字标识符

(二进制数最适合表示)。

但用户不能高效地使用二进制表

示,用户往往使用OS支持且

易读的正文串识别对象。

因此,计算机有两类名字:用户名

和系统名。

 

仅仅给出名字是不够的,还必须知

道当前的位置。

名字、地址、路由。

名字:规定了一个寻找的对象

(即欲访问的对象);

地址:定义了对象的位置;

路由:定义了到达对象的路径;是

代表从源点到目的点路径的

一列名字。

 

将名字变换为地址,将地址变换

为路由。

如果名字可以变换为相关路由,就

可以高效地进行通讯。这个

路由变换函数称为路由选择,并由

路由算法实现。

 

命名机制的作用:

1  实现对资源的共享,重定向等等;

2             从分布式OS和应用的角度,对

资源进行访问。

 

现有的一些计算机系统,对不同

类型的对象使用独立的命名原则

如文件名与其它对象名之间差别

较大,分布式系统应使用统一的

命名原则可以识别各个可用的对

象。

 

命名机制的目标:

1             命名机制应可以识别全局范围

的对象;

2  应至少支持两类不同的标识符;

方便用户使用的用户级;便于机器

存储表示的系统级;

以上两级的机制应各自独立,且可以高效地进行转换。

3  在整个系统范围内的唯一标识符;

4    在发送具体的消息前,初始化和转

换标识符时交换消息的数量小;

5    命名机制应可以对对象进行重定

位;

负载平衡要求对象应该是可移动的。

6    名字和地址之间的变换不一定是

一一对应的,还可以是一对多;

7    命名机制应支持对同一对象多

副本的使用;

8    命名机制应允许用户对同一对象

定义多个局部的标识符;

9    命名机制应允许多个不同的对象

共用同一个标识符(进程组);

10          分布式系统中使用的独立命名机

制的数目必须是最小的;

 

DEC系统研究中心开发的全球

名字服务(Global Name Service,

Lampson, 1986)目标:

1             处理任意数量的名字,并为任意

数量的管理组织服务

2  长生命期

3  高可靠性

4  故障隔离

5  容忍怀疑

 

8.2  一般的命名方式

在计算机系统中,每个对象一般

有两个名字,一个是由用户识别

的文本名(符号),另一个是由

系统使用的内部名。

由于系统可以有多个用户,目录

常常组织成层次结构。

大多数系统允许用户设置一个默

认目录或当前目录。

 

8.3  分布式系统中的命名方式

名字管理部分的主要功能:

 

分布式系统中常用的命名方案

有:

1  绝对命名

全系统范围唯一的、无二义性的,

通常是由时钟或计数器之值产

生的位串。

2  相对命名

依赖于使用它的上下文,对于不

同的使用者,一个对象的名字可

以是不同的。

3  层次命名

系统被划分成若干组,每组给定全

局唯一的组名,每组中的每个

对象在组内给定唯一的名字,一

个组中对象名还可按此方式进一

步划分成若干组。

 

8.4  名字服务器的设计

(name server)

功能:将一个符号串映射成系统内

唯一的物理地址。名字服务器管

理着包含有“名字及其物理地址”

的对照表。

系统中的所有服务程序都由名字

服务器来寻址和定位。

 

中央方式:全系统仅有一个名字服务器;

复制方式:每个场点都有一个名字服

务器的副本,用以管理该场点

上的所有服务程序及本场点与其它

场点间相互请求的服务信息;

分划方式:系统由若干个子系统组成。

 

8.5  分布式系统的透明性

命名方案与透明性问题极为相关,系

统的透明性隐含了下面的事实:

1  资源的位置不应嵌入其名字中;

2             名字应该是全局唯一的,相同的

名字应该有相同的效果。


 

透明性与下面几点要求相冲突

1  局部自治区

由于强调透明性而牺牲了(部分)

自治性;

2  优化

希望知道资源位置的显示信息,并对

它进行控制,这可能出于

优化系统性能的要求;

3  异构

    完全透明性是很难实现的。

 

命名方案与系统的透明性密切相关,

命名服务器可根据给定的

名字来进行资源或对象的地址定

位,并获取有关的属性信息。

0 0
原创粉丝点击