Significant Interactivity Boost in Linux Kernel
An anonymous reader writes "The Linux kernel team is at it again. Linux creator Linus Torvalds recently proposed a patch to offer interactive processes a boost, greatly benefiting the X desktop, as well as music and movie players. O(1) scheduler author Ingo Molnar merged Linus' patch into his own interactivity efforts, the end result nothing short of amazing... The upcoming 2.6 kernel is looking to be a desktop user's dream come true."
I cannot tell you how long I've been waiting for something like this. As an avid Microsoft fan, one of my biggest beefs was the inferior performance of the Linux GUI and its components. Although I will learn the console eventually, I will still probably use the GUI as my cheif method of computing since I find it very fast and efficient. Maybee this will finally blur the line between OS's enough to get more people to switch over.
What will be next!? mm
Absolute astounding. I am in complete and utter shock over this. Truly, truly the most amazing thing I've ever seen or heard.
Now what the hell is this article about?
You mean here in the year 2003 Linux is going to get a decent desktop, like Macintosh got in 1984 or Windows in 1995? I'll believe it when I see it. Any operating system which half the time can't cut and paste between apps is still adolescent.
Music programs: get your ported asses over here!
(I'd love to see CuBaseSX on linux)
Massivly scalable SMP kernel, or instantly responsive desktop kernel... make up your mind leenux, you're confusing me!
You've gotten first or second post in every article you've posted in so far. What are you doing?
Compile it and your'e zooming.
That Open source is more progressive than miker$oft
'ta
another revolution! [...] again :-)
Does this mean software will be easier to install also?
At it again? At what again? That sorta makes it sound like a girls gone wild video or something. Kernel Dev's Gone Wild volume 3, where Ingo and Linus bare their breasts for beads at a Linux user conference in Tampa Bay - no, that's just too strange...
Oh, one more thing:
Hello, my name is Ingo Molnar. You killed my father: prepare to die.
Robots are everywhere, and they eat old people's medicine for fuel.
I'll stick with my Microsoft products, thank you. All that Linux is used for is DVD piracy, hacking, DoSing, and hosting illegal "warez" sites. I don't associate with criminals like that.
Actually, Linus's patch doesn't improve things any better than the scheduler patch it is Linus's patch combined with the scheduler patch that make it such a huge improvement. Again... its the COMBO patch that's arousing so much excitement.
Inconceivable!
Speaking on behalf of the greater LINUX community, I just want to express my concern that we are in dager of losing our exclusivity and insular "alternate lifestyle" afforded by our outrageously homosexual operating system.
Didn't Alan Cocks talk about this awhile ago?
NeverWinter Nights Linux client?
Kernel 2.6?
StarTux
Something forms itself from the silent void of the empty mailing lists and the noisy chaos of the crowded mailing lists. It shapes and protects us, it entertains and challenges us, it aids us in our journey through the ether world of software. It is mysterious; it is at once source code and yet object code. I do not know the name, thus I will call it the Tao of Linux.
If the Tao is great, then the box is stable. If the box is stable, then the server is secure. If the server is secure, then the data is safe. If the data is safe, then the users are happy.
In the beginning there was chaos in Unix.
Tanenbaum gave birth to MINIX. MINIX did not have the Tao.
MINIX gave birth to Linux 0.1 and it had promise.
Linux gave birth to v1.3 and it was good.
v1.3 gave birth to v2.0 and it was better.
Linux has evolved greatly from its distant cousins of the old. Linux is embodied by the Tao.
The wise user is told about the Tao and contributes to it. The average user is told about the Tao and compiles it. The foolish user is told about the Tao and laughs and asks who needs it.
If it were not for laughter, there would be no Tao.
Wisdom leads to good code, but experience leads to good use of that code.
The master Cox once dreamed that he was a Kernel. When he awoke he exclaimed: "I don't know whether I am Cox dreaming that I am a Kernel, or a Kernel dreaming that I am Cox!"
The master Linus then said: "The Tao envelopes you. You shall create great code for Linux."
"On the contrary," said Cox, "The Tao has already created the code, I will only have to find it and write it down."
A master was explaining the nature of the Tao to one of his students:
"Is the Tao in the VM subsystem?" he asked. "Yes," replied the master.
"Is the Tao in the scheduler?" he queried again. "The Tao is in the scheduler."
"Is the Tao even in the modules?". "It is even in the modules," said the master.
"Is the Tao in the Low-Latency Patch?"
The master frowned and was silent for much time.
"You fail to understand the Tao. Go away."
The Tao is the yin and the yang. It is the good and the evil, it is everything and yet it is nothing, it is the beginning and the end.
The Tao was there at the kernel compile, and it will be there when the kernel panics.
A novice user once asked a master: "Why compile in C when C++ is more popular?"
"Why a monolythic kernel when Mach is more popular?"
"And why use ReiserFS when ext2 is more popular?"
The master sighed and replied: "Why run Unix when NT is more popular?"
The user was enlightened.
A frustrated user once asked a master: "My kernel has panicked, should I post to lkml?"
"No," replied the master, "You will only bother the Tao."
"Should I rm -rf?"
"No, you will have wasted the Tao's time."
"Well should I search the web?"
"You will search for all eternity," said the master.
"Perhaps I should try FreeBSD?"
"Then you will have disgraced the Tao."
"I suppose I could try gdb," said the user.
The master smiled and replied: "Then you will have made the Tao stronger."
A stubborn user once told a master: "I run version 2.2. I always have, and I always will."
The master replied: "You are foolish and do not understand the Tao. The Tao is dynamic and ever changing. Linux strives for the perfection that is the Tao. It flows from version to version with peace."
"So my Linux does not have the Tao, so what?" said the foolish user. "Oh your Linux is of the Tao," said the master. "However, the Tao of Linux follows the Tao of the C library. One day the C library will change, and your Linux will be left behind." The user was silent.
An angry user once yelled at a master:
"My Linux has panicked! What lousy software it is, I hate it so!"
"You are insulting the Tao," said the master. "The Tao is everywhere bringing order to hundreds of networks, aiding thousands of users, and fighting that of which we call the 'lame.' Do not disrespect the Tao; however, the Tao will forgive you."
"I apologize," said the user, "And I will be more forgiving the next time the Tao fails me."
"The Tao has not failed you, it is you that has failed the Tao," said the master. "The Tao is perfect."
The Tao decides if a kernel shall compile, or if it shall abort.
The Tao decides if a kernel shall boot, or if it shall freeze.
The Tao decides if a kernel shall run, or if it shall panic.
But, the Tao does not decide if a box will have no hardware failures. That is a mystery to everyone.
A young master once approached an old master: "I have a LUG for Linux help. But, I fail to answer my students' problems; they are above me."
The master replied: "Have you taught them of the Tao?" he asked. "How it brings together man and software, yet how it distances them apart; how if flows throughout Linux and transcends its essence?"
"No," exclaimed the apprentice, "These people cannot even get the source untarred."
"Oh, said the master, "In that case, tell them to RTFM."
A master watched as an ambitious user reconstructed his Linux.
"I shall make every bit encrypted," the user said. "I shall use 2048 bit keys, three different algorithms, and make multiple passes."
The master replied: "I think it is unwise."
"Why?" asked the user. "Will my encryption harm the mighty Tao, which gives Linux life and creates the balance between kernel and processes? The mighty Tao, which is the thread that binds the modules and links them with the core? The mighty Tao, which safely guides the TCP/IP packets to and from the network card?"
"No," said the master, "It will hog too much cpu."
The core is like the part of the mind that is static. It is programmed at a child's creation and cannot be changed unless a new child is made; unless a new kernel is compiled.
The modules are like the part of the mind that is dynamic. It is reprogrammed every time one learns new knowledge; every time one learns better code.
One is yin, the other yang. Each is nothing without the other.
A novice came to lkml and inquired to all the masters there: "I wish to become a master. Must I memorize the Linux header files?"
"No," replied a master.
"Must I submit code to Bitkeeper?"
"No," replied the master.
"Must I meditate daily and dedicate my life to Linux?"
"No," replied the master again.
"Must I go on a quest to ponder the meaning of the Tao?"
"No. A master is nothing more than a student who knows something of which he can teach to other students."
The novice understood.
And thus said the master:
"It is the way of the Tao."
A user came to a master who had great status in lkml. The user asked the master: "Which is easier: implementing new features to the kernel or documenting them?"
"Implementing new features," replied the master.
The confused user then exclaimed:
"Surely it is easier to write a few sentences in the man page than it is to write pages of code without error?"
"Not so," said the master. "When coding, the Tao of Linux opens my eyes wide and allows me to see beyond the code, to let the source flow from my fingers, to implement without flaw. When documenting, however, all I have to work with is a C in high school English."
He who compiles from the stable tree is stubborn
and unwilling to change, but is guaranteed reliability.
He who compiles from the current tree is wise but perhaps too conformist, but is guaranteed steadiness.
He who compiles from the unstable tree is adventurous and is guaranteed new innovations: some good, some bad.
He who compiles straight from Bitkeeper is brave but guaranteed turbulence.
They are all of the Tao. One shall respect the old, and debug the new; none shall argue over which is greatest.
There once was a user who scripted in Perl: "Look at what I have to work with here," he said to a master of core, "My code is interpreted dynamically, the syntax is unique and simple, I have sockets, strings, arrays, and everything I could ever need. Why don't you stop meddling in C and come join me?"
The C programmer described his reasoning to the scripter: "Scripting is to C as ebonics is to Latin. If the scripter does not grow beyond that of which he scripts, he will surely {die}. Besides, without C, how can there be script?"
The scripter was enlightened, and the two became close friends.
Im sorry, its not the kernel that makes a desktop OS what it is, its the userinterface on top. Linux isnt going to be truely Desktop friendly untill X11 gets replaced with something that doesnt completely suck. You shouldnt need a high end video card to make X11 nice and smooth or have to use a stripped down UI. If Linux wants to set it self apart from all the other OS's its going to need its own desktop engine. I do agree that the 2.6 kernel is going in the right direction, I just belive the rest of the OS is being left really far in the past.
My 2 1/2 cents Canadian
Linux was the fastest platform on the block (back in the days of Windows 3.1 and flawed pentiums). More recently, working with Linux, I was disappointed with the speed. Maybe this will be the killer-non-ap that makes Linux scream and encourages us all to delete their FAT32 partitions for good?
BTM
That was the turning point of my life--I went from negative zero to positive zero.
it is very on topic
Nahm I don't see how it would make "apt-get install foo" any easier.
Especially because even though apt-get automatically fetches and installs dependencies, it takes an hour to do so over dial-up. And no, home-priced broadband isn't available everywhere in the United States, let alone everywhere in the world.
Will I retire or break 10K?
... had i the possibility, i'd surely give you a (+10: Funny Troll)
:-)
you just made my day a bit happier
Does it have many boxen?
... which doesn't have cut and paste at all outside the "Edit" menu.
Now, I am a long-time user of Windows, but am (and have been always) increasingly tempted by switching to a Linux-based distribution, probably Redhat, on my main desktop machine.
With that lack-of-linux-knowledge, could someone explain why precisly this is a "Significant Interactivity Boost in (the) Linux Kernel"? Thank you.
I find some things jump a little (e.g. dragging windows around) at the moment (RH8, Athlon MP 1600, GeForce 2) in X.
:-)
On a 475MHz laptop with ATi Rage Pro video, it runs just as smooth as XP does (they both jump a bit when dragging windows around).
I know this shouldn't happen on the fast PC though. I must have something set up wrongly. Maybe the latest kernel will make it less noticeable though
Follow me
It's:
My name is Ingo Molnar. You kill -9'd my parent process. Prepare to die()
Stop stealing that intellectual property from SCO already. Have you no shame? The gig is up: there's no way you could keep putting this stuff out without ripping off the hard working SCO programmers.
Fermat's other theorem: "I have a simple proof, but I can't write it down as I fear it's a DMCA violation to discuss it"
Except that doesn't work if the X app is being displayed locally but run remotely. Or at least it doesn't seem to.
Well, okay. Look. I just opened up my X server here on my mac os X box, sshed with X tunneling to my university's Solaris box, opened up xchat, selected some text, and attempted to paste it into a nearby xterm. Oh, hey, guess what, didn't work. I tried what you said. I selected some text, i clicked on the xterm, i tried middle-clicking and right-clicking. Nothing there. Care to tell me what i'm doing wrong?
Anyway, the whole select-to-copy thing is HORRIBLE GUI design. What if you want to select something in order to edit it without *blowing away* the clipboard? What if your hand slips and you select a couple letters of text by accident before you can paste something important into its destination? I, personally, have intense problems with the copy-paste thing because at some point i picked up the stupid habit of often scrolling by selecting text and dragging off the edge of the window, which will obliterate the textboard. And, worst of all, there's that nagging little question: let's say i'm editing a file, and i want to select some text in the part of the document i'm editing, "cut" it, scoll up to the top of the document, delete part of a paragraph, write a couple lines, and then paste what i just cut. What X's copy/paste means is that i must select the text i want to move to copy (making sure not to delete it yet, becuase it would be too easy to accidentally select text and copy over what i've written, losing it forever), scroll up, click where i want it to go, paste, and then delete and rewrite the text around it, scroll back down, and then delete the text i copied. Yeah, way to go on making the interface fit the needs of the user. Dammit.
And then there's the fact that, still, mostly due to the broken silliness of X copy&paste, most applications don't quite work the same, becuase they've all fucking implemented the clipboard in nonstandard ways because those unstandard ways are "better". Which they are, unless for some silly reason you want to copy and paste between applications. We've got the "clipboard" and the "cut buffer" and i don't know what either means, and lately some GNOME apps and such have taken to signing up with a sane (i.e., "copy" and "paste" are commands, and as such require a menu use or a key combination). And then vim has like its ten little internal clipboards, and emacs has some clipboard system i don't even pretend to know the first thing about, and i mostly use vim as my text editor in unix. And none of these apps i've ever seen give the option of choosing which copy/paste behavior you want: i mean, none of them will give you a nice little preference that says "select to copy" vs "select 'copy' from menu to copy" vs "have ten little internal cycling cut buffers with some arcane method of manipulation". And i still don't know how copy/paste within vim is supposed to interact with other X apps. I'd test it right now, but for some reason still unknown to me, i can't get gvim to run over my ssh-tunneling setup. When i try, it says:
X11 connection rejected because of wrong authentication.
XIO: fatal IO error 32 (Broken pipe) on X server "localhost:13.0"
after 0 requests (0 known processed) with 0 events remaining.
The connection was probably broken by a server shutdown or KillClient.
Maybe it doesn't like my MIT magic cookies, or something? But I digress. Face it. Copy and paste is still the most broken thing about X, and that's saying a lot. And maybe i'm just dense, but i still can't figure out how to change my X keyboard mapping on these silly Solaris boxes.
-- super ugly ultraman
bashing linux/x/kde/whatever speed, I'm willing to bet you've never doen a full build (ala Gentoo) and actually optimized it for your system...have you? KDE 3.1 is as fast or faster than windows XP on my 1ghz box...it took a while to build, but it's well worth it.
Is here
On Fri, 28 Feb 2003, Andrew Morton wrote:
> >
> > Andrew, if you drop this patch, your X desktop usability drops?
>
> hm, you're right. It's still really bad. I forgot that I was using distcc.
>
> And I also forgot that tbench starves everything else only on CONFIG_SMP=n.
> That problem remains with us as well.
Andrew, I always thought that the scheduler interactivity was bogus, since
it didn't give any bonus to processes that _help_ interactive users
(notably the X server, but it could be other things).
To fix that, some people nice up their X servers, which has its own set of
problems.
How about something more like this (yeah, untested, but you get the idea):
the person who wakes up an interactive task gets the interactivity bonus
if the interactive task is already maxed out. I dunno how well this plays
with the X server, but assuming most clients use UNIX domain sockets, the
wake-ups _should_ be synchronous, so it should work well to say "waker
gets bonus".
This should result in:
- if X ends up using all of its time to handle clients, obviously X will
not count as interactive on its own. HOWEVER, if an xterm or something
gets an X event, the fact that the xterm has been idle means that _it_
gets a interactivity boost at wakeup.
- after a few such boosts (or assuming lots of idleness of xterm), the
process that caused the wakeup (ie the X server) will get the
"extraneous interactivity".
This all depends on whether the unix domain socket code runs in bottom
half or process context. If it runs in bottom half context we're screwed,
I haven't checked.
Does this make any difference for you? I don't know what your load test
is, and considering that my regular desktop has 4 fast CPU's I doubt I can
see the effect very clearly anyway ("Awww, poor Linus!")
NOTE! This doesn't help a "chain" of interactive helpers. It could be
extended to that, by just allowing the waker to "steal" interactivity
points from a sleeping process, but then we'd need to start being careful
about fairness and in particular we'd have to disallow this for signal
handling.
Linus
----
===== kernel/sched.c 1.161 vs edited =====
--- 1.161/kernel/sched.c Thu Feb 20 20:33:52 2003
+++ edited/kernel/sched.c Wed Mar 5 19:09:45 2003
@@ -337,8 +337,15 @@
* boost gets as well.
*/
p->sleep_avg += sleep_time;
- if (p->sleep_avg > MAX_SLEEP_AVG)
+ if (p->sleep_avg > MAX_SLEEP_AVG) {
+ int ticks = p->sleep_avg - MAX_SLEEP_AVG + current->sleep_avg;
p->sleep_avg = MAX_SLEEP_AVG;
+ if (ticks > MAX_SLEEP_AVG)
+ ticks = MAX_SLEEP_AVG;
+ if (!in_interrupt())
+ current->sleep_avg = ticks;
+ }
+
p->prio = effective_prio(p);
}
enqueue_task(p, array);
In X or CLI with mouse, how do you do a highlight - copy - highlight - replace?
This has been a aggravation to me since I got my first linux box running, and would have been usefull in this post when I pasted in aggravation from Kdict next to aggrivation then had to ctrl-arrowkey backspace.
A link to a page with these type of operations would be most handy.
This is where I keep my clever quotes "" Yup I only got a pair, so I better not waste em!
There was a time when idiots did not walk the earth.
Linux still screams, I have a single server with two gig's of ram in it that runs 100 desktops (KDE) simultaneously. Yes it indeed takes alot of ram to run all of the new software. But for a machine that runs 2200 processes that is a impressive feat. It is a dual processor box and I have yet to see it reach over 30% processor utilization, a testament to the efficency of the kernel.
Software today requires a ton of ram, this has nothing to do with efficency of the linux kernel.
Along with this goes the idiots that think there is something wrong with X. I run this stuff in a corporate environment and X windows is linux's biggest strength. Remove X Windows and I would have to eliminate our corporate use of Linux.
Got Code?
But windows xp already does this.
please work on making linux a better server os please. the customer is not asking for better desktop where windows is already untouchable.
Smoothness when dragging stuff around probably has more to do with the 2D hardware on your graphics adaptor and the drivers for it. Even though this new kernel apparantly will make things feel snappier I still wouldn't be surprised if GUI jumpiness still happens. 3D acceleration seems to be the hot priority right now. Hence Quartz Extreme in OS X, since the video card is being optimized for 3D make everything look like it's 3D.
I can't wait to watch the 3D animation of the kernel source with this...the best part will be seeing the patch! :-)
" As an avid Microsoft fan, one of my biggest beefs was the inferior performance of the Linux GUI and its components."
That would depend on exactly what you talking about. Those linux users running something like Blackbox would laugh at you for saying so. I'd also suggest as a user of both, KDE and XP have about the same interactive performance as well.
There's no doubt Windows still has more polish than Linux as a whole when it comes to the desktop. And while anything that improves any of LInux's many "gui's" is a welcome event, Linux's gui's are hardly inferior performance-wise across the board like your implying.
"Maybee this will finally blur the line between OS's enough to get more people to switch over."
Performance doesn't rate very high on why windows users aren't switching over. Lack of familiar apps and games, lack of widespread OEM bundling, and lack of millions in marketing are what's keeping people from switching over.
If you wanna get rich, you know that payback is a bitch
Looks like someone is using the server locally on kerneltrap.org, as it's down...Hopefully they're getting something done at least :).
The Right Reverend K. Reid Wightman,
Now that we are on this topic, it might be a good time to ask this question: How can i get my box to boot a 2.5.x kernel?! I am no newbie to kernel configs, it looks like i did everything right, however i am greated by a "Booting linux kernel..." then my HD making noices for about a minute (but no output to console) and then ... nothing .. keyboard unresponsive, no output on console, nothing..
.64 and .64-bk3)
Is there some magic ingrediant i missed? I know modutils changed, but i don't even seem to get to a point where that could make the slightest difference
(had this with 2.5.61,
Every new release of Windows wasn't vastly slower and more bloated then the release before it...
Oh wait. No there wasn't.
If you wanna get rich, you know that payback is a bitch
*ingo > I tried something like this before, and it didnt work.
*linus >You can't have tried it very hard. In fact, you haven't apparently tried it hard enough to even bother giving my patch a look, much less apply it and try it out.
...
Are you _crazy_?
Normal users can't "just increase the priority". You have to be root to do so. And I already told you why it's only hiding the problem.
...
Get your head out of the sand, and stop this "nice" blathering.
Linus
Liberty.
Thanks to updates on the staus of BSD that are regularly posted here, many loyal slashdot readers will be aware that BSD is dying. Recent enhancements to the linux kernel have removed any further reason for its use. Linux should get a boost when the BSD developers see the error of their ways and come to the lignt.
Thankyou for your time.
Magic. Got it.
This guy is way out there
Anyway, I hope Linus and Ingo now have some spare time for real dreams of power users with Linux desktops - drivers! I used to run Linux at work and at home (used to, because I got rid of the Intel box at home). Between these two machines, I had an NVIDIA card, lucent WinModem, CLIE, Zaurus and an NTFS partition that wasn't recognized by default Redhat kernel.
After every kernel upgrade, I had to recompile 5 drivers. CLIE and Zaurus drivers came in the form of patches that usually refused to apply, or caused a hang when the device was attached! Once I tried a 2.5 kernel because it had some features, like suspend and resume that I could really use. While the default configuration built Ok, once I enabled the drivers I wanted, I couldn't get the thing compiled even before applying my patches.
Yes, you could just run "Redhat operating system", never upgrade the kernel and wait a few months to install a new release. Then you might find binary drivers to download for the kernel for your particular kind and number of CPUs. But the whole point of Linux (on a personal desktop) is to have some fun and try new stuff out easily.
Linux developers really need to stabalize driver interfaces. I should be able to go to kernel.org and download the latest kernel *binary*, then install a binary driver from the CD-ROM that came from my NVIDIA card.
USB and Firewire buses should be exposed by kernel as network interfaces, accessible to user programs through socket API. In this way, USB drivers will be both easier to write/debug AND will not contribute to Oops. For the ultimate of cool, Wine should support Windows USB drivers (my Virtual PC does!) and I should be able to just install Palm and Zaurus desktops and use them rather trying to feed ttyUSBNN to kpilot.
Having a stable system that doesn't have to be rebooted to Windows to use some unsupported USB device is far more important than raw performance. I wish any system's developers - Linux, *BSD, Darwin, BeOS, etc - would concentrate on this goal before going back to play with cool toys.
Linux creator Linus Torvalds recently proposed a patch to offer interactive processes a boost, greatly benefiting the X desktop, as well as music and movie players. O(1) scheduler author Ingo Molnar merged Linus' patch into his own interactivity efforts, the end result nothing short of amazing... The upcoming 2.6 kernel is looking to be a desktop user's dream come true
The "feature" of biasing the scheduler either towards interactive proceses or to background processes has been around since NT 3.51, if I remember correctly. It was definitely in NT4, released in 1994 (again, IIRC). So, while this is welcome, it's not an innovation, and saying that Linus "proposed" it is misleading.
ok your right. we'll stop. what were we thinking?
would you consider being a member of the board ?
no really. you are so right.
I'll stick with my 1984-vintage Macintosh, thanks.
I always felt that one the advantages of *nix+X over that other OS was that the UI processes where not part of the kernel as a high priority, so that some UI glitch didn't lock the whole machine up. Sure, by doing so, it makes the system feel more responsive (feel responsive=feel faster if you don't know better, this is why M$ did this I propose), but fairly problematic when one of them misbhaves (and you can't switch to a console to kill of a rogue application). Or did I just miss the point ? SB
Since I would like to keep using my ass for sitting on, this is not the type of question to post to Torvalds, but maybe someone here can enlighten me:
Why is there not more effort being put into making the scheduler real-time and pre-emptive (and I don't mean pre-emptive at the application level, but all the way down to the driver level)?
I know the SMP support solve some of the pre-emptive issues, but all in all these scheduler patches sound very kludgy. Is it because the unix subsystem precludes such a thing, or is the kernel design just too far off to make this work, or is there simply no desire because these patches are considered a 'better' approach?
For example, are context switches extremely expensive for the Linux kernel?
This is NOT intended as flaimbait, just true interest.
It is official; Netcraft confirms: Linux is dying
One more crippling bombshell hit the already beleaguered Linux community when IDC confirmed that Linux market share has dropped yet again, now down to less than a fraction of 1 percent of all servers. Coming on the heels of a recent Netcraft survey which plainly states that Linux has lost more market share, this news serves to reinforce what we've known all along. Linux is collapsing in complete disarray, as fittingly exemplified by failing dead last in the recent Sys Admin comprehensive networking test.
You don't need to be a Kreskin to predict Linux's future. The hand writing is on the wall: Linux faces a bleak future. In fact there won't be any future at all for Linux because Linux is dying. Things are looking very bad for Linux. As many of us are already aware, Linux continues to lose market share. Red ink flows like a river of blood.
Redhat is the most endangered of them all, having lost 93% of its core developers. The sudden and unpleasant departures of long time Redhat developers Michael Evans and Timothy Buckley only serve to underscore the point more clearly. There can no longer be any doubt: Redhat is dying.
Let's keep to the facts and look at the numbers.
Mandrake leader Jacques states that there are 7000 users of Mandrake. How many users of Slackware are there? Let's see. The number of Mandrake versus Slackware posts on Usenet is roughly in ratio of 5 to 1. Therefore there are about 7000/5 = 1400 Slackware users. SuSE posts on Usenet are about half of the volume of Slackware posts. Therefore there are about 700 users of SuSE. A recent article put Debian at about 80 percent of the Linux market. Therefore there are (7000+1400+700)*4 = 36400 Debian users. This is consistent with the number of Debian Usenet posts.
Due to the troubles of Walnut Creek, abysmal sales and so on, Mandrake went out of business and was taken over by Redhat who sell another troubled OS. Now Redhat is also dead, its corpse turned over to yet another charnel house.
All major surveys show that Linux has steadily declined in market share. Linux is very sick and its long term survival prospects are very dim. If Linux is to survive at all it will be among OS dilettante dabblers. Linux continues to decay. Nothing short of a miracle could save it at this point in time. For all practical purposes, Linux is dead.
Fact: Linux is dying
"the problem is due to excessive spurgel-production in the VM frobnicator"
Nothing like letting a linux box with say Redhat 7.3 (KDE), Evolution, 4 xterms, Mozilla, Galeon, XMMS get jittery.
Go to xterm, try to unzip a 1 gig zip file (on a HD on that box) and the open mozilla and drag the window around...
Wait wait wait, mouse quits moving... Then it starts jumping all over the screen. Time for a coffee.
This is part pager and part interactive task/busy background task thing that these patches try to fix.
That was a big turn off of the 2.4 kernel for me.
m
It is official; Netcraft confirms: Linux is dying
One more crippling bombshell hit the already beleaguered Linux community when IDC confirmed that Linux market share has dropped yet again, now down to less than a fraction of 1 percent of all servers. Coming on the heels of a recent Netcraft survey which plainly states that Linux has lost more market share, this news serves to reinforce what we've known all along. Linux is collapsing in complete disarray, as fittingly exemplified by failing dead last in the recent Sys Admin comprehensive networking test.
You don't need to be a Kreskin to predict Linux's future. The hand writing is on the wall: Linux faces a bleak future. In fact there won't be any future at all for Linux because Linux is dying. Things are looking very bad for Linux. As many of us are already aware, Linux continues to lose market share. Red ink flows like a river of blood.
Redhat is the most endangered of them all, having lost 93% of its core developers. The sudden and unpleasant departures of long time Redhat developers Michael Evans and Timothy Buckley only serve to underscore the point more clearly. There can no longer be any doubt: Redhat is dying.
Let's keep to the facts and look at the numbers.
Mandrake leader Jacques states that there are 7000 users of Mandrake. How many users of Slackware are there? Let's see. The number of Mandrake versus Slackware posts on Usenet is roughly in ratio of 5 to 1. Therefore there are about 7000/5 = 1400 Slackware users. SuSE posts on Usenet are about half of the volume of Slackware posts. Therefore there are about 700 users of SuSE. A recent article put Debian at about 80 percent of the Linux market. Therefore there are (7000+1400+700)*4 = 36400 Debian users. This is consistent with the number of Debian Usenet posts.
Due to the troubles of Walnut Creek, abysmal sales and so on, Mandrake went out of business and was taken over by Redhat who sell another troubled OS. Now Redhat is also dead, its corpse turned over to yet another charnel house.
All major surveys show that Linux has steadily declined in market share. Linux is very sick and its long term survival prospects are very dim. If Linux is to survive at all it will be among OS dilettante dabblers. Linux continues to decay. Nothing short of a miracle could save it at this point in time. For all practical purposes, Linux is dead.
Fact: Linux is dying
How could they possibly do this without assistance from SCO programmers? It's just too complex for mere mortals.
Sincerely,
SCO
Look at the patch. There's no fancy algorithm, nothing compared to Dijkstra's work at all.
There are various solutions to this problem. It sounds like the Linux kernel people are trying priority inheritance via the messaging system (local sockets). QNX has had that for over a decade. Because QNX does almost everything, including all I/O, by message passing, it has to do this right. In the UNIX world, message-passing was added quite late, in BSD, and X is one of the few interactive programs that uses socket communication on the local machine. Sockets are used mostly to talk across the network. So support for time-critical local sockets isn't very good. UNIX pipes were the original UNIX interprocess communication mechanism, and they were intended as batch-like devices. Sockets look, and work, a lot like pipes. This legacy is the real cause of the problem.
Of course, the reason Linux users actually want this feature is so that they can play their pirated MP3s in the background while using X-windows.
Finally, the annoying mouse hiccups will be gone. On slower machines, I never ran Linux because of this. Maybe we can use this on some more old labs now. Wonder what's going to be in the next M$ Halloween memo...
Actually, I find most software whether open or closed to be a complete waste due to poor design, language choice, unneeded complexity, and years of cruft. Especially the popular packages. While the good (what little there's of it) stuff is rarely in wide use. Why is bloat and complexity more popular than beautiful, simple designs? Furthemore, why do most people insist on using the legacy inferior crap when often better alternatives are available?
X: "network transparancy" is great, however it's not designed for low-bandwidth interconnects. With 24 and 32 bit modes even running X over a 100 Mbit LAN is unacceptable. Of course the bloat, gazillions of libraries, and "standards" don't help either.
X unrelated Unix hall of shame includes: BIND, Sendmail, INN, OpenLDAP, Mozilla, Apache 2.0, UW IMAP, Cyrus IMAP, the IMAP protocol itself, the SMTP protocol, the idiotic requirement for 7 bit data in email and Usenet, etc., etc. Feel free to add your favorite misdesigned, buggy or bloated monster here.
I for one happen to love X11's method of copy & paste. It's so much faster and more convenient than under windows. I like being able to simply select something in one window, then middle-click it into another window without having to enter additional keystrokes or menu commands.
Whenever I'm on a windows box, I groan at having to manually copy after selecting, and not being able to paste with one mouse click.
Remember one person's UI annoyance is another person's UI bliss. }:) That's why we'll never agree!
I've been doing some Safari reading since the Slashdot review a couple of weeks ago, and one book I'm reading is Solaris Internals: Core Kernel Components. One very interesting feature of Solaris is the concept of "scheduler classes". The Solaris kernel is fully pre-emptive and multithreaded. Threads are executed as one of four classes:
Timeshare scheduling class (the default) attempts to evenly share process time across threads.
Interactive class is used for improving performance with windowing applications.
System class is used by the kernel.
Real Time class is used for fixed priority, fixed quantum scheduling.
Now I'm no kernel hacker and couldn't explain the hardcore details if pressed, but this sounds pretty clever and Solaris is a very neat operating system. These scheduler classes are loaded as modules which strongly suggests that they can be plugged in and replaced if necessary.
In 2.4 there were patches that provided realtime and low latency scheduling for the kernel. The new O(1) scheduler is getting positive vibes from the developers from what I've read, but does it cover these bases or are patches still required? In other words, does Linux now scale from realtime embedded to low latency desktop to [whatever NUMA systems require]?
Having just applied the combo patch in question, I can attest to it's incredible improvement. My mouse pointer NEVER lags anymore even while make -j5 bzImage and bzip2'ing a large directory all while playing .ogg files.
This is wonderful. Kudo's and a round of whatever ya drink to the kernel crew.
"The clay can become a bear, but not while it lays cold and wet on the riverbank." -Orson Scott Card, Children of the m
"Of course, the reason Linux users actually want this feature is so that they can play their pirated MP3s in the background while using X-windows."
You're right about me wanting to listen to music in the background while running X, but fuck you for assuming that all Linux users are pirates.
Not to mantion the fact that this technology has more uses than just smooth playback of mp3's.
Asshole.
Any rogue programs erroneously generating kazillions of I/O events will monopolize the CPU. Mind you, everything's a tradeoff. The OS cannot possible know what the difference between a "good" process under heavy load and a "bad" out of control process generating too many events or is in a tight loop. Only the user/sysadmin can determine that.
Anyway - does anyone know if Ingo's low latency patch + Linus' interactivity patch will be committed to the 2.5 tree?
If you're using top to determine that? Then you're getting an erronious reading. Remember the memory on the card is going to show up as well. Also don't forget process-memory sharing.
Once you installed Executive (http://www.megabaud.fi/~petrin/Executive2.html), which is a replacement for the standard Amiga OS task scheduler, you had terrific multitasking on your Amiga. Executive had a dynamic priority scheduler which boosted interactive apps (that got the focus) and that pushed cpu-hogging apps to lower priorities the longer they were running.
You could choose from a multitude of different scheduling mechanisms, dynamically. And you got a whole bunch of system information tools as a bonus.
Another thing that this will greatly improve on Linux is gaming. Gaming tends to be highly interactive, and lowering the operating system's latency will put an end to those little hiccups Linux games sometimes get.
Latency on Linux is totally going to stomp latency on a Microsoft OS. Can't wait to see the benchmarks on that!
Zeta/aka BeOS (not just another re-package, *new*) YellowTAB but slashdot won't let me post about this wonderus OS on the frontpage (or any where), such good guys ..
Or one could simply first purchase a CD, then hereafter the main server could send diffs for the packages that need upgrading. Consume less bandwith and space that way.
Linus Torvalds' Ninnle Linux kernal rules!
Fuck Hooty Linux!
Emphasis on chatty. X is accelerated, it's just overly bandwidth hungry among other things.
Stick your Amiga straight up your ass where it belongs.
Which one of the ten or so architectures that Linux supports should that one official kernel binary be compiled for? i386, because it's what you use? PowerPC, because it's what I use? System/390, because IBM is the shiznit? All of them? Jeez, even Debian, which ships for more architectures than any other distribution, has trouble with that. (Part of why Debian is slow on releases is everything has to compile on PA-RISC and m68k, you know. Debian is not a PC operating system.)
Which compatibility options should be set? Do you want to run that kernel on a broken Toshiba laptop that needs a special flavor of APM to keep from locking up at startup? Do you have a PS/2 with MCA cards, and need that enabled, while nobody else uses it? (Why should the kernel I use suffer from your bloat?) Do you have some funky flavor of Alpha motherboard? Or perhaps do you have the latest Dell high-end server and need a couple of extra patches to keep your system from crashing on the nonstandard motherboard?
In short: If you want a kernel compiled for the particular weirdities of your hardware, get your OEM to do it, or buy from a VAR that does. Some OEMs already do this -- like Dell, on the workstations and servers they ship with Red Hat installed. (Rumors of Dell "dropping Linux support" are greatly exaggerated. They support it just fine on workstations and servers -- just not desktops, which are made with cheap WinHardware to keep the price down.) Yes, the Dell kernel comes with the nVidia driver already installed, since most Dells have nVidia cards. (Though that is changing -- recently, I've been seeing more Radeons in Dells, which is much easier on the software upgrade path.)
Hardware is weird. Even i386 is a lot less "standard", across the entire product universe, than Microsoft and Intel (and Dell!) would like you to think. And -- unlike Microsoft -- Linux (the kernel project, not some distro) does not abandon old hardware and tell people to spend money on upgrades before they can run the latest release. Because of this, it is essentially impossible to make one kernel that is perfect (or even adequate) for everyone. That is why there are so many options in "make menuconfig", and that is why you should expect to build your own kernel (or pay someone to do so) if you want the most out of your hardware.
Just so long as it isn't like the scheduling related to us by our OS prof, where one of the early time sharing systems gave a bit of a boost to terminals after they pressed the enter key.
:)
This way interactive processes gained a slight boost. Of course, they had to rethink their algorithm as soon as someone figured out that by hitting return a lot they could speed up their programs! Oops
The more you know, the less you understand.
The point i was trying to get at is X11 is not End user friendly by any means. Just because it may be powerfull doesnt make it good however most of the time it makes it difficult. Its difficult to configure (something you SHOULD NOT HAVE TO DO) and if you do try to do it by hand its terribly easy to screw up. In regards to the KDE vs WindowMaker someone commented on, I would have to say thats a case of Bloat Vs Streamlined (or stripped). KDE is easier for average Joe to walk up and use then WindowMaker. Since KDE is slow and bloated its also not worth while for Average Joe to use as his primary OS.
To be a good Desktop OS you need ease of use, at this moment X11 doesnt fit that description. Just because you may think Microsoft or even Apple is evil doesnt mean you shouldnt take design tips from them.
A possible solution would be a new X11 Compatable system for those who want it and a solid fast easy to use UI for it for those who dont. I also think we need a Unified UI Toolkit so everything across applications is the same.
It wasn't linus or any of those people ! This is just what SCO was talking about!! There stealing Unix (Tm) secrets and applying them to the linux kernel!
I'm sure the FBI will prove this with tracing phone calls from IBM's secret headquater to linus and his mery men just before this patch!
Patches were available about 4 years ago that did exactly the same thing. But since neither Linus and Ingo made them, they did not get merged.
Mmmmm, kind of. The only thing there is that the packages are binaries, and often a whole load of contents change. And you can't (sensibly) patch binaries. Well, you can but you shouldn't.
SCO will probally decide they own this to.
I thought Maggie shot you?
And where did Smithers go after you told him to get into the Spruce Moose?
You have a LOT of explaining to do...
I am the nightmare of nightmares.
- Selecting the text you want to copy with the
mouse left button.
- Either:
-
Clicking in the destination window position with the left button to get focus and position the pasting point.
- Either:
Now, yes, Windows treats selection of text as simply a highlight function and not a copy, but 99% of the time when you've selected text, you want it copied into the clipboard. X Windows does this automatically and is the correct GUI behaviour - Windows has its default wrong.- Letting go of the mouse and pressing CTRL-C (some users might be able to hold onto the mouse with one hand and use the other to CTRL-C, but most won't) or
- Going to the Edit -> Copy menu item and
choosing that.
[Hint for those who need a clue stick: This is horrible GUI design]- Letting go of the mouse and pressing CTRL-V or
- Going to the Edit -> Paste menu item and choosing that.
[Hint 2 - It's still horrible GUI design]Now you've got the text in the clipboard, what do you want to do with it 99% of the time ? Yep, paste it into a window somewhere. Yet again, X does this by default when you press the middle mouse button...Windows ? Sorry, the default is to ignore the middle mouse button and you have to combo a left-click with either a menu selection or a key-press - BZZZT! It's the wrong default again.
Basically, X Windows has its defaults correct and Windows has them wrong - it's twice as fast for a user to cut'n'paste (which is all users do with selections 99.99% of the time) in X Windows than Windows.
I just might drop Linux.
Network transparency kicks some royal arse that the best efforts of VNC and Terminal Server can't compare to. I can just hop over to another box and run its software. It's near realtime on 100mb/s, and I can't wait to try it on 1gb/s ethernet.
Thankfully Linux is a kernel, not a commercial os and X will live on for at least a few more decades. Does anyone know of a compression scheme for X that would make internet use faster?
You can't judge a book by the way it wears its hair.
The stuttering and jittering in GUIs has been a sore spot for me for years that has not improved despite the fact that my PC today is hugely more powerful that the one I had in 1995. It is niggling little points like these that bother 999,000,000 of the world's billion computer users. I am surprised that M$ hasn't addressed this issue sooner. After all, it is the fact that M$ _has_ prioritized these superficial issues over the Very Important and Very Clever issues prioritized by Linux that its OSs are on all those hundreds of millions of user's desktops. Food for thought.
Yeah, X11's method works great.
Until you have to "Cut".
Until you want to Paste-to-replace a text selection. (this is pretty much a deal-breaker for me)
Until you want to copy something other than text.
Other than that it's fine!
Thats the problem, your feature is my misfeature.
:)
For instance, I like it that a non-topmost window can have the keyboard focus. I like the click-drag to copy and click to paste. Those are features not defects.
What you're claiming is tantemount to ''Someone wants their desktop to have a pastel blue color that commercial offerings have had for years, and they are told to go look for an abandoned sourceforge page somewhere''
Desktop design no more revolves around my choice in background color than it revolves around your choice of copy&paste interface. Dare I ask you how easily I could find a program that gives the X semantics above to all windows programs? You'll probably tell me to look at some abandonded CNET download page somewhere. (HOW DARE YOU?!?!?!)
Just because someone somewhere in the past did it differently and you liked that style doesn't make it superior, or inferior.
..wish I could self mod myself to zero with this lame question. Asking because I don't know, and it's probably not possible. But do they make or has anyone made, a mobo with a dual processor for dual processor tasks, then a single processor someplace else on the board, for doing single processor worthy tasks? I would think that might be nifty if it was possible and the software could take advantage of it, especially with multitasking.
Again, I know, most likely lame.
Sure. Now use any method at all to copy between OpenOffice and Mozilla. Let me know when you figure that one out without using a third app. No, X11 cut and paste *is* broken (or rather, there is no standard) and it really ought to get fixed.
What's being described here is called a priority inversion, where a high-priority task makes a request of some service running at a lower priority and gets hung up behind it.
Which is wrong. Did you read the article?
Priority inversion is, as you explained yourself, about a high priority task effectively getting a low priority by being dependend and therefore waiting on a low priority task.
The article is about tasks at the same priority[1]. The task scheduler distinguishes between interactive and non-interactive tasks in order to improve latency where the user cares.
Beforehand, the behaviour failed on a slow, loaded system to recognize the X server as interactive, because then X looks like a CPU-hog[2]. That resulted in freezes of several seconds[3]. Simply speaking, the patch solves this by passing some interactivity points between processes.
You could have easily seen that this is not about priority inversion as one of the suggested work-arounds was to simply increase the niceness of the X process (which wouldn't help, if priority inversion had been the problem).
Regarding QNX: As good as it is as a RTOS, as bad it fails to do something sensible when you have too much processes at the same priority. Having a reasonably working system presumes that each task is assigned an appropriate priority. Of course, the people at QNX did a decent job on the default priorities.
[1] It may have an impact on tasks of different priority. I did not care to investigate that aspect, because that is of minor importance to what the patch is about.
[2] And for the scheduler, interactivity is determined by a process going to sleep often (by waiting for interaction).
[3] For non-interactive processes it is beneficial to do them in larger hunks, i.e. let 5 seconds other processes do their work, then work 5 seconds, instead of having 0.01 second slices and do the switching all the time.
Keep an eye on which arguments are silently dropped in replies. Not always, but often times it's very telling.
How do you copy URLs into a browser? I usually end up doing something like this:
1) Select URL
2) Switch to browser window
3) Click on location bar in browser, being careful not to select anything
4) Hold down Delete for a while
5) Hold down Backspace for a while
6) Middle click in the location bar
Which takes forever. I suppose I could:
1) Switch to browser window
2) Select location bar contents
3) Press delete
4) Switch back to source window
5) Select url
6) Switch back to browser window
7) Middle click in location bar
Which is even more steps, but there's no "hold down delete and wait" step, which speeds things up a bit. But still, the other way:
1) Select URL
2) CTRL+C
3) Switch to browser window
4) Select location bar contents
5) CTRL+V
Make is very easy. I still can't figure out how to do this in a reasonable amount of time in Linux (assuming the apps are broken. Like, say, Evolution->Galeon)
Erik
Why not? People do it all the time on other OSes.
Games on Windows for one, come to mind.
Besides with Distro's like Gentoo. Just keep the source disk around, and everytime one needs to upgrade, insert disk (or at least an image of one). Now yes one will have to draw a line at which one sends the whole thing vs a diff (75%?). It's that or wait till everyone has Broadband.
some users might be able to hold onto the mouse with one hand and use the other to CTRL-C, but most won't
OK, I admit that I've developed a slightly condescending view towards Windows users over the years, but I think you're taking it a tad far.
My 'C' key is 3 inches from my 'ctrl' key. Only small infants or the physically diasbled will have a problem doing Ctrl-C in one hand.
While we're on it, I think that the ability to "replace selection with clipboard contents" is a nice feature that windows (and KDE) gets right.
Ah, you don't patch the binary, though (not usually). You just replace the whole file.
When you treat tasks differently, you're prioritizing them. All the priority information isn't necessarily encoded into the UNIX-type priority number. This is a nomenclature distinction between "priority" in the formal sense of "who gets the (a) CPU", vs. the classical UNIX representation of priority numbers.
or use X apps that don't "lob" pixmaps over the stream.
Obliquewindowmoving works fine, that's handled on the local end of things.
I'm playing xbill over my lan now on wifi(12mb/s), well written X apps work fine.
You can't judge a book by the way it wears its hair.
So, when will this be finalized?
Feature freeze was supposed to be back at the end of October. When can we have final bits?
(Before you ask, yes, I am more than capable of running a development kernel. But I'm old enough now to have other things to do with my life. I need the tested goods.)
Can we have 2.6? Soon, please?
I had a professor that related a trick for elevating the priority of programs on some older multi-user systems. [I don't know if any existing systems really work this way any more.]
:)
The process scheduler on these systems would prioritize a process into the background (batch) if it constantly used up it's time slices. BUT, if a process looked interactive it would be given a higher priority than normal (this was necessary to impress the users). The "looks interactive" criteria could be met by printing to the console occasionally.
He said all you needed was the equivalent of 'print ".\n";' somewhere in the processing loop and your compute intensive program would finish long before all the other guys back in background priority! Poor other guys.
This kind of loop-hole may be something people wish to keep mindful when dealing with scheduler patches. Reading the list conversation, I'm glad that it looks like Linus has given it some thought.
Why not? People [patch binary executable files] all the time on other OSes. Games on Windows for one, come to mind.
No. As Gordonjcp mentioned they replace binaries, for precisely the reason you state next:
Now yes one will have to draw a line at which one sends the whole thing vs a diff (75%?).
A fellow often sees such an effect from a whole-program compiler optimization or from re-engineering to fix bugs, especially when the compiler uses a different register allocation or when the developer has added or removed a field or method from a class.
It's that or wait till everyone has Broadband.
I would rather not sit still for over seven years while the local cable monopolies and the local telephone monopolies get their collective poop together and push the price of broadband down to where dial-up is today. I know people who are still on 33.6 because they are banned from working and have parents too poor to fit a modem into their disposable income.
Will I retire or break 10K?
Maybe it's just me, but I *like* the X selection system. A windows-bound colleague of mine the other day exclaimed in jealousy when she saw me cutting and pasting between editors... Windows is just so damn clumsy.
To answer your question, I
1) Click on the browser desktop-icon to open a browser window
2) Highlight my URL with the 1st mouse button
3) Position my mouse over the URL bar, and click the middle button
4) There is no (4)
Simple, yes ?
Simon
Physicists get Hadrons!
This is a common misconception. You're confusing the clipboard with the primary selection. Cut and paste works just like Windows', and is in fact more powerful.
X's clipboard is generally handled with interprocess communication, not buffers. If you select something, the application claims the primary selection. Middle-clicking somewhere else will ask the application to send the selection.
Copy and Paste use the clipboard, which is entirely separate. Edit/Copy in Mozilla claims the clipboard, setting its value to the current selection. As you have to select the text first, this must overwrite the primary selection, but selecting something else will change the selection without affecting the clipboard. Try selecting something in Mozilla, ^C, then select something else. Middle-click and ^V will enter different things. If you ignore the primary selection, this is exactly the same as Windows, but the ability to select and paste short items quickly using only the selection can be very useful - especially as it doesn't affect the clipboard.
Unfortunately it's impossible to use the clipboard in xterm; you have to use the selection. You can cut and paste between most other applications, though. Another problem was in an old implementation of (IIRC) Qt, which overwrote the clipboard whenever the primary selection changed. This is fixed in the latest version.
Uf you're not familiar yet, see PicoGUI for an insight how they do things differently.
Yeah? Ninnle sucks!
Hooty Linux rules!
Ugh. I don't buy it.
To put it in perspective, lots of Unix has a big organization problem. X is just emblematic. It's "lower-level" APIs are a big stinking mess. Ever tried to program against it without a super-high-level bit of middleware? Then let's talk about how nice it is. If you're not up on this, try reading JWZ's rants on it (many written as he was porting Netscape)? X is a 4 foot high sandwich of crap, layer after layer between you and the display, full of massive, sucking complexity, the bugs, inefficiency... even during this supposedly wonderful "network transparent" windowing this foul stew shows its colors, as no combination of two applications or X servers quite looks the same. It's a verifiability nightmare, too, of course (and for instance, disabling X's many attempts to listen and talk on the network are one of the first things you do to secure a machine properly - and for real security, you avoid installing X altogether).
The API design itself is atrocious. The much-touted "flexibility" is really code for laziness - it was a lot of work to do a proper GUI, so no one did it. The mishmash of X server extensions, window managers, font handling systems, etc. that's been cobbled together has led to a nightmare for both programers and users, as any given application doesn't just require "X", but a complex recipe of libraries and versions, and an end-user experience where no two applications look or act the same... or even remotely similar... Where cutting and pasting between windows is a pipe dream, and young geniuses still struggle to configure fonts properly for linux distributors.
Or to just put it plainly, as my friend (who from time to time would write X windows gadgets) would say, it's only about twice as hard as managing the video memory yourself.
"And thank god it's not all standardized, or we'd never have had all those wonderful experiments with different ways to do a GUI that never actually happened." In practice, no system is immune from its initial design choices, and it's been an endless series of awful MacOS knockoffs, multi-button madness, color-pallete spinning goofiness. Is X11 a "GUI experimenters toolbench?" Then I think it's time for something a little more grounded in everyday realities of computer use.
I'm not even warmed up yet. I mean, X is still peppering the filesystem with a hedge-maze of exotically formatted text files describing the hex colors of every pixel of the trim of every window for a variety of appliations and classes in a complex inheritance and assignment scheme that few X developers even understand. Check it out, your XDefaults are "human readable."
Shall we even discuss its security model?
Modern Linux has tried to make its peace with X through wrappers, and we write against Tcl/Tk, Qt, inside the Gnome or KDE framework, and yet still the focus groups come back crying... we try to blame overfamiliarity with windows, but the problems are bigger... all of Unix (and of course Linux) suffers from the same class of problems that X does; as, for instance, an application needs to prompt you to insert a series of CD's, but there is no "single, authoritiative, standard" place to go find out what CD drives are installed on the computer, and what their device names are (yes, we know what they _usually_ are), and finding out if any of the CDs are already inserted involves parsing the text output of a proc file or a mount command, and so on and so forth... And all of this is being done by a messy bash script... so it's no surprise this functionatlity is broken even in, for instance, RedHat's own v8 package manager... I hope you can grasp the metaphor.
It's a mess. Patches won't clean it up. Frankly, it's time we took the whole GUI back to the drawing board. But even if MacOS is the end-all/be-all, we can do it a hell of a lot better than we do in X.
Following are some choice quotes from Don Hopkins' essay:
X-Windows is the Iran-Contra of graphical user interfaces: a tragedy of political compromises, entangled alliances, marketing hype, and just plain greed. X-Windows is to memory as Ronald Reagan was to money. Years of "Voodoo Ergonomics" have resulted in an unprecedented memory deficit of gargantuan proportions. Divisive dependencies, distributed deadlocks, and partisan protocols have tightened gridlocks, aggravated race conditions, and promulgated double standards.
X has had its share of $5,000 toilet seats -- like Sun's Open Look clock tool, which gobbles up 1.4 megabytes of real memory! If you sacrificed all the RAM from 22 Commodore 64s to clock tool, it still wouldn't have enough to tell you the time. Even the vanilla X11R4 "xclock" utility consumed 656K to run. And X's memory usage is increasing.
...
X was designed to run three programs: xterm, xload, and xclock. (The idea of a window manager was added as an afterthought, and it shows.) For the first few years of its development at MIT, these were, in fact, the only programs that ran under the window system. Notice that none of these program have any semblance of a graphical user interface (except xclock), only one of these programs implements anything in the way of cut-and-paste (and then, only a single data type is supported), and none of them requires a particularly sophisticated approach to color management. Is it any wonder, then, that these are all areas in which modern X falls down?
...
As a result, one of the most amazing pieces of literature to come out of the X Consortium is the "Inter Client Communication Conventions Manual," more fondly known as the "ICCCM", "Ice Cubed," or "I39L" (short for "I, 39 letters, L"). It describes protocols that X clients ust use to communicate with each other via the X server, including diverse topics like window management, selections, keyboard and colormap focus, and session management. In short, it tries to cover everything the X designers forgot and tries to fix everything they got wrong. But it was too late -- by the time ICCCM was published, people were already writing window managers and toolkits, so each new version of the ICCCM was forced to bend over backwards to be backward compatible with the mistakes of the past.
The ICCCM is unbelievably dense, it must be followed to the last letter, and it still doesn't work. ICCCM compliance is one of the most complex ordeals of implementing X toolkits, window managers, and even simple applications. It's so difficult, that many of the benefits just aren't worth the hassle of compliance. And when one program doesn't comply, it screws up other programs. This is the reason cut-and-paste never works properly with X (unless you are cutting and pasting straight ASCII text), drag-and-drop locks up the system, colormaps flash wildly and are never installed at the right time, keyboard focus lags behind the cursor, keys go to the wrong window, and deleting a popup window can quit the whole application. If you want to write an interoperable ICCCM compliant application, you have to crossbar test it with every other application, and with all possible window managers, and then plead with the vendors to fix their problems in the next release.
In summary, ICCCM is a technological disaster: a toxic waste dump of broken protocols, backward compatibility nightmares, complex nonsolutions to obsolete nonproblems, a twisted mass of scabs and scar tissue intended to cover up the moral and intellectual depravity of the industry's standard naked emperor.
Using these toolkits is like trying to make a bookshelf out of mashed potatoes.
- Jamie Zawinski
...
The fundamental problem with X's notion of client/server is that the proper division of labor between the client and the server can only be decided on an application-by-application basis. Some applications (like a flight simulator) require that all mouse movement be sent to the application. Others need only mouse clicks. Still others need a sophisticated combination of the two, depending on the program's state or the region of the screen where the mouse happens to be. Some programs need to update meters or widgets on the screen every second. Other programs just want to display clocks; the server could just as well do the updating, provided that there was some way to tell it to do so.
...
.Xdefaults", but if he happens to have copied Fred's .xsession, he does an xrdb .xresources, so .Xdefaults never gets read. Susie either doesn't xrdb, or was told by someone once to xrdb .Xdefaults. She wonders why when she edits .Xdefaults, the changes don't happen until she 'logs out', since she never reran xrdb to reload the resources. Oh, and when she uses the NCD from home, things act `different', and she doesn't know why. "It's just different sometimes."
.xresources (or was it a file that was #included in .xresources) of the form *fucked*fontList: 10x22, which he copied from Steve who quit last year, and that of course that resources is 'more specific' than his, whatever the fuck that means, so it takes precedence. Sorry, guy. He can't even remember what application that resource was supposed to change anymore. Too bad.
What this means is that the smarter-than-the-average-bear user who actually managed to figure out that
snot.fucked.stupid.widget.fontList: micro
is the resource to change the font in his snot application, could be unable to figure out where to put it. Suzie sitting in the next cubicle will tell him, "just put it in your
Joe Smartass has figured out that XAPPLRESDIR is the way to go, as it allows him to have separate files for each application. But he doesn't know what the class name for this thing is. He knows his copy of the executable is called snot, but when he adds a file Snot or XSnot or Xsnot, nothing happens. He has a man page which forgot to mention the application class name, and always describes resources starting with '*', which is no help. He asks Gardner, who fires up emacs on the executable, and searches for (case insensitve) snot, and finds a few SNot strings, and suggests that. It works, hooray. He figures he can even use SNot*fontList: micro to change all the fonts in the application, but finds that a few widgets don't get that font for some reason. Someone points out that he has a line in his
...
On the whole, X extensions are a failure. The notable exception that proves the rule is the Shaped Window extension, which was specifically designed to implement round clocks and eyeballs. But most application writers just don't bother using proprietarty extensions like Display PostScript, because X terminals and MIT servers don't support them. Many find it too much of a hassle to use more ubiquitous extensions like shared memory, double buffering, or splines: they still don't work in many cases, so you have to be prepared to do without them. If you really don't need the extension, then why complicate your code with the special cases? And most applications that do use extensions just assume they're supported and bomb if they're not.
Want to Know How to Cheat the GPL? Read On!
You could have easily seen that this is not about priority inversion as one of the suggested work-arounds was to simply increase the niceness of the X process (which wouldn't help, if priority inversion had been the problem).
You're completely wrong.
Do you know anything about X11? The client is a seperate process. It waits on the X server to do its drawing and get its input. There's the problem - the X server is not keeping up with the client. Nicing up a process to make it more responsive is a classic symptom of this. Priority inversion applies perfectly.
Unless the user wants to spend half their waking days learning (or dealing with) the intricacies and bugs of bad desktop systems, definitely go Xandros.
For starters, Xandros is Debian based which does give the advantages that you mention in regards to stability and ease of upgrade. However, much more significantly Xandros takes care of all the manual work that you would need to put in (unless you want to go under the hood which it will let you do). Reasons to go Xandros:
1) Install. Hands down the best. Again read the reviews, but it has phenomenal hardware detection, handles all the partioning (including NTFS), allows for customization if you want it, and has a huge success rate.
2) Refinement. The engineers at Xandros touched pretty much every package on the system, fixing bugs in the open source versions of KDE and all the apps they package so that everything pretty much works like it should. They also did tight integration between the kernel, debian, and the desktop so that when you do something like stick in a usb flash memory, it pops right up in the file manager.
3) Compatibility. If you want to browse or run on windows networks, Xandros auto-configures samba for you (in case you haven't gotten that Phd yet). The delux version ($99) also comes with Code Weavers CrossOver so that you can run MS Office (still the best unfortunately), Lotus, and soon Photoshop.
4) Leadership. Not only is xandros the best desktop now, but they are working on very cool stuff and will likely extend their lead. I would strong recommend going with the technology leader here rather than dealing with enduring pain and lack of functionality.
Check out the reviews (posted at www.xandros.com) or do a search on any review done on it. It is the hands down winner. Make life easy for yourself...
Hunger is the best sauce.
Well, gnome2 and kde3 have made a standard to use a second buffer in X.
This means that if you mark anything and use ctrl+c, you can use ctrl+v to paste the same thing.
Just as in windows. Problem solved.
Off cause not _all_ apps is using this feature (even though it is an X standard). But not all apps in windows does this either (think Java).
The thing that is still missing is copying of content other than text. Images, formatting and so on.
I don't understand why they haven't implemented mimetypes in copying in X.
Heck all they need is an escape character, so people could define what to send.
Well, I'm sure it will come in a not too distant future.
But the keyboard copying problem, is soon a thing of the past.People who comes from windows, will not even notice that the mouse also can paste.
In Mozilla under linux, all I have to do is
1)Select URL
2)Move mouse into browser window (I use focus follows mouse)
3)Middle click in any blank space of the webpage
Then Mozilla loads the webpage.
Try the equivalent of "the other way" -- use
some keyboard accelerators.
1) Select URL
2) Click somewhere in location bar, not highlighting anything.
3) Ctrl-A
4) Ctrl-K
5) Middle-click in location bar, press enter
Or, if you are using Mozilla:
1) Select URL
2) Middle click somewhere in the browser pane
3) There is no 3
(You might have to enable this under preferences
somewhere -- i've had it this way for so long i've forgotten how)
Seems pretty fast to me.
X-Free my arse...X-Mess is more like it. You can rationalize it all you want, but the simple fact is, X-Free is a big giant mess.
Sure, network transparency, being able to run X remotely from another computer, is great, IF you want to do that. Most people don't. I have one computer at my home -- no need to ever use the GUI from remote. If I want to access it, I'll be accessing files and transferring them to a computer at work -- whcih is what ssh is for.
Because of the big mess that X-Free is, I set up a pretty minimal desktop GUI, which is fine with me. I've always hated candy-desktop appearances, like OS X. Me, I stick with WindowMaker (in combo w/ PWM), Xfce for my desktop, and no anti-aliasing along with plain themes and hide-away stuff. Also, I don't -- not on my Debian GNU/Linux OS, or Windows (w/c I use for games) -- make it redraw the windows as I move them. What a waste. I want instantaneous responses to my actions, so I get rid of all animations and crap like that.
So, my GUI's run pretty smoothly (except when I'm using Kazaa on Windows). However, that's only because of my minimalism, and doesn't justify or excuse X's sloppiness and enormous bloat. (I'm not going to complain about MS' bloat b/c MS never bothers to address real problems and I'm never upgrading WinME...I have all the games I want, and I think thatt future games coming out I'll want [like Tomb Raider 6] will support Win9x for a long long time).
Of course, there's other disgusting problems in X, like not being able to copy and paste between windows, and the atrocious lack of standards for that and other things. I don't think we should throw out X -- just massive rehaul to get rid of this slop, not bandaid-treatments. Also, make a version of it for normal home users, who won't be sharing GUI's between multiple PC's.
social sciences can never use experience to verify their statemen
it is a 4 processor board with 3 processors in it.
You are correct. This difference was, why I used "niceness" vs. "priority". Niceness being the priority the user chooses, while priority being the one the system calculates.
That said, the article is still talking about tasks at the same priority (in your sense). Is is not about how much time of a minute a task gets (which is priority), but in how much slices the tasks gets it (which influences latency).
It may be that the "interactive points", which were tweaked, also influence the priority, but the part worth an article was that getting the latency right was much improved.
Keep an eye on which arguments are silently dropped in replies. Not always, but often times it's very telling.
Could someone wake me up plz,
is Linux NOW really focusing on Usability
for NORMAL USER ?!
'Normal users' can't "just increase the priority"
^^^^^^^^^^^^^^
Ya I'm sure my grandma will open an xterm,
su root and type nice -prio xwhatever,
every now and then, I mean this is so intuitive,
see run 'ps -uax' find those little pid,
figure out which one is the MESSY one
and renice it, repeat.
Glad to see Linus in our USABILITY camp.
If more Linux Hacker could wake up and put more USABILITY in their damn apps, maybe we could
finally kill Windoze once for all.
- A usability hacker =P
Oh wait. You can't.
If the user isn't at the box banging away, the "interactive" processes are blocked in a poll() or read() call and don't do anything except sleep.
I recently ran Tuxracer for the first time. This is a dual-boot Win98/RH7.3 machine.
I saw much higher FPS numbers when running Tuxracer in Linux than in Win98 -- the max fps under Win98 was about 60, while under Linux, it was 140!
"The Tao of Linux" is a fine piece of work. Wise and funny ... as the Tao of anything should be!
-kgj
Your assesment of X11 cpu usage is untrue (This goes for Windows as well). XAA plugs Xlib calls into a video card's 2D acceleration hardware. If there is a fault here performance wise it is only that X11 primitives can be (by now) too "primitive". Still, now that 4.3 is out everything in the GUI can be passed off to the GPU in some way via DGA, XAA, and XRENDER. Owners of older ATi cards (up to the 8500) can also benefit from DRI without using a propietary driver.
In contrast, Aqua's toolkit api translates into Display PostScript which is rendered to a raster image (perhaps this gets a GPU boost, one would hope), which is then turned into a OpenGL texture (under Jaguar). That texture is then sent to the GPU to be manipulated via GL. Now that might sound neet-o, but barring some old fashioned 2D GPU work with the PostScript to raster image layer, your video hardware under OS X does nothing but move windows around. The rest is plain cpu based integer crunching.
Here's how you can see this for yourself. Open Terminal.app and set it up with 50% transparency on a busy desktop. Grab the title bar and move it around. See how nice that was? It's very smooth and visually pleasing no? Of course it is. That's because GL hardware is working it's magic by moving what it considers a texture to a new part of the screen and then applying it's hardware alpha to render the final desktop. Voila!
Now try something different. Install fink and try to do some actual terminal based work. (NOTE: If things don't go smoothly be sure to harrass the maintainer. He owes you. If things do go well use fink to create and sell cdroms full of free software without crediting the toolmaker . If that went well, sell T-shirts with your logo to believers of the one true path
Select text in Mozilla, go to OpenOffice, middle click. There. That wasn't so hard, was it?
You're completely wrong.
The word completely and the fact that you left out most of my posting (and concentrate on a minor part of it) don't go well together. Yes, my example was wrong (mixed up who was waiting). The other statements still stand.
Do you know anything about X11? The client is a seperate process.
Man, of course. Or else, talking about priority inversion, which is defined to happen between at least two tasks wouldn't make much sense. Opposite question: Did you read the lkml thread the article refers to?
It waits on the X server to do its drawing and get its input. There's the problem - the X server is not keeping up with the client. Nicing up a process to make it more responsive is a classic symptom of this.
Correct. But this has nothing to do with priority inversion, yet. This can happen just as well when both tasks have the same priority and there is just not enough free CPU power. And guess what? That is the discussed case.
Here, you can increase responsiveness (that is, decrease latency) by changing how big the slices are (i.e. whether to give 10x0.01 secs or 1x0.1 secs). While changing priority effectively changes how much time slices you get (2x0.1 or 5x0.1)
Priority inversion applies perfectly.
Only if you define priority to include everything what could influence the time until a task is executed (including interrupt mask and so on). Then, yes, time slice layout would be part of the priority and you'd call it that.
The classic understanding is more about which task is scheduled to come first and for preemptive kernels, also which task may preempt another.
Btw, due to the reference to QNX in the original post I understood that the classic sense was meant, because QNX only knows about explicit priorities (what Linux calls niceness) and does simply round-robin or FIFO for tasks of the same priority, depending on system settings. No other magic involved (at least according to the white papers).
Keep an eye on which arguments are silently dropped in replies. Not always, but often times it's very telling.
if you read carefully what the article says, linus simply said it would be a boost, but the scheduler author applied it and "nothing short of amazing". As in nothing even remotely close to amazing.
Just be grateful X requests aren't sent in XML. Were X designed today, on today's "fast" hardware, some bright spark would probably decide that the advantages of making everything XML and putting an XML parser in the server outweigh the performance hit of parsing each request (which today's 2.4GHz SMP machines are up to, anyway).
Heh, nice to see them giving up and implementing the priority boost. I wish them the best luck implementing the detection of "foreground" tasks, with an user interface with so little contact with the processes it serves
Don't you know what this patch is about? Well, ever noticed how on Windows the three/four most used programs among the currently open tend to display their windows instantly when switching between them, not cause the disk to swap at all, be generally more responsive? It's because the Win32 subsystem gives foreground tasks a slight sheduling priority boost, and frees up background tasks' unused resources (the on-screen buffers of windows, I guess) as required by the foreground tasks' needs
You (and I mean you, random Slashdotter talking out of your ass) can easily see how X11 can't possibly compete on equivalent hardware, no matter how hard they try:
Make a difference - use Windows! (open source clone of Windows NT)
Are there any X11 developers out there (or at least someone in the know) that can comment on the actual PLANS for XFree? So far I see several legitimate criticisms, one being the hardware access/busy waiting issue, and another being the mess that is the way XFree reads resources. When I was first introduced to X, right off the bat, the fact that it was a "special" application that had its own drivers to do direct hardware access, and the mind-boggling resource system, stood right out at me. Although X is great for many things, and although a lot of people spew hot air about it, I feel there are legitimate outstanding issues. As someone who is highly anticipating Linux kernel 2.6, and the potential for Linux on the desktop, I think these are very valid concerns.
The XFree86 page is rather spartan, and I get NO idea what the roadmap for XFree looks like.
It's 10 PM. Do you know if you're un-American?
the vax scheduler would give a good boost to processes just after an i/o read completion.
Sounds like a typical Linus idea to me. So obviously right that you can't imagine why you wouldn't do it.
It's got nothing to do with gui's. It's not a hack like the windows priority bar or nicing X. It basically states that if you have a CPU bound process which lots of interactive tasks use then the server should get a "caffeine" shot too.
X is just an easy example. It quickly gets CPU bound but can have lots of interactive clients depending on it. End result of this patch being the interactive clients respond better because the server is getting more processor in response to them existing. It automatically responds to usage patterns too.
Oh yeah, and for those who slam X you've missed the core formula here. There need to be enough people who see sizable and fixable weaknesses in X to create a demand for a replacement. By and large X is decent and getting better, so such demand is marginal. There have been efforts to "fix" X but most have withered and died. This is how open software works.
I guess you don't know any Mac users.
When I'm finished using the computer, I just get up and walk away. After a while, it realizes I'm gone, and goes to sleep. While asleep, it uses so little electricity it doesn't matter.
When I want to use the computer again, I walk up to it and touch the keyboard or mouse. There's my desktop again, instantly, with no boot time.
Now, why the hell would I ever want to turn it off?
The original poster is right. People turn computers off either because they have crappy computers that don't support deep sleep mode, or because they have crappy software that needs reboots.
GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
My browser window almost always already has a URL in the location bar. Basically, I'm wondering how you replace text? (like a url in the location bar)
Erik
That's sweet. Thanks for the tip.
Erik
I have a relatively old and slow system: 120 MHz Pentium CPU, 16 meg RAM. Under Win95, I have no problem whatsoever playing MP3s with maplay 1.2+
On Linux, however, even the slightest load on the system causes MP3 playback to stutter. One of the MP3 players has a command-line option to increase buffering. This helps, but why is it my responsibility to turn on buffering?
It's just aggrivating that supposedly inferior Windows has no trouble with this while Linux does. Hopefully this patch will fix it.
X is the downfall of Linux.
.. built in these last few years. What is holding us back?
It's as dirty as windows.
Take it away.
There is as much a need for a completely new system as there was a need for Linux in the first place.
X is broken. Horribly broken. Beyond repair.
How can we put so much effort into fixing a pile of rubble? We could easily have had an amazing new fast and minimal, yet just as configurable system as Xfree,
I just don't understand why I'm stuck with X.
in EE terms that would FM...Fucking Magic
If Mr. Edison had thought smarter he wouldn't sweat as much. --Nikola Tesla
NO 2.6 for you! NEXT!
$current_computer_revolution rules!
OK, here's my question: I don't run dev kernels on my main box here, so how long can I expect to wait before this patch makes it into a stable kernel? I expect there's no chance it will be backported to 2.4, so the real question is how long until 2.6 (or 3.0?) comes out? I heard "early 2003" several months ago. Is that still a reasonable timeframe?
"Anything is better than IE, and you can quote me on that." -- Wil Wheaton.
No one that uses windows (99% of the computing mass) will give a rat's rear about this. More geeks licking each other's ear, but pointless to humanity.
If anything, Linux is becoming the next MS
Now, *that*, I have to say, is bordering on the flamebaitish -- yes, I see what you're trying to say, but that's a kind of offensive way to phrase it.
Uh...check out Windows 2000 scheduling algos.
It's not exactly the same thing, though even Linus mentioned it (rather offensively, IMHO, to Ingo). Windows has a simple heavy priority boost it gives to the foreground app. That works fine if you're working in a fairly modal manner on a single-user system and you have a desktop-with-foreground-and-background paradigm as a fundamental part of the OS.
Linux's scheduler takes a somewhat more ambitious (granted, that probably means you can trick it more nastily) approach, partly because it has a more general, more difficult task. From what I can tell from skimming the conversation, Ingo's work is something more along the lines of advancing the traditional UNIX approach of "this app didn't use (or is tending not to use) its full timeslice, maybe because it's blocking on I/O, so give it higher priority to get another timeslice than an app that *did* use its full timeslice". He's just doing somewhat more sophisticated automatic classification of whether an app is "interactive" or not.
Yes, on the very surface, it's similar in goal. Make the task that the user is working with get more cycles at appropriate times to reduce latency of interface response. However, the approach is very much different, and the potential benefits are higher (since this automatically addresses a wide range of apps, not just making the foreground app peppier to keep scrolling snappy).
I *will* give you that this has little to do with open source. I suspect that there are plenty of closed-source systems that have tried to do more advanced classification of apps as interactive or noninteractive.
May we never see th
Because if it were Linux would have been working like this 10 years ago.
The interactivity still wasn't perfect, but it was noticably better. Now if I can just track down and apply Ingo's patch as well....
Democracy is two wolves and a lamb voting on what to have for lunch. Liberty is a well-armed lamb contesting the vote.
Qnx real time os and Be is multithreaded . Is linux behind these operating systems in handling processes or threads?
Isn't there a backport for this [the O(1) scheduler] for 2.4?
Herein lies the difference. My browser window always pops up with (I think it's about:blank or something similar) as its' initial URL - anyway the URL area is empty.
:-)
If I want to overwrite existing text, I double-click the offending URL and hit delete first, but in general I don't need to do this.
I use linux as my desktop at home and at work, I'm a programmer by trade. Since we all check in and out via CVS, it's up to me which OS I use. Linux makes my life a lot easier
I have a double-headed machine, normally with (say) 5 or 6 editor windows open - cutting and pasting is a common task, and it's just so much easier to do it all with the mouse, for me, at least. I guess everyone has their own way....
Simon.
Physicists get Hadrons!
You sez:
"2.5.54 is far slicker on the desktop than 2.4.x
I don't blame ya.
With 2.4.x kinda die a s-l-o-w death, due to the super-sluggish-performance by that ultra-non-slick-maintainer
Muchas Gracias, Señor Edward Snowden !
You sez:
"Linux isnt going to be truely Desktop friendly
until X11 gets replaced with something that
doesnt completely suck."
For a much less-suck thingy, try enlightenment 0.17. Website at http://www.enlightenment.org
Muchas Gracias, Señor Edward Snowden !
I find it amazing Linus and crew get any code done when they write a 5 line patch then spend 15 posts in lkml to debate it. And that's just Linus posts that kerneltrap found interesting.
"tar -zxf FOO.tar.gz; cd FOO; ./configure; make; make install"
No mouse, no stupid dialogs, just type it within seconds and turn off the power of your monitor. When the next time you turn on your monitor, there would be a fully-optimized software for you!
Is there a way on slashdot not to see poster above #200 000 ?
Some days I really want to see good posts.
I'm not trolling, just fed up.
The speaker, a guy who I had not heard of before but had clearly been working on computer security for decades, argued that both Windows and Linux had fscked up security majorly by letting drivers run in ring 0 and thus giving them access to everything in the kernel (for instance, letting your video driver quietly monitor your network traffic). His argument was that the x86 had the facility to run drivers in ring 1, thus quarantining them from touching hardware they weren't supposed to.
I don't understand the internals of the x86 well enough to know how much actual security that would add, and I would also argue that I would much prefer an open source driver running with unlimited privileges to a closed-source driver in a sandbox.
The other issue is that shifting drivers out of ring 0 might affect performance quite a lot, and if there's no real gain in security (or stability, because it would also be some protection against a badly-written driver screwing the whole system), it's probably not worth the bother.
Any sufficiently advanced technology is indistinguishable from a rigged demo
--Andy Finkel (J. Klass?)
I suppose there are several real-time efforts going on, but I'm curious about why this is one that Linus supports while he seemed set against the preemptible kernel. So is there a connection? Is this the next revision of the preemptible kernel code?
They officially measure boot time as the time from turning on the power to the time when the "Start" button shows up on the screen.
So all sorts of things get twisted around, delayed, etc. by the OEMs just to make that damned button "clickable", even though the action which is supposed to follow that click won't happen for almost a minute.
Last year we drove across the country... We switched on the driving...
every half mile. We had one cassette tape to listen to on the entire trip.
I don't remember what it was.
-- Steven Wright
- this post brought to you by the Automated Last Post Generator...