x 客户端的最大数量是多少?

x 客户端的最大数量是多少?

我正在开发一个 x-server 实现,我想让它尽可能与当前的类似。我通读了文档,但我找不到任何具体内容。特别是,我正在尝试寻找 Windows 的编号方案。在我看来,这是特定于实现的。

不管怎样,我发现关于窗口 ID:

XID 的最高有效 11 位表示客户端,为每个客户端留下 21 位,为每个客户端提供 2^21 (= 2,097,152) 个 XID。

我在其他地方读到最大 x-clients 是 255:这里这里

有没有关于如何对窗口进行编号的明确文档?

答案1

Cygwin/X 查询 getdtablesize() 以获取允许的最大客户端连接数;默认情况下,Cygwin 从 getdtablesize() 返回 32。 Cygwin/X 服务器测试系列版本 Test44 于 2001 年 8 月 15 日发布,通过将 getdtablesize() 的平方传递给 setdtablesize(),将最大客户端数量从 32 更改为 1024。

  • Mac OS XX 源代码有一个硬定义包括/xorg/misc.h:

    #define MAXCLIENTS 256

  • 一些旧的 UnixRHEL > 4 可以在运行时设置它:

    -maxclients 64|128|256|512 设置允许连接到 X 服务器的最大客户端数量。可接受的值为 64、128、256 或 512。

  • X.org 服务器源代码,Virtual Box X 源代码还有其他一些人分享它。

当然,由于它是免费软件,Debian 和 Red Hat 可以更改它并已提出至 512。

所以我想你可以把暗示那它应该在所有现代计算机上都在 256 到 512 之间。据我所知,知道这一点的唯一方法是当您收到“无法连接到 X”错误时。

顺便说一句,xclient 的编号有 11 位。编号和最大客户端数是不同的问题。您可以使用 来查看每个窗口的编号xlsclient -l

相关内容