关于全局唯一标识符

用几个世纪以来独一无二的标签命名你的接口

摘要

本文介绍全局唯一标识符(GUID:Globally Unique IDentifier ),并说明如何从您喜欢的工作站创建一个。它包括以下部分:

关于全局唯一标识符

如何获取全局唯一标识符

关于全局唯一标识符

全局唯一标识符 (GUID) 旨在在使用该接口的任何地点和任何时间唯一标识该接口。它以128位编码,并且在空间和时间上都是唯一的:

48位通过捕获运行创建GUID的命令的计算机上的网卡地址来确保这种在空间上的唯一性。此地址是唯一的,这保证了在给定计算机上生成的任何GUID与在另一台计算机上生成的任何其他GUID不同。

60位的时间戳可确保随时间推移的唯一性,这表示自1582年10月15日00:00:00.00以来的100纳秒间隔的计数。这为产生GUIDs留下了空间,直到大约公元3400年。

首先由开放软件基金会 (OSF:Open Software Foundation ) 为分布式计算环境 (DCE:Distributed Computing Environment ) 的远程过程调用 (RPC:Remote Procedure Calls ) 创建为通用唯一标识符的UUID 。这就是为什么您有时可以找到使用UUID而不是GUID的原因,例如在命令或实用程序中生成它们。

如何获取全局唯一标识符

您可以获取接口的GUID,如下所示:

在UNIX中,使用uuid_gen -C命令返回一个GUID,如下所示:

= { 0x7c7b3737,

0x5358,

0x0000,

0x02,

{0x80, 0x02, 0x0b, 0x3e, 0x00, 0x00, 0x00} };

要运行此命令,请输入:

/etc/ncs/uuid_gen -C with AIX

/usr/sbin/ncs/uuid_gen -C with HP-UX

Sun今天不提供任何生成GUID的方法

然后,当将其包含到接口IDL文件中时,您需要进行一些编辑以按如下方式对其进行转换:7c7b3737-5358-0000-0280020b3e000000

要将其包含到C++文件中,请按照以下方式对其进行转换:

= { 0x7c7b3737,

0x5358,

0x0000,

{0x02, 0x80, 0x02, 0x0b, 0x3e, 0x00, 0x00, 0x00} };

在Windows中,命令uuidgen -s返回全局唯一标识符,如下所示:

INTERFACENAME = { /* 7c7b3737-5358-0000-0280-020b3e000000 */

0x7c7b3737,

0x5358,

0x0000,

{0x02, 0x80, 0x02, 0x0b, 0x3e, 0x00, 0x00, 0x00}

};

对于IDL接口,复制第一行的注释值,粘贴它,然后删除最后一个连字符以获取7c7b3737-5358-0000-0280020b3e000000.

您也可以运行仅返回7c7b3737-5358-0000-0280-020b3e000000.的UUIDGEN.EXE。不要忘记删除最后一个连字符。

要将其包含到C++ 头文件中,可以按原样获取十六进制值。

= { 0x7c7b3737,

0x5358,

0x0000,

{0x02, 0x80, 0x02, 0x0b, 0x3e, 0x00, 0x00, 0x00}

};

注意: uuidgen通常位于C:Program FilesMicrosoft Visual StudioCommonTools

命名规则标识符 unix_关于全局唯一标识符相关推荐

  1. uuid:128位的全局唯一标识符(univeral unique identifier)

    转:https://www.cnblogs.com/franknihao/p/7307224.html uuid是128位的全局唯一标识符(univeral unique identifier),通常 ...

  2. 自定义 GUID(全局唯一标识符)

    文章目录 GUID JS 实现 自定义 GUID GUID 全局唯一标识符(GUID)是一种通过算法生成的标识符,典型的,是通过生成二进制长度为 128 位的数字标识符来作为 GUID, 这样的 GU ...

  3. UUID是128位的全局唯一标识符

    UUID是128位的全局唯一标识符,通常由32字节的字符串表示. 它通过MAC地址.时间戳.命名空间.随机数.伪随机数来保证生成ID的唯一性.UUID主要有五个算法,也就是五种方法来实现:1.uuid ...

  4. java开发_UUID(Universally Unique Identifier,全局唯一标识符)和GUID(Globally Unique Identifier,全球唯一标识符)...

    GUID: 即Globally Unique Identifier(全球唯一标识符) 也称作 UUID(Universally Unique IDentifier) . 所以GUID就是UUID. G ...

  5. “简单证明GUID(全局唯一标识符)并不唯一”

    GUID是什么,大家理所当然地应该都知道(百度百科介绍的GUID).在.net framework中,微软为开发者提供了一个GUID结构,这个结构想必很多人在开发中应该已经用过,下面我们再来看一下它的 ...

  6. UUID全局唯一标识符

    UUID 是通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分. UUID 的目的是让分布式系 ...

  7. Javascript生成全局唯一标识符(GUID,UUID)的方法

    方法一 function guid() {return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {var ...

  8. 第一讲javascript入门(js的组成、事件类型、嵌入方式、注释方式、输出方式、变量类型 、变量命名规则、字符串转义符、算术运算符、数据类型转换、null和undefined的区别)

    目录 理论: JavaScript是什么 js的组成 二.JavaScript引入方式 1.嵌入式 2.外部引入 事件定义 三.JavaScript注释方式 1.单行注释 2.多行注释 四.JavaS ...

  9. C++阶段01笔记01【C++初识(第一个C++程序、注释、变量、常量、关键字、标识符命名规则)】

    C++| 匠心之作 从0到1入门学编程[视频+课件+笔记+源码] 目录 C++课程安排 1 C++初识 1.1 第一个C++程序 1.1.1 创建项目 1.1.2 创建文件 1.1.3 编写代码 1. ...

最新文章

  1. TensorRT IRNNv2Layer
  2. 【CVPR 2020】弱监督怎样做图像分类?上交大提出自组织记忆网络
  3. 22.6. 视图(View)
  4. coordinatorlayout 设置不可滑动_滑动关闭App损害iPhone电池寿命,我们需要“改掉强迫症”吗?...
  5. 第一章 介绍-机器学习老师板书-斯坦福吴恩达教授
  6. 二叉查找树的简单实现
  7. 3、MySQL优化数据库结构的3种方法
  8. android 加载条封装,Android基于JsBridge封装的高效带加载进度的WebView
  9. 分布式6大核心专题_分布式Session
  10. microsoft visual c++全家桶_Adobe 2020 MAC全家桶最新版不闪退
  11. centeros7安装mysql
  12. 【ElasticSearch】Es 源码之 MetaStateService 源码解读
  13. 开运算和闭运算的性质
  14. github客户端使用简易教程
  15. Python爬虫开源项目代码分享,100个
  16. 我读股票大作手回忆录摘录篇
  17. 显卡是什么?显卡和Graphics的区别在哪里?
  18. Java教程:Java分割字符串(spilt())
  19. 云旗OS助手火了!可一站式体验统信UOS
  20. Web前端之仿携程首页布局

热门文章

  1. 安卓Android科大讯飞语音识别代码使用详解
  2. linux route命令深入浅出与实战案例精讲
  3. Apache/Nginx Cache Last-Modified、Expires和Etag相关工作原理
  4. Exercise Physiology (运动生理学)
  5. 404错误处理以及以后缀为action结尾的处理
  6. zend studio 远程调试 php
  7. Openfire3.9.3源代码导入eclipse中开发配置指南
  8. QT中文显示乱码解决
  9. Observer 模式在eHR中的应用
  10. 90.386(32位)的保护模式 (286是过渡24位) 91.什么是实模式