Language Selection

English French German Italian Portuguese Spanish

Resource management in KDE

Filed under
Development
KDE

Edmundson started by explaining that the job of a desktop environment is deliver applications to the user. Users "need to be in control", he said. That role has become more complicated in recent years. Some time ago, when a user was running a web browser like Firefox or a chat application like Kopete, the management of running processes was easy. The user could run a ps command and would see just one line of output for each of those applications. This was easy to understand and self-explanatory.

Now, the situation is "very different". When a user opens a Firefox instance they can get a dozen processes; Discord in a Flatpak ("because it is cool now") launches 13 processes. The ps output is unreadable; it consists of "random names doing random things". Just understanding that output is difficult; aggregating the results to get an idea of how much CPU time or power the application is using has become even more challenging. There is thus a need to track processes properly in desktop environments, since the available data no longer means anything. We "need some metadata", Edmundson concluded.

Fairness is also an increasingly important issue. Edmundson gave an example of Krita, an advanced graphics application. It performs some heavy processing, all contained within a single process. On the other hand, Discord has those 13 processes, many of which will be making heavy use of the CPU "because it is written in Electron". The system's CPU scheduler will see those two applications as 14 opaque processes, not knowing what they correspond to. This means that Krita could get only 1/14 of the available CPU time, even though it represents half of the applications running. Metadata about running applications needs to propagate through the whole software stack to be available to the scheduler, he said.

One of Plasma's tasks is mapping windows to applications. More precisely, it tries to map windows to their associated desktop files — the configuration files containing metadata that are used, for example, to create menu entries. Applications open windows and "we hope we can match it all up". The Plasma developers use a lot of hacks and heuristics to perform this matching, but "we do not like guessing", he said. He made an example of a Firefox window being used to watch an Akademy talk like his. There is an audio icon inside that window, but this icon is not managed by the same process as the one controlling the outer window, he explained. Plasma needs to find the link between them, and "it is an arbitrary guessing game".

Read more

More in Tux Machines

Getting to know Kyeong Sang Kim, Red Hat general manager for Korea

We’re delighted to welcome Kyeong Sang Kim to Red Hat as a general manager for Korea. In the new role, he will be responsible for Red Hat’s business operations in the country. Kyeong Sang is an expert in the field of IT consulting, supporting numerous business innovation projects for more than 25 years. Prior to joining Red Hat, Kyeong Sang served as the CEO of SICC (Ssangyong Information & Communications Corp), where he successfully led the company’s digital transformation to the cloud. He has also held several other leadership roles at global companies, including Accenture. We caught up with Kyeong Sang to find out more about his interest in open source and Red Hat, and his insights on leadership. Read more

CentOS is gone—but RHEL is now free for up to 16 production servers

Last month, Red Hat caused a lot of consternation in the enthusiast and small business Linux world when it announced the discontinuation of CentOS Linux. Long-standing tradition—and ambiguity in Red Hat's posted terms—led users to believe that CentOS 8 would be available until 2029, just like the RHEL 8 it was based on. Red Hat's early termination of CentOS 8 in 2021 cut eight of those 10 years away, leaving thousands of users stranded. As of February 1, 2021, Red Hat will make RHEL available at no cost for small-production workloads—with "small" defined as 16 systems or fewer. This access to no-cost production RHEL is by way of the newly expanded Red Hat Developer Subscription program, and it comes with no strings—in Red Hat's words, "this isn't a sales program, and no sales representative will follow up." Read more

Linux at Home: Digital Music Production with Linux

We are told by our governments that in the current crisis the single most important action we can take is to stay at home and minimise the amount of contact with others. The new variants of Covid-19 are much more transmissible than the virus’s previous version. The advice to stay safe is therefore even more important. It’s only with everyone abiding by the law can we protect our health services and save lives. In this series, we look at a range of home activities where Linux can play its part, making the most of our time at home, keeping active and engaged. The change of lifestyle enforced by Covid-19 is an opportunity to expand our horizons, and spend more time on activities we have neglected in the past. Read more

Android Leftovers