jeff_rigby
Banned
No, I am not "acknowledging" anything like that. These things run as daemons, not "parts of the main loop". That expression is completely irrelevant and meaningless here. It is a term *specific to event driven architectures*. Unixes are NOT structured that way. And apart from you, I've never heard anyone calling systemd core processes a "main loop".
The "main event loop" is *specific to event driven software architectures* like GTK. This a software architecture where the dynamic operation of the system is approached through the concept of routing and handling "events". "Main loops" take messages from a queue or wherever and they process them (dispatch them to other processes or do something else based on them). They are overwhelmingly used on the higher levels of the architecture (typically GUIs). The Windows GUI, for example, was already "event driven" even in 3.1. I wrote message-handling "main loops" for Windows 3.1 programs already.
Unixes work differently. They are made up of several concurrently running but otherwise absolutely traditional programs ("processes"). From their own point of view, these can act as if they were completely separate and independent and access resources independently. There is a central scheduling and process management component (which is *not* called a "main loop") that can assigns resources (processing time and memory) to these different processes. This scheduling component does not receive and dispatch events between these processes in the way event driven systems do. But you *can* add *other processes* to the system (like a dbus daemon) that can take on such tasks.
There actually *are* things in Unix that are somewhat like events and they are called "signals". These are used to signal extraordinary situations (like someone pressing ctrl-c in a console). Unix programs can watch for and handle these signals.
The "main event loop" is *specific to event driven software architectures* like GTK. This a software architecture where the dynamic operation of the system is approached through the concept of routing and handling "events". "Main loops" take messages from a queue or wherever and they process them (dispatch them to other processes or do something else based on them). They are overwhelmingly used on the higher levels of the architecture (typically GUIs). The Windows GUI, for example, was already "event driven" even in 3.1. I wrote message-handling "main loops" for Windows 3.1 programs already.
Unixes work differently. They are made up of several concurrently running but otherwise absolutely traditional programs ("processes"). From their own point of view, these can act as if they were completely separate and independent and access resources independently. There is a central scheduling and process management component (which is *not* called a "main loop") that can assigns resources (processing time and memory) to these different processes. This scheduling component does not receive and dispatch events between these processes in the way event driven systems do. But you *can* add *other processes* to the system (like a dbus daemon) that can take on such tasks.
There actually *are* things in Unix that are somewhat like events and they are called "signals". These are used to signal extraordinary situations (like someone pressing ctrl-c in a console). Unix programs can watch for and handle these signals.
Edit: years ago Gnome developers removed the GTK+ GUI parts from Glib so it could be efficiently used with other toolkits and projects. Prior to that point the reference I quoted that "anything calling Glib was Gnome (GTK+)" was accurate. Gnome = GTK only which I didn't understand. Glib still contains multiple libraries that have the G prefix for Gnome but not the GTK UI routines. Using those libraries required for Gnome allow other applications to share APIs with Gnome programs/libraries which makes them nearly Gnome except for the GUI. So Sony moving to a Sony styled POSIX GUI but still using GTK (GNOME) APIs and Glib is even closer but by definition not Gnome.
Edit on Edit: WebMAF is used for apps on the PS3 and PS4 and that is based on Mozilla/Firefox which is again based on Gnome. Sony is using the Webkit version of WebMAF not the Gecko version.