Can someone provide me with a very clear and practical example of a "windowing system"? I was reading on Linux, and although I've always known that it's a kernel, I didn't really know what a kernel is because I haven't taken an OS class yet. My understanding of it is that it's basically the layer between hardware and software. Would that be correct? Now the Linux distros everyone uses is combination of GNU/Linux/X Window System. I think I got the Linux kernel part, but what is a windowing system and what is GNU? Wikipedia says GNU is an OS, but then that would mean Linux distros are composed of another OS. Can someone clear this up for me?
-
1"GNU/Linux" is a more formal name for the OS, referring to the split between the kernel (linux) and the userland, the most fundamental pieces of which are GNU. The various linux distros (Ubuntu, Fedora, Arch, etc) package GNU/Linux together with stuff such as the Xorg GUI server to provide what most people think of as a complete desktop operating system. Linux, the kernel, is just that. It requires a userland to be functional.– goldilocksCommented Jan 13, 2014 at 21:01
-
1Related: Difference between a Window Manager and a Desktop Environment?– slm ♦Commented Jan 13, 2014 at 22:30
-
1Related: Windows Managers vs Login Managers Vs Display Managers Vs Desktop Environment– slm ♦Commented Jan 13, 2014 at 22:39
-
1Related: Window Manager vs. Desktop Environment vs. Window System? What's the difference?– slm ♦Commented Jan 13, 2014 at 22:40
-
Have you read the Wikipedia article?– Gilles 'SO- stop being evil'Commented Jan 13, 2014 at 23:27
2 Answers
GNU (Gnu is Not Unix) is an Operative System, created by Richard M. Stallman. You can use this operative system with different kernel: such as Linux kernel, Hurd kernel, Darwin kernel, etc.
The X Window System (common on Unix like system) is just the basic layer for a GUI environment.
Every Linux distribution is a GNU operative system with a Linux kernel and an X Window System; on top of X Windows, you have the window manager (GUI) such as Xfce, Gnome, or KDE that lets you easily use your system.
-
Xfce, Gnome, and KDE are not window managers (WM), they are desktop environments (DE). The latter usually depends upon the former. The normal GUI stack on linux (and I believe most other *nixes) is windowing system (Xorg) -> window manager -> desktop environment, although the last two are technically optional, and there are standalone window managers that provide most of what a DE does without a DE. Commented Jan 13, 2014 at 20:55
-
Yes you are right, they are Desktop Manager! Big mistake! Commented Jan 13, 2014 at 20:56
-
GNU is a OS in itself, but now you remove the kernel GNU uses and use Linux instead, so now it's GNU/Linux; two different OS but related. Am I correct? And although I'm still not really understanding windowing system, I'm guessing it's like the skeleton behind and under an interface? With the GUI being the meat and themes being the gravy? Would this be a correct analogy? Commented Jan 13, 2014 at 23:56
-
@maurelio79 can you just take a look at my last comment one more time? Commented Jan 14, 2014 at 20:21
-
1Hi, Linux is not an OS, is just the kernel. stackoverflow.com/a/3315792/3096534 Kernel is include in Operative System. Think about the OS as many different applications (including kernel, windowing system, ecc) put together. About windowing system, i can accept your analogy ;-) Commented Jan 14, 2014 at 21:42
A windowing system is a software system that realises a windowing model (that is, an abstract graphical model suitable for writing GUI software) on top of a more basic display layer, such as framebuffers. To be a windowing model, the graphical model will generally have to support concepts like windows, selections, decorations, menus, etc., but it does not need to be very sophisticated.
Most desktop UNIX systems use X11 as their main windowing system, where the X implementation also implements the display server; the most prominent exception is Mac OSX which uses Apple's proprietary Quartz Compositor display server and windowing system (Cocoa does support the X11 interface through special software, allowing X applications to be run on top of Quartz Compositor). There are also free rivals to X such as Wayland, which like X11 names both the windowing system and the display server.
You can have a windowing system without framebuffers and the like: ncurses is a pure text library that supports simple windowing abstractions that are widely seen in text-mode Linux installers, for instance.
-
better than the accepted answer. Though you could mention X11 and what it specifically does or doesn't do from the end-user perspective. Commented Nov 23, 2015 at 7:49