Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
New superlight X Windowing System alternative
View unanswered posts
View posts from last 24 hours

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Unsupported Software
View previous topic :: View next topic  
Author Message
Shining Arcanine
Veteran
Veteran


Joined: 24 Sep 2009
Posts: 1110

PostPosted: Wed Jul 07, 2010 10:55 pm    Post subject: New superlight X Windowing System alternative Reply with quote

There is a new "superlight alternative" to X Windows available:

http://www.microxwin.com/

Unfortunately, it uses a proprietary kernel module at this time, but I expect that either the developers will change their minds or someone else will write an open source substitute to replace it. Until then, does anyone know whether or not it will be available on Gentoo Linux? I am curious if it can do graphical acceleration with Nvidia's proprietary driver.

They are talking about it at the Ubuntu forums:

http://ubuntuforums.org/showthread.php?t=1459910
Back to top
View user's profile Send private message
turtles
Veteran
Veteran


Joined: 31 Dec 2004
Posts: 1347

PostPosted: Thu Jul 08, 2010 12:26 am    Post subject: Reply with quote

Other super light window managers:
http://matchbox-project.org/screenshots.html
http://qt.nokia.com/products/platform/qt-for-embedded-linux/
http://www.superant.com/smalllinux/tinyX01.html
http://alperakcan.org/?open=projects&project=xynth

Are some others, to name a few.

EDIT:
Oh and http://www.directfb.org/
_________________
Donate to Gentoo
Back to top
View user's profile Send private message
Shining Arcanine
Veteran
Veteran


Joined: 24 Sep 2009
Posts: 1110

PostPosted: Thu Jul 08, 2010 12:35 am    Post subject: Reply with quote

Are any of those things that I could use on Gentoo Linux with KDE and get full OpenGL graphics acceleration with the Nvidia drivers?
Back to top
View user's profile Send private message
turtles
Veteran
Veteran


Joined: 31 Dec 2004
Posts: 1347

PostPosted: Thu Jul 08, 2010 12:57 am    Post subject: Reply with quote

Doubtfull about KDE.
OpenGL though:
http://www.directfb.org/index.php?path=Projects/DirectFBGL
_________________
Donate to Gentoo
Back to top
View user's profile Send private message
BradN
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2391
Location: Wisconsin (USA)

PostPosted: Thu Jul 08, 2010 1:06 am    Post subject: Reply with quote

Note that you lose networked X features by using this. This is a dealbreaker for me because there's situations where I want to run a program on one machine (locality to data usually) but display on another.
Back to top
View user's profile Send private message
turtles
Veteran
Veteran


Joined: 31 Dec 2004
Posts: 1347

PostPosted: Thu Jul 08, 2010 1:33 am    Post subject: Reply with quote

Yeah that is a deal breaker indeed.
What is interesting is there is this whole branch of linux embedded/ linux for phones etc now that can be ported to obsolete hardware.
It would be interesting to see a version/overlay of gentoo like tiny linux or puppy linux that you can build an iso's for obsolete hardware (500mhz and below CPU's?) to be used for new purposes.
Everything would have to be built on a build host with catalyst or metro, and then "emerge -k"? as binary.
I once turned an imac 233Mhz G3 with a bad CRT into a music server.
with directfb it may be able to become a video server, however I think those set top boxes have video codec decoding chips so they do not have to load a codec in memory.

http://www.directfb.org/wiki/index.php/Embedded_DirectFB_Hardware

All the new intel i915 KMS stuff is pertty interesting too.
My framebuffer mode is set right after boot now.
If i log into a console instead of X i can run links2 -g and get a nice resolution, add gpm and it is not a bad console web browser.
_________________
Donate to Gentoo
Back to top
View user's profile Send private message
BradN
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2391
Location: Wisconsin (USA)

PostPosted: Thu Jul 08, 2010 1:50 am    Post subject: Reply with quote

My favorite use for underpowered hardware is (interestingly enough using this networked X feature) for LTSP X terminals. Right now I'm on a 400MHz pentium II with a crappy 4 meg video card (driven by a 1.1GHz celeron as the server, doubling as a normal desktop), and it's surprisingly snappy for most anything that doesn't play back video, and sound and local storage work alright (no cd burning though).

I have a feeling that with gigabit ethernet, some video might be watchable even, since this is just 100Mb here.
Back to top
View user's profile Send private message
Satoshi
Apprentice
Apprentice


Joined: 06 Nov 2006
Posts: 180
Location: Brazil

PostPosted: Thu Jul 08, 2010 5:15 pm    Post subject: Reply with quote

I really hope this takes off and/or gets an open version.


I read everywhere that X is bloated, broken and full of unstable workarounds.

Though the whole networking concept is nice, it's not needed by everyone.

If I could use a cleaner, faster code with no support to networking whatsoever, I'd do it in a heartbeat. I don't use X over network (and probably never will), and faster, stabler software is never a bad idea.

Also, X wouldn't necessarily die because of it. They could coexist, supposing it takes off and becomes standard.


And could anyone enlighten me on the pros and cons of it running in-kernel?
Back to top
View user's profile Send private message
teh-steve
n00b
n00b


Joined: 28 Jan 2005
Posts: 27
Location: Worcester

PostPosted: Thu Jul 08, 2010 5:59 pm    Post subject: Reply with quote

Satoshi wrote:
I really hope this takes off and/or gets an open version.


I read everywhere that X is bloated, broken and full of unstable workarounds.

Though the whole networking concept is nice, it's not needed by everyone.

If I could use a cleaner, faster code with no support to networking whatsoever, I'd do it in a heartbeat. I don't use X over network (and probably never will), and faster, stabler software is never a bad idea.

Also, X wouldn't necessarily die because of it. They could coexist, supposing it takes off and becomes standard.


And could anyone enlighten me on the pros and cons of it running in-kernel?


I can think of two big cons.

1. If it crashes, you might have a kernel panic instead of just a dead X server.
2. It's a proprietary blob, so you have no idea what you're actually putting into your kernel.
Back to top
View user's profile Send private message
Shining Arcanine
Veteran
Veteran


Joined: 24 Sep 2009
Posts: 1110

PostPosted: Thu Jul 08, 2010 9:39 pm    Post subject: Reply with quote

teh-steve wrote:
Satoshi wrote:
I really hope this takes off and/or gets an open version.


I read everywhere that X is bloated, broken and full of unstable workarounds.

Though the whole networking concept is nice, it's not needed by everyone.

If I could use a cleaner, faster code with no support to networking whatsoever, I'd do it in a heartbeat. I don't use X over network (and probably never will), and faster, stabler software is never a bad idea.

Also, X wouldn't necessarily die because of it. They could coexist, supposing it takes off and becomes standard.


And could anyone enlighten me on the pros and cons of it running in-kernel?


I can think of two big cons.

1. If it crashes, you might have a kernel panic instead of just a dead X server.
2. It's a proprietary blob, so you have no idea what you're actually putting into your kernel.


Please use the list bbcode.

Anyway,
  • Would having the kernel panic be much worse than having all of your GUI terminal windows die at once? I cannot think of anyone who regularly uses a desktop environment and use the tty terminals at the same time, so this is not an issue.
  • The blob can be easily replaced with your own code. After all, the X Specification is public knowledge and you have the kernel sources. Just write your own module that fits into the role that the blob performed, compile it and insert it. Problem solved.
Back to top
View user's profile Send private message
Satoshi
Apprentice
Apprentice


Joined: 06 Nov 2006
Posts: 180
Location: Brazil

PostPosted: Thu Jul 08, 2010 11:11 pm    Post subject: Reply with quote

Yeah, I would actually prefer open source. As long as there is funding and full-time devs on it. Not to be grim, but weekend developers are not all that reliable.


But, still, I REALLY want a replacement for X. EVERYTHING I read about its programming is unanimous: bloated, unreliable, almost unmaintainable.

Something faster, cleaner, modern and thoroughly documented.

All the links on this thread, it seems, are actually stripped down replacements, made for portable devices. I need something that is X, just without the whole network thing (could be still provided by some add-on of sorts, or X's development could start to head towards just that particular niche).

In fact, if I ever manage to create my dreamed-of Linux enterprise, I will fund that very same thing: a fully-functional X replacement.
Back to top
View user's profile Send private message
Shining Arcanine
Veteran
Veteran


Joined: 24 Sep 2009
Posts: 1110

PostPosted: Thu Jul 08, 2010 11:47 pm    Post subject: Reply with quote

Satoshi wrote:
Yeah, I would actually prefer open source. As long as there is funding and full-time devs on it. Not to be grim, but weekend developers are not all that reliable.


But, still, I REALLY want a replacement for X. EVERYTHING I read about its programming is unanimous: bloated, unreliable, almost unmaintainable.

Something faster, cleaner, modern and thoroughly documented.

All the links on this thread, it seems, are actually stripped down replacements, made for portable devices. I need something that is X, just without the whole network thing (could be still provided by some add-on of sorts, or X's development could start to head towards just that particular niche).

In fact, if I ever manage to create my dreamed-of Linux enterprise, I will fund that very same thing: a fully-functional X replacement.


microxwin has already provided most of the code necessary under a BSD license. All that needs to be done is for someone to reimplement their closed-source module as either a kernel module or a user space program that can act in place of the kernel module. From a certain perspective, a user space program would probably be a better idea, because that would enable it to be ported to other POSIX systems like *BSD, Solaris, GNU/HURD, etcetera.

By the way, someone should probably contact Con Kolivas about this possibility:

http://en.wikipedia.org/wiki/Con_Kolivas

I am sure that he would love to write something like this, because while the kernel can be responsible for lag, much of the lag comes from how X11 is designed and after trying to improve the Linux desktop experience for so long, I cannot imagine him not jumping at the opportunity to get the sort of improvements that could be obtained from doing this. Of course, if he works on it, you can be certain that he will make a kernel module to replace the proprietary blob, rather than rewriting things to work from userland.

Edit: I sent an email to Con Kolivas because I thought he might be interested in this and if that is the case, then bringing it to his attention could be a good thing. Anyway, I just took a look through /usr/include/X11/ and it is quite extensive. It would probably take several months for one person to get something working, assuming anyone is willing to try. The only possibility that this might change would be if people were to use the BSD-licensed microXwin code and tried writing a module that could be used in place of the microXwin module. I do not know much about kernel programming, so I cannot guess how much time that might save.
Back to top
View user's profile Send private message
asturm
Developer
Developer


Joined: 05 Apr 2007
Posts: 6929
Location: Austria

PostPosted: Fri Jul 09, 2010 8:32 am    Post subject: Reply with quote

I am surprised nobody has mentioned Wayland yet.
_________________
backend.cpp:92:2: warning: #warning TODO - this error message is about as useful as a cooling unit in the arctic
Back to top
View user's profile Send private message
hedmo
l33t
l33t


Joined: 29 Aug 2009
Posts: 923
Location: halmstad

PostPosted: Fri Jul 09, 2010 11:44 am    Post subject: Reply with quote

Shining Arcanine

microxwin is in overlay and as i read it is faster somehow then x but no games thats why i did not test it (half a year ago).
Back to top
View user's profile Send private message
Satoshi
Apprentice
Apprentice


Joined: 06 Nov 2006
Posts: 180
Location: Brazil

PostPosted: Fri Jul 09, 2010 12:39 pm    Post subject: Reply with quote

What exactly are microxwin's shortcomings? And in which overlay is it?


I'd be willing to give it a try, if it is at least functional.
Back to top
View user's profile Send private message
hedmo
l33t
l33t


Joined: 29 Aug 2009
Posts: 923
Location: halmstad

PostPosted: Fri Jul 09, 2010 12:53 pm    Post subject: Reply with quote

layman -a matsuu

emerge -av microxwin

for more info http://www.microxwin.com
Back to top
View user's profile Send private message
Satoshi
Apprentice
Apprentice


Joined: 06 Nov 2006
Posts: 180
Location: Brazil

PostPosted: Fri Jul 09, 2010 11:59 pm    Post subject: Reply with quote

Code:
Calculating dependencies... done!
[ebuild  N    ] dev-vcs/mercurial-1.6  USE="bash-completion -bugzilla -emacs -gpg -test -tk -zsh-completion" 2,141 kB [0]
[ebuild  N    ] x11-base/microxwin-1.6  0 kB [1]
[blocks B     ] x11-libs/libX11 ("x11-libs/libX11" is blocking x11-base/microxwin-1.6)
[blocks B     ] x11-libs/libXext ("x11-libs/libXext" is blocking x11-base/microxwin-1.6)


I'm thinking I really shouldn't do this. This means X and microXwin can't coexist, right?

Uninstalling the packages above to solve the block would render my X unusable, right?
Back to top
View user's profile Send private message
dmpogo
Advocate
Advocate


Joined: 02 Sep 2004
Posts: 2511
Location: Canada

PostPosted: Sat Jul 10, 2010 1:28 am    Post subject: Reply with quote

Shining Arcanine wrote:

[list][*]Would having the kernel panic be much worse than having all of your GUI terminal windows die at once? I cannot think of anyone who regularly uses a desktop environment and use the tty terminals at the same time, so this is not an issue.


You live in some special world. First of all, by default there are 6 tty running on a standard installation and Alt-Cntrl-F1/6 (available if your keyboard is not dead) allows to cure all X problem by restarting it. Which means that 90% of users out there do have tty together with desktop environment :) If you keyboard is dead together with desktop, sshing into the machine (like from my daughter windows laptop) and running, e.g., "/etc/init.d/xdm restart" solves X issues. That's the difference with kernel panic, when you must physically reboot machine. Especially apparent if your computer runs any server functions. And quite a few of them do, even if it is not noticeable - like my home Linux desktop serving printers for all my household computers, and samba-ing external drive which my wife uses for backups.
Back to top
View user's profile Send private message
Satoshi
Apprentice
Apprentice


Joined: 06 Nov 2006
Posts: 180
Location: Brazil

PostPosted: Sat Jul 10, 2010 11:55 am    Post subject: Reply with quote

But there are some advantages to it being included in-kernel, aren't there?

Quote:
The advantages of this design are:
Low latency and round trip.
Minimal buffering of requests and responses.
No context switch overhead and possible cache flushing (ARM 9).
Graphics data is copied directly from user space to frame buffer by kernel module.
Graphics rendering can start very early in the boot sequence resulting in better user experience.
Back to top
View user's profile Send private message
asturm
Developer
Developer


Joined: 05 Apr 2007
Posts: 6929
Location: Austria

PostPosted: Sat Jul 10, 2010 12:41 pm    Post subject: Reply with quote

Why re-invent the wheel with a proprietary kernel module? Wayland uses existing kernel resources like KMS and aims to remain compatible to X in that it would be possible to display windows from an existing X server. This is your ONLY bet to ever be able to replace the current X11 system.

More infos here: http://www.phoronix.com/scan.php?page=article&item=wayland_q209&num=1

@Shining Arcanine: Proprietary currently-X drivers will surely be the last among supporting any new window system... and the open sourcing of microxwin is a pious hope at best.
_________________
backend.cpp:92:2: warning: #warning TODO - this error message is about as useful as a cooling unit in the arctic
Back to top
View user's profile Send private message
Shining Arcanine
Veteran
Veteran


Joined: 24 Sep 2009
Posts: 1110

PostPosted: Sat Jul 10, 2010 11:06 pm    Post subject: Reply with quote

genstorm wrote:
Why re-invent the wheel with a proprietary kernel module? Wayland uses existing kernel resources like KMS and aims to remain compatible to X in that it would be possible to display windows from an existing X server. This is your ONLY bet to ever be able to replace the current X11 system.

More infos here: http://www.phoronix.com/scan.php?page=article&item=wayland_q209&num=1

@Shining Arcanine: Proprietary currently-X drivers will surely be the last among supporting any new window system... and the open sourcing of microxwin is a pious hope at best.


genstorm, perhaps you misunderstand. MicroXWin is composed of open source userland components and a proprietary kernel module. There is nothing stopping someone from writing a new kernel module to replace it and releasing the source code to that, considering that everything else has been open sourced already. If someone does do that, then MicroXwin could be forked into an open source project.
Back to top
View user's profile Send private message
pingufunkybeat
l33t
l33t


Joined: 01 Dec 2004
Posts: 610

PostPosted: Sun Jul 11, 2010 12:20 am    Post subject: Reply with quote

I'll believe it when I see it.

DirectFB and Wayland have been the "X killers" for a really long time now. Does anyone remember Y-Windows? Berlin? Fresco? All X-Window replacements, only 1000% better.

X is still very much alive because it is an extremely complex piece of software and it is not easy to knock up something lean, mean and efficient to replace it.

On the other hand, things are slowly moving towards moving important functionality out of X and into Mesa, Galium3d, kernel, evdev, etc. So the linux ecosystem is becoming less reliant on X (which really used to do EVERYTHING). Many modern applications (at least the KDE ones) do not need X specifically, and work just fine on Macs and Windows.

The problem with X killers is that whenever somebody produces code to replace the antiquated, bloated, slow, complex X server, we end up with something even more bloated, slow and less functional. Replacing X is not easy. And to be honest, I'm not convinced that it is necessary at all. The lean mean X replacements are the Linux equivalent of snake oil.
Back to top
View user's profile Send private message
BradN
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2391
Location: Wisconsin (USA)

PostPosted: Sun Jul 11, 2010 1:08 am    Post subject: Reply with quote

I think a performance boost and better memory footprint in exchange for losing features is the kind of thing that might be appealing to embedded development, but for sure not with a closed source kernel module. If that shortcoming gets fixed, there might be some real use for something like this.
Back to top
View user's profile Send private message
dmpogo
Advocate
Advocate


Joined: 02 Sep 2004
Posts: 2511
Location: Canada

PostPosted: Sun Jul 11, 2010 1:11 am    Post subject: Reply with quote

BradN wrote:
I think a performance boost and better memory footprint in exchange for losing features is the kind of thing that might be appealing to embedded development, but for sure not with a closed source kernel module. If that shortcoming gets fixed, there might be some real use for something like this.


Do embedded environments typically run X11 ?
Back to top
View user's profile Send private message
BradN
Advocate
Advocate


Joined: 19 Apr 2002
Posts: 2391
Location: Wisconsin (USA)

PostPosted: Sun Jul 11, 2010 1:34 am    Post subject: Reply with quote

In the case of qt, not normally since it can usually operate in a native mode, but there may be environments where non-qt programs need to be run (maybe it is a new device that replaces what a dedicated PC did before, but avoiding software rewrite as much as possible on a stable system), and being able to use normal X programs without a huge X server opens up the options a little.

You're right though, off the top of my head, I can't think of any places I've seen X11 used in an embedded environment (other than X terminals, and that wouldn't be a possible use case here). Does OpenPandora count? :) But, I can see the appeal for someone trying to develop an embedded system but used to working with X toolkits other than qt. Perhaps some of the reason X hasn't been used in this area a lot is solved with a lighter implementation.

I don't know how large embedded qt is, can it fit with a kernel and application in 4-8MB flash?
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Unsupported Software All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum