为了能快速地将pid转为process descriptor的对应指针,linux维护了4个hash table,采用4个hash table的原因是因为对于每个进程,有4种不同意义的pid:
1.pid (进程的pid)
2.tgid ( pid of thread group leader process)
3.pgid ( pid of the group leader process)
4.sid ( sid pid of the session leader process)
hash table 所采用的hash function,代码如下:
unsigned long hash=val*0x9e370001UL;
return hash >> (32 - bits)
其中0x9e370001UL十进制为2654404609,来源于离pow(2,32)的黄金分割最近的素数,也就是离pow(2,32)*(pow(5,1/2)-1)/2最近的素数。
hash table采用的是list的方式来消除冲突,每个list项是一个process descriptor 结构。
2009/01/15 四
分享到:
相关推荐
总的来说,USB Interface Association Descriptor(IAD)是USB复合设备中一种重要的组织和管理多接口机制,它使得设备可以在单一的PID/VID下实现多个独立功能,简化了设备的识别和配置过程。对于开发者来说,理解和...
在Python编程语言中,描述器是一种被设计来控制属性访问的特殊对象。描述器协议允许开发者自定义对象属性的获取(get)、设置(set)和删除(delete)行为。在Python 3.8.5版本,由Guido van Rossum及Python开发团队所发布...
plugin-descriptor.properties
### ZigBee中的Profile与Descriptor详解 #### 一、Profile的理解与定义 **Profile**,在ZigBee协议中,被定义为一系列设备描述的集合,这些设备描述共同构成了一个协同工作的应用。简单来说,Profile是针对特定...
Report Descriptor分析
HID Descriptor Tool 是一个专门用于生成和编辑HID设备描述符的实用工具。通过这个工具,开发者可以轻松地创建和调整HID设备的配置,确保它们能够正确地被操作系统识别和驱动。USB描述符包括设备描述符、配置描述符...
解决IDEA安装Lombok插件失败的解决方案 本文将详细介绍IDEA安装Lombok插件失败的解决方案,解决了无法通过插件仓库下载安装Lombok插件的问题。 一、Lombok简介 Lombok是一个Java语言的实用工具,可以帮助开发人员...
Android Linux 开发 USB 错误-Device Descriptor Read/64, Error -62 解决方法总结 Android Linux 开发中,USB 设备的 descriptor 读取错误是一个常见的问题,特别是在使用 S3C6410 开发板时。这种错误通常表现为 ...
mysql默认是线程不安全的...[MDEV-9749] InnoDB receives 'Bad file descriptor' error, possibly related to feedback plugin Lost connection to MySQL server at 'handshake- reading initial communication packet'
Descriptor是什么?简而言之,Descriptor是用来定制访问类或实例的成员的一种协议。额。。好吧,一句话是说不清楚的。下面先介绍一下Python中成员变量的定义和使用。 我们知道,在Python中定义类成员和C/C++相比得到...
This tool allows you to create, edit and validate HID Report Descriptors. The tool also supports a variety of output formats (.txt, .inc, .h, etc.). DT uses ASCII based Usage Tables and supports ...
This paper aims to reduce these quantization errors at source, by learning a projection from descriptor space to a new Euclidean space in which standard clustering techniques are more likely to ...
标题中的“USB报告描述符自动生成工具 HID Descriptor tool”是一个专为USB设备设计的辅助开发工具,主要用于生成符合HID(Human Interface Device)规范的设备描述符。HID是USB设备类规范的一部分,广泛应用于键盘...
《Robust 3D Tracking with Descriptor Fields》是发表于计算机视觉领域的一篇论文,由Alberto Crivellaro和Vincent Lepetit撰写了这篇文章,二人分别隶属于洛桑联邦理工学院计算机视觉实验室和格拉茨工业大学计算机...
### 三维物体检索的新方法:基于全景视图的三维形状描述符 #### 摘要与背景 在《国际计算机视觉杂志》(IntJComputVis)2010年的一篇论文中,作者们提出了一种新颖的三维形状描述方法——**全景法**(PANORAMA)。...
web.xml Deployment Descriptor Elements 以及相关5个文档 Filters.pdf Application Events and List.pdf Configuring Web Application.pdf Configuring Security in Web.pdf Managing Security.pdf
`HID Descriptor Tool`是一个专门用于生成和测试HID报告描述符的工具,对于开发者来说,它是调试和理解HID设备功能的关键。 ### HID报告描述符 HID报告描述符是一个二进制数据结构,它定义了HID设备如何与主机交换...
标题中的“HID_descriptor_tool.rar”是一个压缩包文件,它包含了一个名为“HID_descriptor_tool”的工具,这个工具专门用于生成HID(Human Interface Device)报告描述符。HID是USB(Universal Serial Bus)规范的...
USB报告描述符生成工具,如"HID Descriptor Toolv2.4.zip",是开发者和硬件工程师在设计USB设备,特别是人机交互设备(HID,Human Interface Device)时的重要工具。这个工具允许用户创建、编辑和分析USB HID设备的...