[unix] 많은 Gnome 3.28 데몬이 100GB 이상의 VIRT를 사용하고 있습니다. 왜?

최근에이 랩톱을 Fedora 28 Beta 및 Gnome 3.28로 업데이트했습니다. 상황이 대부분 좋습니다.

그러나 어떤 것은 이상합니다. 이것은 모든 가상 메모리이기 때문에 문제를 일으키지 않습니다.

그러나 왜이 데몬이 100GB 이상의 가상 메모리를 할당합니까?

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



답변

이 데몬은 모두 WebKit (주로 oauth2 로그인 프롬프트를 표시하기 위해)을 사용하며 WebKit은 최근 JS 구현에서 사용되는 힙을 분리하기 위해 기가 케이지를 도입했습니다. 기가 케이지의 할당은 임의의 부호없는 32 비트 오프셋에 대한 액세스가 여전히 기가 케이지에 도달 할 정도로 충분히 크므로 이러한 큰 할당이 발생합니다. gigacages에 대한 자세한 내용은이 블로그 게시물을 참조하십시오 : https://labs.mwrinfosecurity.com/blog/some-brief-notes-on-webkit-heap-hardening/


답변