为什么 VSZ 对于 Gnome goa-daemon 来说如此巨大?

为什么 VSZ 对于 Gnome goa-daemon 来说如此巨大?

尝试跟踪我的 Ubuntu Bionic Beaver 系统的内存使用情况。为什么psGnome 的 VSZ 报告如此之大goa-daemon

$ ps -eo pid,vsz,sz,rss,comm --sort -vsz| head
  PID    VSZ    SZ   RSS COMMAND
27128 101434964 25358741 3680 goa-daemon
13024 3535356 883839 418848 firefox
 1869 3355792 838948 1204 gnome-shell
13707 2819028 704757 406028 Web Content
13384 2603416 650854 425768 Web Content

读过手册页,我甚至没有~/.config/goa-1.0/accounts.conf。所以我可能不会使用它。

为什么报告 VSZ 为 100Gb?

答案1

我在 Linux Mint 机器上也观察到了同样的情况:分配给goa-daemon实例的 96G VIRT。搜索最终显示这个答案在UnixSE上:

所有这些守护进程都使用 WebKit(主要用于显示 oauth2 登录提示),WebKit 最近引入了 gigacages 来隔离其 JS 实现使用的堆。gigacage 的分配足够大,以至于对任意无符号 32 位偏移的任何访问仍会落在 gigacage 中,从而导致这些巨大的分配。有关 gigacages 的更多详细信息,请参阅此博客文章:https://labs.mwrinfosecurity.com/blog/some-brief-notes-on-webkit-heap-hardening/

相关内容