首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Linux内核如何决定将多少带宽分配给等时USB端点?

Linux内核如何决定将多少带宽分配给等时USB端点?
EN

Unix & Linux用户
提问于 2012-01-11 02:39:30
回答 1查看 3.8K关注 0票数 5

据我所知,使用等时传输的USB端点有一个“wMaxPacketSize”参数,内核使用该参数来保证端点的一定带宽。

如果我没有弄错,这个最大数据包大小可以在0到1024字节之间(用于高速传输)。如何将此参数转换为Linux系统中高速(EHCI)控制器的Mbps带宽分配?

USB带宽分配所依赖的其他因素,如果有的话?

谢谢!

EN

回答 1

Unix & Linux用户

发布于 2012-01-13 01:14:48

经过一番研究,我现在可以回答我自己的问题了。高速设备的最大等时分组大小为1024字节。每个微帧最多可以有三个包,一个微帧有125微秒宽,这意味着每毫秒可以传输8个微帧。

这使我们的最大带宽分配为3*1024*8*1000 = 23.438 MB/s (编辑:用于表示mbps)。

wMaxPacketSize参数是一个两个字节值,其中包含存储每个数据包的最大大小和每个微帧的数据包数的位映射。

因此,带宽分配如下:

(包/微帧)* (max_packet_size) * (8微帧/毫秒)*(1000毫秒/S)

还需要注意的是,根据USB2.0规范,只有80%的带宽可以分配给周期性传输,比如等时传输和中断传输。

票数 4
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/28817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档