我最近更新了这台笔记本电脑的Fedora 28 Beta和它的Gnome 3.28。大多数情况都很好。
但有些事很奇怪。这不会造成问题,因为这都是虚拟内存。
但是为什么这些守护进程要分配100+ GB的虚拟内存呢?
0 1000 2012 1719 20 0 101649024 32904 SyS_po Sl ? 0:00 /usr/libexec/goa-daemon
0 1000 1983 1719 20 0 101704260 46416 SyS_po Sl ? 0:00 /usr/libexec/gnome-shell-calendar-server
0 1000 2210 1765 20 0 101736292 33656 SyS_po Sl+ tty2 0:00 /usr/libexec/deja-dup/deja-dup-monitor
0 1000 2452 1719 20 0 101927808 45988 SyS_po Ssl ? 0:00 /usr/libexec/evolution-addressbook-factory
0 1000 2240 1765 20 0 102007840 57328 SyS_po Sl+ tty2 0:00 /usr/libexec/evolution/evolution-alarm-notify
0 1000 2415 2288 20 0 102356528 47216 SyS_po Sl ? 0:00 /usr/libexec/evolution-calendar-factory-subprocess --factory all --bus-name org.gnome.evolution.dataserver.Subprocess.Backend.Calendarx2288x2 --own-path /org/gnome/evolution/dataserver/Subprocess/Backend/Calendar/2288/2
0 1000 2021 1719 20 0 102405692 46532 SyS_po Ssl ? 0:00 /usr/libexec/evolution-source-registry
0 1000 2288 1719 20 0 118711416 46164 SyS_po Ssl ? 0:00 /usr/libexec/evolution-calendar-factory
0 1000 2518 2452 20 0 119163652 49648 SyS_po Sl ? 0:00 /usr/libexec/evolution-addressbook-factory-subprocess --factory all --bus-name org.gnome.evolution.dataserver.Subprocess.Backend.AddressBookx2452x2 --own-path /org/gnome/evolution/dataserver/Subprocess/Backend/AddressBook/2452/2发布于 2018-04-18 18:15:47
所有这些守护进程都使用WebKit (主要是显示oauth2登录提示),WebKit最近引入了gigacage来隔离JS实现使用的堆。对于一个千兆字节的分配是足够大的,任何对任意无符号32位偏移量的访问都将落在千兆字节中,从而导致这些巨大的分配。有关gigacages的更多详细信息,请参阅此博客文章:https://labs.mwrinfosecurity.com/blog/some-brief-notes-on-webkit-heap-hardening/
https://unix.stackexchange.com/questions/438354
复制相似问题