UUID是通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分。UUID是基于当前时间、计数器(counter)和硬件标识(通常为无线网卡的MAC地址)等数据计算生成的。
#include <stdio.h> #include <unistd.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <uuid/uuid.h> int main(void) { char data[37] = { 0 }; int fd = open("/proc/sys/kernel/random/uuid", O_RDONLY); if (fd > 0) { read(fd, data, 36); data[36] = '\0'; close(fd); } printf("FILE UUID:\t%s\n", data); uuid_t uuid; uuid_generate(uuid); uuid_unparse(uuid, data); printf("LIB UUID:\t%s\n", data); return 0; }