4 ms·
> The operating system is delivered in images that are created by utilizing the rpm-ostree project. The main benefits of the system are speed, security, atomic
by besulzbach 7y ago
> The operating system is delivered in images that are created by utilizing the rpm-ostree project. The main benefits of the system are speed, security, atomic updates and immutability.
The article never mentions speed (or performance) again. Is the OS somehow expected to be faster because it is mounted read-only?
- viraptor 7y agoNo, I wouldn't expect this system to be faster in a meaningful way. Actually maybe a bit slower since fewer libraries will be cached / memory mapped between applications if they carry their own copies.
- lugg 7y agoI'd love to see stats on how many libraries are really shared, I'd imagine it might be less than you hope (other than the big graphical ones)
- bnegreve 7y agoOn my laptop: How many libraries are loaded: $ sudo cat /proc/[0-9]*/maps | grep '\.so' | grep 'r-xp' | tr -s ' ' | cut -d ' ' -f 6 | wc -l 15429 How many unique library names: $ sudo cat /proc/[0-9]*/maps | grep '\.so' | grep 'r-xp' | tr -s ' ' | cut -d ' ' -f 6 | sort | uniq | wc -l 872 Top 10 most shared libraries: sudo cat /proc/[0-9]*/maps | grep '\.so' | grep 'r-xp' | tr -s ' ' | cut -d ' ' -f 6 | awk '{count[$0]++}END{for (i in count) print i, count[i]}' | sort -k 2 -n -r | head -n 10 /lib/x86_64-linux-gnu/libc-2.28.so 299 /lib/x86_64-linux-gnu/ld-2.28.so 299 /lib/x86_64-linux-gnu/libdl-2.28.so 262 /lib/x86_64-linux-gnu/libpthread-2.28.so 237 /lib/x86_64-linux-gnu/librt-2.28.so 227 /lib/x86_64-linux-gnu/libuuid.so.1.3.0 205 /lib/x86_64-linux-gnu/libz.so.1.2.11 200 /lib/x86_64-linux-gnu/libpcre.so.3.13.3 186 /lib/x86_64-linux-gnu/libresolv-2.28.so 170 /lib/x86_64-linux-gnu/libgpg-error.so.0.26.1 169 EDIT: add grep r-xp to count code segment only, values in previous edit were overestimated.
- the_pwner224 7y agoWhen you're running a GUI those libraries also get shared. For example Qt might not be used by as many processes as libc, but it saves hundreds of megabytes of memory having that shared across my email/calendar/terminals/torrent client/windowManager/guiShell/pdfReader/webBrowser. The GP did mention the 'big graphical ones,' but the amount of memory that gets saved was a bit stunning the first time I saw it.
- viraptor 7y agoThat's a good idea to measure the sharing! Fortunately even if every app gets containerised, not all of those libraries will be duplicated. Specifically each app which forks on its own will still preserve sharing. For example 11 firefox processes I'm running now would share the libraries, whether it's running directly or from docker.
- bnegreve 7y agoOn linux, none of these libraries are duplicated, they are loaded once, and shared across all processes that need them.
- barrkel 7y agoEven when the processes are loading the libraries from different paths, in different filesystems, in different containers? How does it page in data on demand if the first container that loaded the library is killed and its filesystem unloaded? It's not easy to share libraries across containers, unless they can be built to share a base layer in a stacked union filesystem approach.
- wmf 7y agoDo they mean speed of installing updates (compared to an RPM-based OS)?