Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

New Ext3 vs ReiserFS benchmarks

CmdrTaco posted more than 12 years ago | from the numbers-and-rollbacks-and-journals-oh-my dept.

Linux 191

An anonymous reader writes "Saw this new benchmark on the linux-kernel mailing list. Although NAMESYS, the developers of ReiserFS has many benchmarks on their site, they only have one Ext3 benchmark. The new benchmark tests Ext3 in ordered and writeback mode versus ReiserFS with and without the notail mount option. Better than expected results for Ext3. Big difference between ordered and writeback modes."

Sorry! There are no comments related to the filter you selected.

REPLY WITH PR0N! (-1, Troll)

Anonymous Coward | more than 12 years ago | (#3873778)

Reply to this FP with pr0n to claim it!

-DFW - Banned!

Ok. (-1)

JismTroll (588456) | more than 12 years ago | (#3873951)

Here's some pr0n. []

Thanks for the FP, even though you had no claim to it anyway, you fucking worthless AC.

The results are in (-1)

l33t j03 (222209) | more than 12 years ago | (#3873787)

Windows file systems blow them both away. Try again next time geeks.

Re:The results are in (1)

baxshep (463848) | more than 12 years ago | (#3873888)

Why do you troll so much? Are you really that bored? I won't even bother sending you benchmarks.


GafTheHorseInTears (565684) | more than 12 years ago | (#3873971)

Yo, VIP, Let's kick it!
Ice Ice Baby, Ice Ice Baby

All right stop, Collaborate and listen Ice is back with my brand new invention
Something grabs a hold of me tightly Then I flow like a harpoon daily and nightly
Will it ever stop? Yo -- I don't know Turn off the lights and I'll glow
To the extreme I rock a mic like a vandal Light up a stage and wax a chump like a candle.
Dance, Bum rush the speaker that booms I'm killing your brain like a poisonous mushroom
Deadly, when I play a dope melody Anything less than the best is a felony
Love it or leave it, You better gain way You better hit bull's eye, The kid don't play
If there was a problem, Yo, I'll solve it Check out the hook while my DJ revolves it

Ice Ice Baby Vanilla, Ice Ice Baby Vanilla Ice Ice Baby Vanilla, Ice Ice Baby Vanilla

Now that the party is jumping With the bass kicked in, the Vegas are pumpin'
Quick to the point, to the point no faking I'm cooking MCs like a pound of bacon
Burning them if they're not quick and nimble I go crazy when I hear a cymbal
And a hi hat with a souped up tempo I'm on a roll and it's time to go solo
Rollin' in my 5.0 With my ragtop down so my hair can blow
The girlies on standby, Waving just to say Hi Did you stop? No -- I just drove by
Kept on pursuing to the next stop I busted a left and I'm heading to the next block
That block was dead Yo -- so I continued to A1A Beachfront Ave.
Girls were hot wearing less than bikinis Rockman lovers driving Lamborghinis
Jealous 'cause I'm out geting mine Shay with a gauge and Vanilla with a nine
Reading for the chumps on the wall The chumps acting ill because they're so full of "Eight Ball"
Gunshots ranged out like a bell I grabbed my nine -- All I heard were shells
Falling on the concrete real fast Jumped in my car, slammed on the gas
Bumper to bumper the avenue's packed I'm trying to get away before the jackers jack
Police on the scene, You know what I mean They passed me up, confronted all the dope fiends
If there was a problem, You, I'll solve it Check out the hook while my DJ revolves it

Ice Ice Baby Vanilla, Ice Ice Baby Vanilla Ice Ice Baby Vanilla, Ice Ice Baby Vanilla

Take heed, 'cause I'm a lyrical poet Miami's on the scene just in case you didn't know it
My town, that created all the bass sound Enough to shake and kick holes in the ground
'Cause my style's like a chemical spill Feasible rhymes that you can vision and feel
Conducted and formed, This is a hell of a concept We make it hype and you want to step with this
Shay plays on the fade, slice like a ninja
Cut like a razor blade so fast, Other DJs say, "damn" If my rhyme was a drug, I'd sell it by the gram
Keep my composure when it's time to get loose Magnetized by the mic while I kick my juice
If there was a problem, Yo -- I'll solve it! Check out the hook while Deshay revolves it.

Ice Ice Baby Vanilla, Ice Ice Baby Vanilla Ice Ice Baby Vanilla, Ice Ice Baby Vanilla
Yo man -- Let's get out of here! Word to your mother!
Ice Ice Baby Too cold, Ice Ice Baby Too cold Too cold Ice Ice Baby Too cold Too cold, Ice Ice Baby Too cold Too cold

booyah (-1)

on by (572414) | more than 12 years ago | (#3873791)

Ifthedesignersof X-Windows built cars, there would beno fewer thanfive steeringwheels hiddenaboutthecockpit, noneof which followedthesame principles-- but you'd beable toshiftgearswith yourcarstereo.Useful feature,that.

- Marus J.Ranum, Digital Equipment Corporation

X-Windows istheIran-Contraof graphical userinterfaces:atragedyof political compromises,entangledalliances, marketing hype, and justplaingreed. X-Windows isto memoryas RonaldReagan was tomoney. Years of"VoodooErgonomics"have resultedin anunprecedentedmemory deficit ofgargantuan proportions.Divisive dependencies, distributed deadlocks,andpartisan protocols havetightenedgridlocks, aggravatedrace conditions, and promulgated doublestandards.

X has had its share of$5,000 toiletseats-- likeSun'sOpen Lookclocktool,whichgobblesup 1.4 megabytes ofreal memory! Ifyousacrificed all the RAM from22 Commodore 64s toclocktool,it still wouldn'thave enoughto tellyouthetime.Even the vanilla X11R4 "xclock"utilityconsumed 656Kto run.AndX'smemory usage isincreasing.

X:TheFirstFullyModularSoftware Disaster
X-Windows started out asoneman'sprojectin anoffice onthefifthfloorof MIT's LaboratoryforComputer Science.Awizardly hacker, who was familiarwith W,awindow systemwrittenat StanfordUniversity aspart oftheVproject, decided towriteadistributedgraphicaldisplayserver.Theidea was toallowaprogram, calledaclient,to run ononecomputer and allow itto display onanothercomputer thatwasrunningaspecialprogramcalled a windowserver.Thetwocomputersmightbe VAXes orSuns,or one ofeach,as longas the computers werenetworkedtogether and eachimplementedtheXprotocol.

[Footnote:We havetriedto avoid paragraph-lengthfootnotesin thisbook,butXhasdefeated usby switching the meaning ofclient and server. Inallotherclient/serverrelationships, the serveris the remotemachinethat runstheapplication(i.e., the serverprovides services, suchas databaseserviceor computational service). For someperverse reasonthat's betterleft totheimagination, X insists oncallingtheprogramrunningon the remotemachine"the client."This program displaysitswindowson the "window server."We'regoingto followXterminologywhen discussinggraphicalclient/servers.So whenyousee"client" think "theremote machine where the application isrunning,"andwhen you see "Server"think"the local machine thatdisplays outputandacceptsuser input."]

The NongraphicalGUI
X was designedto run three programs: xterm,xload, and xclock. (Theidea ofawindow manager was added asan afterthought, and itshows.)Forthefirstfewyearsof its development atMIT, these were, infact,theonly programsthat ran under the windowsystem.Notice thatnone oftheseprogramhave any semblance ofagraphicaluser interface (except xclock),only one oftheseprograms implementsanything inthewayof cut-and-paste (andthen,only a singledata typeis supported), and noneof themrequires a particularlysophisticatedapproach tocolormanagement.Is itanywonder,then,that these are all areas inwhichmodern X falls down?

Ten years later,most computers running X run justfour programs: xterm,xload, xclock, and a windowmanager. And mostxtermwindowsrunEmacs! X has tobe the mostexpensivewayever ofpoppingup anEmacswindow.It surewouldhave beenmuch cheaper and easierto put terminalhandling inthekernel where itbelongs, ratherthan forcing peopleto purchaseexpensivebitmappedterminalsto run character-based applications. Ontheotherhand,then users wouldn'tgetallof those uglyfonts. It'satrade-off.

The Motif Self-AbuseKit
X gaveUnix vendors something theyhadprofessedto wantforyears: a standardthat allowed programsbuiltfordifferentcomputersto interoperate. But itdidn't givethem enough. X gaveprogrammersawayto display windows and pixels, but itdidn't speak tobuttons, menus,scroll bars, oranyof the other necessary elementsof a graphical userinterface. Programmers inventedtheirown. SoontheUnix community had six orso different interface standards.Abunchof peoplewhohadn't written 10linesof codein asmany years set upshop inabrickbuilding inCambridge, Massachusetts,that was the formerhome ofafailed computercompanyandcame upwith a "solution:" the OpenSoftware Foundation'sMotif.

WhatMotifdoes ismake Unixslow.Real slow. A stateddesign goalof Motif was togive the X WindowSystem the windowmanagement capabilitiesof HP'scirca-1988 windowmanagerandthevisual eleganceof Microsoft Windows.We kid you not.

Recipefordisaster:startwith the Microsoft Windows metaphor, which was designedandhand coded inassembler. Build something ontopof three orfour layersof X tolook likeWindows. Callit "Motif."Nowputtwo486boxesside byside,onerunningWindowsandonerunningUnix/Motif.Watchonecrawl. Watch itwither.Watchit dropfaster thantheputsch inRussia.Motifcan'tcompetewith the Macintosh OSor withDOS/Windowsas a deliveryplatform.

MOD PARENT UP! (-1, Troll)

Anonymous Coward | more than 12 years ago | (#3873845)

+5 insightfull

Re:booyah (-1)

TheSpoogeAwards (589343) | more than 12 years ago | (#3873868)

Thank you. That made my day.

The rest of it ... (-1)

on by (572414) | more than 12 years ago | (#3873929)

is here [] . It's a bit out of date though, perhaps some one could update it?

Benchmarks (0, Insightful)

prof187 (235849) | more than 12 years ago | (#3873801)

Granted, you can get some stuff from benchmarks, but I don't really believe them anymore. I mean, you can make a benchmark look good for you by simply using programs that run well w/ it. Don't take this as Linux bashing, because it isn't. I'm just saying that I don't trust benchmarks that much anymore.

Re:Benchmarks (0)

Anonymous Coward | more than 12 years ago | (#3873847)

You need to see 3rd party benchmarks w/ no influence for either side. Other wise Intel says their chip is better and AMD says theirs happens to be while a 3rd party like (insert your fav hardware reviewer here) shows real world tests pitting them head to head.

Re:Benchmarks (2)

fliplap (113705) | more than 12 years ago | (#3874074)

Forget reading the article, did you read the Slashdot posting? Lets see,

First problem: They weren't trying to make anyone look good, this was a 3rd party test.

Second: Why would they try to make anyone look good, neither of the "products" tested are for profit projects. They have nothing to gain from false benchmarks.

Third: How could that be taken as Linux bashing? Both filesystems are linux only, they aren't being compared to anything non-linux nor are you comparing them to anything non-linux.

Please read both the article and posting before you take the "How to post" (early and often) of slashdot very seriously.

Re:Benchmarks (1, Informative)

Anonymous Coward | more than 12 years ago | (#3874134)

Does it seem odd to anyone else that *reading* the ext3fs has a 4X performance gain for writeback vs ordered?

Since ext3fs writes in a way compatible with ext2fs, shouldn't you get (at least somewhat close to) the same speed reading it nomatter how it was written?

Re:Benchmarks (-1, Flamebait)

Anonymous Coward | more than 12 years ago | (#3874192)

I rememember one laughable episode from recent history. Various operating systems were tested "out of the box" to see which fared best. As with most good competitions there were winners and losers. The funny part is that the losing operating system's fans whined and cried like baby children and demanded that their system receive professional configuration and tweaking before it was benchmarked. They demanded a "do over".

Of course, the whole point of the benchmark was "out of the box" to begin with, so a professionally configured "do over" by one participant queers all the results. What were we supposed to conclude from such a bogus methodology?

Re:Benchmarks (-1)

Bitter Old Man (572131) | more than 12 years ago | (#3874299)

That Linux users are all braindead fags? And you were surprised?

Anyone care to explain ordered mode? (1, Interesting)

glrotate (300695) | more than 12 years ago | (#3873819)

I think I know what writeback is (like with cache?), but can anyone explain ordered mode?

Re:Anyone care to explain ordered mode? (4, Informative)

*xpenguin* (306001) | more than 12 years ago | (#3873873)

Your question is answered in the Linux ext3 FAQ []

Writeback kicking it (3, Informative)

jred (111898) | more than 12 years ago | (#3873820)

Writeback kicks ordered's ass. They do warn you about it, though:
However, it is clear that IF your server is stable and not prone to crashing, and/or you have the write cache on your hard drives battery backed, you should strongly consider using the writeback journaling mode of Ext3 versus ordered.
I didn't see where "notail" made much of a difference on ReiserFS, though.

Re:Writeback kicking it (2)

alext (29323) | more than 12 years ago | (#3873890)

FWIW, the issue of whether writing to volatile storage counts as a committed transaction has been kicking around for a long time.

I remember in the mid-80s, Stratus and Tandem would duel over TPC benchmarks, and while Stratus did respectably on conventional disk-based writes, they did try to get the TPC council to allow writes to their resilient (duplicated), battery-backed memory to count too. I don't think they succeeded then, and IMHO some rather cruddy PC memory system should not be allowed to count now.

Re:Writeback kicking it (2)

Wesley Felter (138342) | more than 12 years ago | (#3874005)

If you want to be sure that the data is on disk, use fsync().

Re:Writeback kicking it (3, Insightful)

Zwack (27039) | more than 12 years ago | (#3873920)

But if you look at the NAMESYS benchmark comparing ext2 to ext3 and ResierFS then it is clear that for sheer throughput ext2 wins...

IF Speed is your reason for choosing a Filesystem then writeback wins on almost everything in these examples...

But using a Journaled Filesystem isn't usually done for Speed... Unless you count speed booting after a crash. It's done to (more or less) guarantee filesystem integrity after a crash. You may lose data, but you only lose writes that never completed.

So, if you are choosing ext3 with writeback, is it faster than native ext2? I don't know. But it doesn't sound like it is any safer.

Of course, if you're worried about data integrity, you will have a mirror across multiple striped drives using multiple controllers. And then use a Journaled Filesystem to improve boot time.


Re:Writeback kicking it (3, Interesting)

cduffy (652) | more than 12 years ago | (#3874128)

ext3 with writeback is indeed safer than ext2, inasmuch that all corruption will be with regard to the data -- your metadata is still safe.

Now, data corruption can be a Very Bad Thing, depending on what you're doing... but in many cases, preventing metadata corruption (and thus being sure that your filesystem is always usable) is Good Enough.

Re:Writeback kicking it (2, Informative)

electricmonk (169355) | more than 12 years ago | (#3874343)

Of course, if you're worried about data integrity, you will have a mirror across multiple striped drives using multiple controllers. And then use a Journaled Filesystem to improve boot time.

This is a misinformed opinion, at best. Your RAID setup will only save data in the case of hardware failure (i.e. one of your disks fails). It will do nothing about incomplete writes. The whole purpose of journaled filesystems is to ensure that writes completed, to minimize filesystem corruption. It just so happens that the way it does this allows for a faster boot, which is an added bonus.

Re:Writeback kicking it (2)

green pizza (159161) | more than 12 years ago | (#3874304)

or you have the write cache on your hard drives battery backed

I've seen such an option on big external RAID arrays. Makes sense, lets the write cache be written to disk before the power goes out.

I'm curious, though, do any hard drives have this feature? Maybe not a full battery, but perhaps a capacitor to store enough juice to write that 8 MB of cache data down to disk before it's gone for good? Or perhaps some sort of bolt-on option for existing internal drives?

I ask this as I'm an average joe with home-brew and cheap-label servers (I built most, a few are PII Dells and Gateways). My machines are pretty stable, but I only have about 70 minutes of battery backup from my UPS... and there's no way I could justify buying a generator.

Re:Writeback kicking it (1)

electricmonk (169355) | more than 12 years ago | (#3874368)

Why bother? If you have a UPS, all you need to do is let it alert your servers to the loss of external power and the servers can begin a clean shutdown sequence, certainly well within your 70 minute range. Most APC UPSes that I know of have a serial cable hookup. If you have more than one server hooked up to one UPS, I'm sure you could devise someway of one server recieving the power-down signal and broadcasting it to all your other machines over the network.


Anonymous Coward | more than 12 years ago | (#3873823)

My DICK is LONG and my ASS is HAIRY. Spread your honey and ENJOY them both.

Thank you.

I'm spoiled (1, Funny)

Torgo's Pizza (547926) | more than 12 years ago | (#3873833)

I know that I'm stupid for saying this, but after the past few years, a benchmark isn't sexy unless it has scenes of flying dragons or a copied scene from the Matrix on the screen. I must have sold my soul to the devil for saying that.

Re:I'm spoiled (0)

Anonymous Coward | more than 12 years ago | (#3873876)

I must have sold my soul to the devil for saying that.
Actually, you sold it to the Daemon. The matrix was made with FreeBSD. >=)

Re:I'm spoiled (2)

spectecjr (31235) | more than 12 years ago | (#3874034)

Actually, you sold it to the Daemon. The matrix was made with FreeBSD. >=)

He's actually referring to the MadOnion 3DMark2001 benchmark.

If you've never seen it, it's a killer.


Re:I'm spoiled (-1, Offtopic)

Anonymous Coward | more than 12 years ago | (#3874127)

can you give me the devil's phone number?
I have some souls for sale.

As a profane fucking map maker (-1, Troll)

Profane Motherfucker (564659) | more than 12 years ago | (#3873843)

Why the fuck can't people create a simple fucking graphical representation of their data? It would make things so much easier, and make for easy comparisions. Granted, one can fucking manipulate the shit out of graphs to skew the data, but good graphs are possible -- and necessary in this case.

Right now, it's just shitty fucking data. People don't think in spreadsheets.

Re:As a profane fucking map maker (0)

Anonymous Coward | more than 12 years ago | (#3873878)

Well you should like

then, iozone benchmarks at least

Re:As a profane fucking map maker (0)

Anonymous Coward | more than 12 years ago | (#3873892)

Well fsckface, it just so happens that images consume bandwidth. Jeesh.

Re:As a profane fucking map maker (1)

Russ Steffen (263) | more than 12 years ago | (#3873894)

So, did you not read the article? Or did you just fail to notice the nice bar graphs in the result section?

reiserfs (0)

term_0z (583581) | more than 12 years ago | (#3873844)

I am just sticking to reiserfs, and ext2. why?
I really do not know!

Linux is for retards, as is windows! (-1, Troll)

Anonymous Coward | more than 12 years ago | (#3873849)

Linux is for retards, as is windows! Mac pre version X too, but now it uses some good code from BSD cause Linux sux ass!

Linux tries to copy M$ too much, what a joke!

M$ - The M$ way!

Linux - Following the M$ way! With 15,000 fragmented non-standard distros to date.
Not to mention, 'experimental' driver support in the production level kernels. LOL, what a joke!

*BSD - Doing it the industry standard way!

Re:Linux is for retards, as is windows! (0)

Anonymous Coward | more than 12 years ago | (#3873934)

You forgot the part about how there are several *BSD distros, not to mention the fact that OS X's MICRO kernel is slower than the Linux Kernel.

Journaled ext3 vs Reiserfs (3, Informative)

Anonymous Coward | more than 12 years ago | (#3873861)

If you want journeled ext3 data vs, reiserfs with tails and without tails check out:

There are some decent benchmarks there that compare the two as well as extensive NFS tests.

ReiserFS loses data (1, Informative)

Flarners (458839) | more than 12 years ago | (#3873864)

A hash collision in a ReiserFS directory (where two filenames hash out to the same value) causes the older file to BE OVERWRITTEN without so much as a warning. This is a huge design error, and I can't believe they're pushing Reiser as a production-use filesystem. The only way to ensure you never lose data to hash collisions is to use the 'slowest' hash setting; the faster the hash function, the more likely it is to create collisions and leak data. I had a large project lost to a

Speaking of losing data... (1)

Flarners (458839) | more than 12 years ago | (#3873881)

Slashdot cut off my comment! Anyway, you get the idea; don't use ReiserFS unless you don't mind occasionally having files disappear.

Re:Speaking of losing data... (4, Funny)

Fluid Truth (100316) | more than 12 years ago | (#3873927)

Slashdot cut off my comment!

Awww, and here I thought you were trying to give an example of what the ReiserFS did to your data during a hash collision.

Re:ReiserFS loses data (4, Interesting)

delta407 (518868) | more than 12 years ago | (#3873914)

You're on crack. Hash collisions incur only a performance hit, not lost data.

Interesting (1)

Flarners (458839) | more than 12 years ago | (#3874059)

Tell that to my missing /usr/local tree.

Re:Interesting (0)

Anonymous Coward | more than 12 years ago | (#3874084)

You didn't happen to "rm -rf /usr/local", did you? Maybe you got r00ted.

Re:Interesting (2, Insightful)

Anonymous Coward | more than 12 years ago | (#3874226)

My car is missing. Therefore, UFOs from the center of the earth took it. Bigfoot was involved.

Re:ReiserFS loses data (2, Informative)

Albanach (527650) | more than 12 years ago | (#3873955)

SuSE have been pushing ReiserFS for some time. I've certainly been using it for what seems like ages with no noticeable problems.

I'm 110% sure it's saved more files when I've lost power or when something's hung requiring a hard reset than it'd deleted due to hash clashes. What's the likelihood of two files generating the same hash? You talk of increasing likeliness, but don't mention any figures. It's hard to judge without some stats.

As an aside, why didn't you restore your large project from your backup? What do you mean you didn't have...

Re:Can you document that? (5, Insightful)

RockyMountain (12635) | more than 12 years ago | (#3874008)

Can you document the claim that hash collisions cause silent data corruption? Or even that they cause a failure of any sort?

If this is true, surely it must be documented somewhere, or have been discussed in a credible forum? I did a little searching, and didn't find anything. Please post a URL to elevate your comment from unsubstantiated rumor to informative information.

In most hash-based indexing algorithms I know of, hash collisions incur a perfomance penalty, but not a data loss.

Re:Can you document that? (2, Funny)

RockyMountain (12635) | more than 12 years ago | (#3874028)

to informative information.

Informative information? I really ought to use "Preview" before "Submit".

MOD DOWN-UNTRUE: only performance hit no data loss (0)

Anonymous Coward | more than 12 years ago | (#3874015)

Mod the parent down. Hash collide only cause performance hit. Author full of shit

Re:ReiserFS loses data (0)

Anonymous Coward | more than 12 years ago | (#3874045)

This is absolutely false, please mod into oblivion.

Re:ReiserFS loses data (0)

Anonymous Coward | more than 12 years ago | (#3874064)

LOL! One of the better trolls I've seen in a while...dumbass moderators who know nothing about CS modded you up because you sound like you know what you're talking about.

Re:ReiserFS loses data (0)

Anonymous Coward | more than 12 years ago | (#3874075)

Oh bullshit. I've been using ReiserFS for years on server machines and I've never lost a single byte.

Got any proof to back up your claim?

Not a troll! (1, Troll)

Cheshire Cat (105171) | more than 12 years ago | (#3874169)

I don't know how accurate this is because its a bit beyond my technical knowledge. However I know that following a hash collision while using RFS, my /usr/local directory vanished. So there is some truth to the parent post.

Re:Not a troll! (0)

Anonymous Coward | more than 12 years ago | (#3874320)

I agree. It's like the other morning. I went out to get the morning paper; it was still dark. But there was a mockingbird singing on my neighbor's chimney. He kept singing and singing. About 45 minutes later the sun came up. I've been thinking about that all week. Without a doubt, that mockingbird singing made the sun rise.

Your bong had a hash collision (4, Funny)

gregor_b_dramkin (137110) | more than 12 years ago | (#3874197)

... that's why you lost your data. It annoys me to no end when people assume a cause for a problem and begin to state it as fact without verification or fact.

Is it possible that there is a bug in reiserfs? Sure. I just don't trust anecdotal evidence from some dood on /.

Small (Big?) Surprise. (2)

dinotrac (18304) | more than 12 years ago | (#3873899)

One thing in these benchmarks surprised me just a bit:
that reiser would do so well on the heavy-throughput/large file test.

I've been laboring under the perception that reiser was good for randomly accessing small files, but paid a performance penalty when going after large ones.

Guess I'm still waiting to prove that no one can be wrong about everything! ;0)

No way.. (-1, Flamebait)

iONiUM (530420) | more than 12 years ago | (#3873902)

NTFS can beat both of them!

Re:No way.. (0, Offtopic)

FooBarWidget (556006) | more than 12 years ago | (#3874012)

Actually, NTFS is slower than FAT. We all know even ext2 outperforms the ancient FAT, but NTFS is slower than FAT!

From: ge/ntfs-p reinstall.asp
"Disk subsystem performance is a critically important factor in overall system performance, and NTFS is generally believed to be slower than FAT."

And from: peratin g-sys/win2kpro/files.shtml
I quote: "NTFS is reliable, but it is slower than FAT 32 format."

Why didn't you quote the rest? (0)

Anonymous Coward | more than 12 years ago | (#3874116)

Actually we know we should not try to mislead when one quotes from seemingly authoritative sources. The entire paragraph from whence you quoted stated:
"Disk subsystem performance is a critically important factor in overall system performance, and NTFS is generally believed to be slower than FAT. However, with a correctly created NTFS volume, NTFS performance optimizations, and improved disk defragmentation, NTFS performance (including the extra "journaling") is equivalent to FAT on small disks and is faster than FAT on large disks."

The rest of the article will help one understand what they mean by "correctly created NTFS volume", etc.

-Me, not U

The other quote is bogus also (0)

Anonymous Coward | more than 12 years ago | (#3874163)

If you take the time to read the paragraph, you will notice that this reviewer contradicts himself. First he states:
"NTFS 5 also comes in the box: it?s a brand new NT file system that adds some security enhancements (losing data is very difficult with this high secure file system) and it's more faster than the FAT32."

A few sentences later he states:
"NTFS is reliable, but it is slower than FAT 32 format."

The reviewer seems very confused. Is it faster or slower than FAT32?

There is no veracity to your claims. At least from these sources.

-Me, not U

Re:No way.. (2)

Sivar (316343) | more than 12 years ago | (#3874022)

Rather difficult to tell considering that you cannot run Qmail or Postfix under Windows. If you have any benchmarks of, say, Microsoft Exchange (ha!) outperforming Postfix, we would love to see them.

No mindcraft, please.

Re:No way.. (1)

iONiUM (530420) | more than 12 years ago | (#3874273)

Actually my original post was supposed to be sarcastic, but when i put in the tags "sarcasm" and "/sarcasm" it filtered them out due to my own stupidity.

Live and learn I suppose.

my decision (5, Insightful)

salmo (224137) | more than 12 years ago | (#3873918)

My decision isn't based on performance. They both are "fast enough" for me. I used to use ReiserFS a while back and it was great. Then I installed Redhat 7.3 on a machine and used ext3 so I didn't have to mess with anything. Yes tinkering is fun... but when I feel like it. Sometimes its nice to have stuff Just Work. Haven't had any problems since and have had a few random power outages.

Also I like the idea that I can read the drive with an ext2 driver from an older kernel or from FreeBSD just in case. In case of what? I don't know, but somehow it makes me feel better.

Re:my decision (1)

zelbinion (442226) | more than 12 years ago | (#3874318)

Also I like the idea that I can read the drive with an ext2 driver from an older kernel or from FreeBSD just in case. In case of what? I don't know, but somehow it makes me feel better.

...How about in case you want to make a disk image with a tool like DriveImage [] that supports ext2, and therefore, in a round-about way, ext3?
Hard disk crash? no problem -- drop in a new drive and the cd with your partition image and you're up in 15 minutes.
Note: I'm not affliated with PowerQuest -- I just buy their software when I've got money left over from buying a book of the new 37 cent US first class stamps...

Re:my decision (2, Interesting)

big tex (15917) | more than 12 years ago | (#3874357)

"Just Works", at least in this case, is partially dependent on distro.
I run SuSE, and installed ReiserFS (version 7.1? 7.2? Sometime around there.) and it "Just Works."
I don't know if it is faster, I've never noticed the difference on my P2-400 home machine.
Got to test it out the other day when the cat sat on the surge protector switch - rebooted like nothing happened. sweeeet.

But Remember (-1, Troll)

Verizon Guy (585358) | more than 12 years ago | (#3873921)

Of course you forgot that you can still run into that retarded "out of inodes" problem in ext3... that's why you keep large data stores on NTFS or some large Sun volume :)

Plus NTFS just recovers from the journal instantly and you're set. Hit the power switch? Not good, but no problem either.

Seriously, which do you rather want?

This: /dev/hda2 was not cleanly unmounted, check forced.
[-------41%-------] blah, blah, blah

Or this?

Welcome to Windows. Press Ctrl-Alt-Del to log on.

Re:But Remember (1)

Russ Steffen (263) | more than 12 years ago | (#3873958)

Personally I'd rather have this one:

3:14pm up 321 days, 22:23, 124 users, load average: 0.84, 0.37, 0.56

Re:But Remember (4, Informative)

EllF (205050) | more than 12 years ago | (#3873960)

*ANY* journally filesystem can recover from an unexpected power loss. With an ext3 system, if you're seeing a check taking place (and you want to prevent such), disable them - in general, they are a holdover from ext2:

tune2fs -c 0 -C 0

However, you should also read this, from the tune2fs man page:

You should strongly consider the consequences of disabling mount-count-dependent checking entirely. Bad disk drives, cables, memory, and kernel bugs could all corrupt a filesystem without marking the filesystem dirty or in error. If you are using journaling on your filesystem, your filesystem will never be marked dirty, so it will not normally be checked. A filesystem error detected by the kernel will still force an fsck on the next reboot, but it may already be too late to prevent data loss at that point.

I cannot speak to the inode issue - I've never run into it myself.

Re:But Remember (0)

Anonymous Coward | more than 12 years ago | (#3873994)

ummm I think you are thinking of ext2. ext3 recovers just fine.

Just the other night I was trying to program during a thunderstorm. My pc was reset by powerspikes at least ten times (no I do not learn), and ever time my pc came right back up without having to scan the entire partition.

Re:But Remember (1)

Verizon Guy (585358) | more than 12 years ago | (#3874027)

Just the other night I was trying to program during a thunderstorm. My pc was reset by powerspikes at least ten times (no I do not learn), and ever time my pc came right back up without having to scan the entire partition.

Next time, I suggest standing outside with a golf club outstretched to the sky.

Re:But Remember (1)

forevermore (582201) | more than 12 years ago | (#3873998)

OK, you lost me here. I work with a couple of NTFS partitions, containing a total of 2-4 million small files (about 40 gigs total, split on two 40 gig drives), and when my machine crashed the other day, it took OVER AN HOUR before it finished its mandatory file check. Not to mention the fact that it takes windows about a minute and a half to "find itself" after the bios checks and begin booting whenever I have to restart. Hell, I even tried to format one of the drives in FAT32 since it handles small files better, but the Win2k programmers decided that no one should format Fat32 partitions larger than 32 gigs (and you can't unless you use something other than Win2k)

My linux box (not quite as many files) recovers its ext3 journal seemingly instantly after any crash (oh wait, it doesn't crash) or forced reboot (I'll admit that sometimes it's just easier to reboot the machine than try to restart X when the screensaver won't power my monitor back up)

Re:But Remember (1)

robhancock (136922) | more than 12 years ago | (#3874095)

NTFS is a journaled file system (similar to ext3 writeback mode, I believe). It shouldn't even be running a chkdsk on bootup for an NTFS volume, unless perhaps it detects something really wacky with the file system..

FAT32, on the other hand, will always run a chkdsk whenever it wasn't unmounted cleanly. For a disk with that many small files, it would likely take even longer than a full NTFS chkdsk (whatever the reason is that that's even running), not to mention the horrific slack waste..

Last Post (-1)

YourMissionForToday (556292) | more than 12 years ago | (#3873935)

Relying on benchmarks to gauge performance is as pointless as brushing your teeth with piss.

You don't need to read any further. Go away.

Re:Last Post (0, Troll)

Verizon Guy (585358) | more than 12 years ago | (#3873938)

No kidding, use pisspaste.

sucks! (-1, Troll)

Anonymous Coward | more than 12 years ago | (#3873949)

Linux sucks!
Mac OS x Sucks!
Windows sucks!
Dos sucks!
BSD sucks!

Re:sucks! (0)

Anonymous Coward | more than 12 years ago | (#3874196)

so what doesn't suck?

Re:sucks! (-1)

diaper_tales (575224) | more than 12 years ago | (#3874256)

solaris and windows nt4.

I just wrote this (-1, Troll)

gazbo (517111) | more than 12 years ago | (#3873950)

Making my way to K5
Clicking fast
Yes, Rusty's an ass
But I don't mind
Staring blankly ahead
Trollin' the gay
Making my way
Through the homo crowd

And I hate you
And I mock you
And now I wonder....

If I could troll
Yet another liberal guy
Do you think time
Would pass me by
'Cause you know I'd snort
A thousand lines
If I could
Just troll you

Re:I just wrote this (-1, Informative)

on by (572414) | more than 12 years ago | (#3874029)

Hey! That's really cool and the best part is you didn't just cut and paste it from some other site like certain [] other [] people [] .

Gurulabs background picture? (1)

PetriWessman (584648) | more than 12 years ago | (#3873953)

Offtopic, but seems to me that the picture that gurulabs is using as background for their web page is ripped from the cover artwork of the album "Rally of Love" by the Finnish band 22-Pistepirkko. Wonder if they have permission for that?

Of course, could be that the album cover is a copy of something that is in the public domain...

Re:Gurulabs background picture? (0)

Anonymous Coward | more than 12 years ago | (#3874143)

GuruLabs has had that logo long before "Rally of Love" was released.

Where either got it from originally, I don't know.

Re:Gurulabs background picture? (1, Informative)

Anonymous Coward | more than 12 years ago | (#3874285)

I took a class from them almost 3 years ago and they were using that graphic then.

Offtopic, good class though.

ext3 writeback vs ext2? (2)

ywwg (20925) | more than 12 years ago | (#3873967)

so what's the point of running ext3 in writeback if (as the faq says) it's exactly equivalent to ext2 "with a very fast fsck"? So is the _only_ gain the fsck time?

Re:ext3 writeback vs ext2? (1)

FooBarWidget (556006) | more than 12 years ago | (#3874032)

But for some people, that appears to be enough...

Re:ext3 writeback vs ext2? (3, Insightful)

sjames (1099) | more than 12 years ago | (#3874058)

so what's the point of running ext3 in writeback if (as the faq says) it's exactly equivalent to ext2 "with a very fast fsck"?

Consider a large tmp volume.

Anywhere where the consequences of finding stale data in a file are no worse than having the data simply missing after a crash. Even a src directory if you do a lot of big makes (since you're best off with make clean ; make after a crash anyway). Just be sure to sync after writing out a source file.

However, as long as performance is adequate, probably better safe than sorry when it comes to filesystems.

Re:ext3 writeback vs ext2? (3, Informative)

Guy Smiley (9219) | more than 12 years ago | (#3874153)

so what's the point of running ext3 in writeback if (as the faq says) it's exactly equivalent to ext2 "with a very fast fsck"? So is the _only_ gain the fsck time?

Well, ext3 with data=writeback is equivalent to how reiserfs has always operated (i.e. if you crash you can lose data in files that were being written to). Using data=ordered is an extra benefit that doesn't have any noticable performance hit unless you are trashing the disk and RAM in a benchmark. FYI, there are now beta patches for reiserfs that implement data=ordered.

Only the fsck time can be a big deal if you have to wait 8 hours while your 1TB storage array is fscking (8 hours is a guess, I don't have that much disk...)

...what I would like to see (2, Interesting)

Bandito (134369) | more than 12 years ago | (#3874036)

I would have wanted to also see a non-journalling filesystem compared against these. Since I'm not currently using a journalled filesystem, it would be nice to see the difference between what I use now (ext2) and the journalled fs's.

Eat it (0)

Anonymous Coward | more than 12 years ago | (#3874053)

all you naysayers who continually bash Redhat for the sake of bashing..

"Why are they using ext3??"

Because it's stable. Because it's backwards compatible. And now, we know it can be fast.

*BSD is dying by poopbot (-1, Offtopic)

Anonymous Coward | more than 12 years ago | (#3874056)

It is now official. Netcraft confirms: *BSD is dying

One more crippling bombshell hit the already beleaguered *BSD community when IDC confirmed that *BSD 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 *BSD has lost more market share, this news serves to reinforce what we've known all along. *BSD 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 *BSD's future. The hand writing is on the wall: *BSD faces a bleak future. In fact there won't be any future at all for *BSD because *BSD is dying. Things are looking very bad for *BSD. As many of us are already aware, *BSD continues to lose market share. Red ink flows like a river of blood.

FreeBSD is the most endangered of them all, having lost 93% of its core developers. The sudden and unpleasant departures of long time FreeBSD developers Jordan Hubbard and Mike Smith only serve to underscore the point more clearly. There can no longer be any doubt: FreeBSD is dying.

Let's keep to the facts and look at the numbers.

OpenBSD leader Theo states that there are 7000 users of OpenBSD. How many users of NetBSD are there? Let's see. The number of OpenBSD versus NetBSD posts on Usenet is roughly in ratio of 5 to 1. Therefore there are about 7000/5 = 1400 NetBSD users. BSD/OS posts on Usenet are about half of the volume of NetBSD posts. Therefore there are about 700 users of BSD/OS. A recent article put FreeBSD at about 80 percent of the *BSD market. Therefore there are (7000+1400+700)*4 = 36400 FreeBSD users. This is consistent with the number of FreeBSD Usenet posts.

Due to the troubles of Walnut Creek, abysmal sales and so on, FreeBSD went out of business and was taken over by BSDI who sell another troubled OS. Now BSDI is also dead, its corpse turned over to yet another charnel house.

All major surveys show that *BSD has steadily declined in market share. *BSD is very sick and its long term survival prospects are very dim. If *BSD is to survive at all it will be among OS dilettante dabblers. *BSD continues to decay. Nothing short of a miracle could save it at this point in time. For all practical purposes, *BSD is dead.

Fact: *BSD is dying

- poopbot: because we're all crapflooders at heart

Ext3 is still EXPERIMENTAL (0)

Anonymous Coward | more than 12 years ago | (#3874062)

Ok, these benchmarks only make real world sense if EXT3 were DONE. It's not.

Don't give me the "oh I've been using it and haven't had any problems" crap. Go into the kernel configuration and see for yourself: ReiserFS is stable, EXT3 is still marked EXPERIMENTAL. There is no way in hell I'd put EXT3 on a server, much less a desktop machine.

Wake me up when EXT3 is done. Until then, Reiser is the only stable journalling filesystem for Linux. (And i can play the game too: I've never had a single problem with Reiserfs..makes me wonder why the hell the Debian Installer makes the false claim that Reiser is younger and less tested than EXT3.)

I have to wonder about the competence... (1, Offtopic)

Sivar (316343) | more than 12 years ago | (#3874071)

...of these guys. They saved the benchmark graphs as JPEG images when a passing glance would make the use of PNG or GIF.

JPEG is better than GIF you moron (-1, Troll)

Anonymous Coward | more than 12 years ago | (#3874174)

Besides, they say that they used OpenOffice for the graphs, and it saves as JPEG.

XFS? (3, Interesting)

Jennifer Ever (523473) | more than 12 years ago | (#3874078)

Any benchmarks on XFS vs. ext3/ReiserFS?

X-Windows article in full (-1, Troll)

Anonymous Coward | more than 12 years ago | (#3874087)

The X-Windows Disaster
This is Chapter 7 of the UNIX-HATERS Handbook. The X-Windows Disaster chapter was written by Don Hopkins. How to make a 50-MIPS Workstation Run Like a 4.77MHz IBM PC If the designers of X-Windows built cars, there would be no fewer than five steering wheels hidden about the cockpit, none of which followed the same principles -- but you'd be able to shift gears with your car stereo. Useful feature, that. - Marus J. Ranum, Digital Equipment Corporation 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: The First Fully Modular Software Disaster
X-Windows started out as one man's project in an office on the fifth floor of MIT's Laboratory for Computer Science. A wizardly hacker, who was familiar with W, a window system written at Stanford University as part of the V project, decided to write a distributed graphical display server. The idea was to allow a program, called a client, to run on one computer and allow it to display on another computer that was running a special program called a window server. The two computers might be VAXes or Suns, or one of each, as long as the computers were networked together and each implemented the X protocol.
[Footnote: We have tried to avoid paragraph-length footnotes in this book, but X has defeated us by switching the meaning of client and server. In all other client/server relationships, the server is the remote machine that runs the application (i.e., the server provides services, such as database service or computational service). For some perverse reason that's better left to the imagination, X insists on calling the program running on the remote machine "the client." This program displays its windows on the "window server." We're going to follow X terminology when discussing graphical client/servers. So when you see "client" think "the remote machine where the application is running," and when you see "Server" think "the local machine that displays output and accepts user input."] The Nongraphical GUI
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?
Ten years later, most computers running X run just four programs: xterm, xload, xclock, and a window manager. And most xterm windows run Emacs! X has to be the most expensive way ever of popping up an Emacs window. It sure would have been much cheaper and easier to put terminal handling in the kernel where it belongs, rather than forcing people to purchase expensive bitmapped terminals to run character-based applications. On the other hand, then users wouldn't get all of those ugly fonts. It's a trade-off. The Motif Self-Abuse Kit
X gave Unix vendors something they had professed to want for years: a standard that allowed programs built for different computers to interoperate. But it didn't give them enough. X gave programmers a way to display windows and pixels, but it didn't speak to buttons, menus, scroll bars, or any of the other necessary elements of a graphical user interface. Programmers invented their own. Soon the Unix community had six or so different interface standards. A bunch of people who hadn't written 10 lines of code in as many years set up shop in a brick building in Cambridge, Massachusetts, that was the former home of a failed computer company and came up with a "solution:" the Open Software Foundation's Motif.
What Motif does is make Unix slow. Real slow. A stated design goal of Motif was to give the X Window System the window management capabilities of HP's circa-1988 window manager and the visual elegance of Microsoft Windows. We kid you not.
Recipe for disaster: start with the Microsoft Windows metaphor, which was designed and hand coded in assembler. Build something on top of three or four layers of X to look like Windows. Call it "Motif." Now put two 486 boxes side by side, one running Windows and one running Unix/Motif. Watch one crawl. Watch it wither. Watch it drop faster than the putsch in Russia. Motif can't compete with the Macintosh OS or with DOS/Windows as a delivery platform.
Ice Cube: The Lethal Weapon
One of the fundamental design goals of X was to separate the window manager from the window server. "Mechanism, not policy" was the mantra. That is, the X server provided a mechanism for drawing on the screen and managing windows, but did not implement a particular policy for human-computer interaction. While this might have seemed like a good idea at the time (especially if you are in a research community, experimenting with different approaches for solving the human-computer interaction problem), it can create a veritable user interface Tower of Babel.
If you sit down at a friend's Macintosh, with its single mouse button, you can use it with no problems. If you sit down at a friend's Windows box, with two buttons, you can use it, again with no problems. But just try making sense of a friend's X terminal: three buttons, each one programmed a different way to perform a different function on each different day of the week -- and that's before you consider combinations like control-left-button, shift-right-button, control-shift-meta-middle-button, and so on. Things are not much better from the programmer's point of view.
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
X Myths
X is a colletion of myths that have become so widespread and so prolific in the computer industry that many of them are now accepted as "fact," without any thought or reflection.
Myth: X Demonstrates the Power of Client/Server Computing
At the mere mention of network window systems, certain propeller gheads who confuse technology with economics will start foaming at the mouth about their client/server models and how in the future palmtops will just run the X server and let the other half of the program run on some Cray down the street. They've become unwitting pawns in the hardware manufacturers' conspiracy to sell newer systems each year. After all, what better way is there to fore suers to upgrade their hardware than to give them X, where a single application can bog down the client, the server, and the network between them, simultaneously!
The database client/server model (the server machine stores all the data, and the clients beseech it for data) makes sense. The computation client/server model (where the server is a very expensive or experimental supercomputer, and the client is a desktop workstation or portable computer) makes sense. But a graphical client/server model that slies the interface down some arbitrary middle is like Solomon following through with his child-sharing strategy. The legs, heart, and left eye end up on the server, the arms and lungs go to the client, the head is left rolling around on the floor, and blood spurts everywhere.
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.
The right graphical client/server model is to have an extensible server. Application programs on remote machines can download their own special extension on demand and share libraries in the server. Downloaded code can draw windows, track input eents, provide fast interactive feedback, and minimize network traffic by communicating with the application using a dynamic, high-level protocol.
As an example, imagine a CAD application built on top of such an extensible server. The application could download a program to draw an IC and associate it with a name. From then on, the client could draw the IC anywhere on the screen simply by sending the name and a pair of coordinates. Better yet, the client an download programs and data structures to draw the whole schematic, which are called automatically to refresh and scroll the window, without bothering the client. The user can drag an IC around smoothly, without any network traffic or context switching, and the server sends a single message to the client when the interaction is complete. This makes it possible to run interactive clients over low-speed (that is, slow-bandwidth) communication lines.

Sounds like science fiction? An extensible window server was precisely the strategy taken by the NeWS (Network extensible Window System) window system written by James Gosling at Sun. With such an extensible system, the user interfae toolkit becomes an extensible server library of classes that clients download directly into the server (the approach taken by Sun's TNT Toolkit). Toolkit objects in different applications share common objects in the server, saving both time and memory, and reating a look-and-feel that is both consistent aross applications and customizable. With NeWS, the window manager itself was implemented inside the server, eliminating network overhead for window manipulation operations -- and along with it the race conditions, context switching overhead, and interaction problems that plague X toolkits and window manager.

Ultimately, NeWS was not economically or politically viable because it the very problems that X was designed to create.

Myth: X Makes Unix "Easy to Use"
Graphical interfaces can only paper over misdesigns and kludges in the underlying operating system; they can't eliminate them.
The "drag-and-drop" metaphor tires to cover up the Unix file system, but so little of Unix is designed for the desktop metaphor that it's just one kludge on top of another with little holes and sharp edges popping up everywhere. Maybe the "sag-and-drop" metaphor is more appropriate for such ineffective and unreliable performance.

A shining example is Sun's Open Windows File Manager, which goes out of its way to display ore dump files as cute little red bomb icons. When you double-click on the bomb, it runs a text editor on the core dump. Harmless, but not very useful. But if you intuitively drag and drop the bomb on the DBX Debugger Tool, it does exactly what you'd expect if you were a terrorist: it ties the entire system up, as the core dump (including a huge unmapped gap of zeros) is pumped through the server and into the debugger text window, which inflates to the maximum capacity of swap space, then violently explodes, dumping an even bigger core file in place of your original one, filling up the entire file system, overwhelming the file server, and taking out the File Manager with shrapnel. (This bug has since been fixed.)

But that's not all: the File Manager puts even more power at your fingertips if you run it as root! When you drag and drop a directory onto itself, it beeps and prints "rename: invalid argument" at the bottom of the window, then instantly deletes the entire directory trwe without bothering to update the graphical directory browser.

The following message illustrates the X approach to "security through obscurity":

Date: Wed, 30 Jan 91 15:35:46 -0800
From: David Chapman

For the first time today I tried to use X for the purpose for which it was intended, namely cross-network display. So I got a telnet window from boris, where I was logged in and running X, to akbar, where my program runs. Ran the program and it dumped core. Oh. No doubt there's some magic I have to do to turn cross-network X on. That's stupid. OK, ask the unix wizard. You say "setenv DISPLAY boris:0". Presumably this means that X is too stupid to figure out where you are coming from, or unix is too stupid to tell it. Well, that's unix for you. (Better not speculate about what the 0 is for.)
Run the program again. Now it tells me that the server is not authorized to talk to the client. Talk to the unix wizard again. Oh, yes, you have have to run xauth, to tell it that it's OK for boris to talk to akbar. This is done on a per-user basis for some reason. I give this ten seconds of thought: what sort of security violation is this going to help with? Can't come up with any model. Oh, well, just run xauth and don't worry about it. xauth has a command processor and wants to have a long talk with you. It manipulates a .Xauthority file, apparently. OK, presumably we want to add an entry for boris. Do:

xauth> help add
add dpyname protoname hexkey add entry

Well, that's not very helpful. Presumably dpy is unix for "display" and protoname must be... uh... right, protocol name. What the hell protocol am I supposed to use? Why should I have to know? Well, maybe it will default sensibly. Since we set the DISPLAY variable to "boris:0", maybe that's a dpyname.

xauth> add boris:0
xauth: (stdin):4 bad "add" command line

Great. I suppose I'll need to know what a hexkey is, too. I thought that was the tool I used for locking the strings into the Floyd Rose on my guitar. Oh, well, let's look at the man page.

I won't include the whole man page here; you might want to man xauth yourself, for a good joke. Here's the explanation of the add command:

add displayname protocolname hexkey

An authorization entry for the indicated display using the given protocol and key data is added to the authorization file. The data is specified as an even-lengthed string of hexadecimal digits, each pair representing one octet. The first digit gives the most significant 4 bits of the octet and the second digit gives the least significant 4 bits. A protocol name consisting of just a single period is treated as an abbreviation for MIT-MAGIC-COOKIE-1.
This is obviously totally out of control. In order to run a program across the fucking network I'm supposed to be typing in strings of hexadecimal digits which do god knows what using a program that has a special abbreviation for MIT-MAGIC-COOKIE-1?? And what the hell kind of a name for a network protocol is THAT? Why is it so important that it's the default protocol name?

Fuck this shit.

Obviously it is Allah's will that I throw the unix box out the window. I submit to the will of Allah.

Anybody who has ever used X knows that Chapman's error was trying to use xauth in the first place. he should have known better. (Blame the victim, not the program.)

Myth: X Is "Customizable" ...And so is a molten blob of pig iron. But it's getting better; at least now you don't hasve to use your bare hands. Hewlett-Packard's Visual User Environment is so cutting-edge that it even has an icon you can click on to bring up the resource manager: it pops up a vi on your .Xdefaults file! Quite a labor-saving contraption, as long as you're omniscient enough to understand X defaults and archaic enough to use vi. The following message describes the awesome flexibility and unbounded freedom of expression that X defaults fail to provide.

Date: Fri, 22 Feb 91 08:17:14 -0800
From: (Gardner Cohen)

I guess josh just sent you mail about .Xdefaults. I'm interested in the answer as well. How do x programs handle defaults? Do they all roll their own?
If they're xt, they follow some semblance of standards, and you can walk the widget tree of an running application to find out what there is to modify. If they're not Xt, they can do any damn thing they want. They can XGetDefault, which doesn't look at any class names, and doesn't notice command line -xrm things.

Figuring out where a particular resource value is for a running application is much fun, as resource can have come from any of the following: (there is a specified order for this, which has changed from r2 to r3 to r4) .Xdefaults (only if they didn't xrdb something)

command line -xrm 'thing.resource: value'

xrdb, which the user runs in .xsession or .xinitrc; this program runs cpp on the supplied filename argument, so shit can have been #included from another planet. Oh, and it #defines COLOR and a few other things as appropriate, so you better know what kind of display it's running on.

file name, pointed to by XENVIRONMENT .Xdefaults-hostname

file name that's the class name of the application (usually completely non-intuitively generated: XParty for xparty, Mwm for mwm, XRn for xrn, etc) in the directory /usr/lib/X11/app-defaults (or the directory pointed to by the XAPPLRESDIR environment variable). The default for this directory may have been changed by whoever built and installed the x libraries.

Or, the truly inventive program may actively seek out and merge resource databases from other happy places. The Motifified xrn posted recently had a retarded resource editor which drops modified resources in files in the current directory as well as in the user's home. On startup, it happily looks all over the place for amusing looking file names to load, many of them starting with dots so they won't 'bother' you when you list your files.

Or, writers of WCL based applications can load resource files that actually generate new widgets with names specified in those (or other) resource files.

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 .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."

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 .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.

Sigh. It goes on and on. Try to explain to someone how to modify some behavior of the window manager, with having to re-xrdb, then select the window manager restart menu item (which most people don't have, as they copied the guy next door's .mwmrc), or logging out. Which file do I have to edit? .mwmrc? Mwm? .Xdefaults? .xrdb? .xresources? .xsession? .xinitrc? .xinitrc.ncd?

Why doesn't all this work the way I want? How come when I try to use the workstation sitting next to mine, some of the windows come up on my workstation? Why is it when I rlogin to another machine, I get these weird X messages and core dumps when I try to run this application? How do I turn this autoraising behavior off? I don't know where it came from, I just #included Bob's color scheme file, and everything went wrong, and I can't figure out why!


Myth: X Is "Portable" ...And Iran-Contra wasn't Arms for Hostages.
Even if you can get an X program to compile, there's no guarantee it'll work with your server. If an application requires an X extension that your server doesn't provide, then it fails. X applications can't extend the server themselves -- the extension has to be compiled and linked into the server. Most interesting extensions actually require extensive modification and recompilation of the X server itself, a decidedly nontrivial task. The next message tells how much brain-searing, eye-popping fun compiling "portable" X server extensions can be:

Date: Wed 4 Mar 92 02:53:53 PST
X-Windows: Boy, Is my Butt Sore
From: Jamie Zawinski []
Subject: X: or, How I Learned to Stop Worring and Love the Bomb

Don't ever believe the installation instructions of an X server extension. Just don't, it's an utter waste of time. You may be thinking to your self, "I'll just install this piece of code and recompile my X server and then X will be JUST a LITTLE BIT less MORONIC; it'll be EASY. I'll have worked around another STUPID MISDESIGN, and I'll be WINNING." Ha! Consider whether chewing on glass might have more of a payoff than what you're about to go through.

After four hours of pain, including such loveliness as a dozen directories in which you have to make a symlink called "X11" pointing at wherever the real X includes are, because the automatically-generated makefiles are coming out with stuff like:


instead of


or, even better,


and then having to hand-hack these automatically-generated makefiles anyway because some random preprocessor symbols weren't defined and are causing spurious "don't know how to make" errors, and then realizing that makedepend, which you don't really care about running anyway, is getting errors because the extension's installation script made symlinks to directories instead of copies, and .. doesn't WORK with symlinks, and and and ...
You'll finally realize that the only way to compile anything that's a basic part of X is to go to the top of the tree, five levels higher than the executable that you actually want to generate, and say "make Everything". Then come back an hour later when it's done making the MAKEFILES to see if there were any actual COMPILATION problems.

And then you'll find yourself asking questions like, "why is it compiling that? I didn't change that, what's it DOING?"

And don't forget that you HAVE to compile ALL of PEX, even though none of it actually gets linked in to any executables that you'll ever run. This is for your OWN GOOD!

And then you'll realize what you did wrong, of course, you'll realize what you should have done ALL ALONG:

$(RM) -rf $(TOP)

But BE CAREFUL! That second line can't begin with a tab.

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.

The most that can be said about the lowest-common-denominator approach that X takes to graphics is that it levels the playing field, allowing incredibly stupid companies to jump on the bandwagon and sell obsolete junk that's just as unusable as high-end brand-name workstations:

Date: Wed 10 Apr 91 08:14:16 EDT
From: Steve Strassmann
Subject: the display from hell

I have a "window system" on my unix box. You see, in the unix world, "system" means "a bunch of unrelated programs." But that's not what I want to talk about here today. I want to talk about overlay planes.

My HP 9000/835 console has two 19" color monitors, and some extremely expensive Turbo SRX graphics hardware to drive them. You'd think that I could simply tell X windows that it has two displays, the left one and the right one, but that would be unthinkably simple. After all, if toys like Macintoshes can do this, unix has to make it much more difficult to prove how advanced it is.

So, what I really have is two display devices, /dev/crt0 and /dev/crt1. No, sorry, I lied about that.

You see, the Turbo SRX display has a graphics plane (with 24 bits per pixel) and an overlay plane (with 4 bits per pixel). The overlay plane is for things like, well, window systems, which need things like cursors, and the graphics plane is to draw 3D graphics. So I really need four devices:
No, sorry, I lied about that. /dev/ocrt0 only gives you 3 out of the 4 overlay bits. The fourth bit is reserved exclusively for the private use of federal emergency relief teams in case of a national outbreak of Pixel Rot. If you want to live dangerously and under threat of FBI investigation, you can use /dev/o4crt0 and /dev/o4crt1 in order to really draw on the overlay planes. So, all you have to do is tell X windows to use these o4 overlays, and you can draw graphics on the graphics plane.

No, sorry, I lied about that.

X will not run in these 4 bit overlay planes. This is because I'm using Motif, which is so sophisticated it forces you to put a 1" thick border around each window in case your mouse is so worthless you can't hit anything you aim at, so you need widgets designed from the same style manual as the runway at Moscow International Airport. My program has a browser that actually uses different colors to distinguish different kinds of nodes. Unlike a PC Jr, however, this workstation with $150,000 worth of 28 bits-per-pixel supercharged display hardware cannot display more than 16 colors at a time. If you're using the Motif self-abuse kit, asking for the 17th color causes your program to crash horribly.

So, thinks I to myself cleverly, I shall run X windows on the graphics plane. This means X will not use the overlay planes, which have special hardware for cursors. This also means I cannot use the super cool 3D graphics hardware either, because in order to draw a cube, I would have to "steal" the frame buffer from X, which is surly and uncooperative about that sort of thing.

What it does give me, however, is a unique pleasure. The overlay plane is used for /dev/console, which means all console messages get printed in 10 Point Troglodyte Bold, superimposed in white over whatever else is on my screen, like for example, a demo that I may be happen to be giving at the time. Every time anyone in the lab prints to the printer attached to my machine, or NFS wets its pants with a timeout, or some file server threatens to go down in only 3 hours for scheduled maintenance, another message goes onto my screen like a court reporter with Turett's syndrome.

The usual X commands for refreshing the screen are helpless to remove this incontinence, because X has no access to the overlay planes. I had to write a program in C to be invoked from some xterm window that does nothing but wipes up after the mess on the overlay planes.

My super 3D graphics, then, runs only on /dev/crt1, and X windows runs only on /dev/crt0. Of course, this means I cannot move my mouse over to the 3d graphics display, but as the HP technical support person said "Why would you ever need to point to something that you've drawn in 3D?"

Of course, HP claims X has a mode which allows you to run X in the overlay planes and "see through" to the graphics planes underneath. But of course, after 3 months of calls to HP technical support, we agreed that that doesn't actually work with my particular hardware configuration. You see, I have the top-of-the-line Turbo SRX model (not one, but two on a single workstation!), and they've only tested it on the simpler, less advanced configurations. When you've got a hip, forward-thinking software innovator like Hewlett-Packard, they think running X windows release 2 is pretty advanced.

Myth: X is "Device Independent"
X is extremely device dependent because all X graphics are specified in piel coordinates. graphics drawn on different resulution screens come out at different sizes, so you have to scale all the coordinates yourself if you want to draw at a ertain size. N ot all screens een have square pixels: unless you don't mind rectangular squares and oval circles, you also have to adjust all coordinates according to the pixel aspect ratio.
A task as simple as filing and stroking shapes is quite complicated because of X's bizarre pixel-oriented imaging rules. When you fill a 10x10 square with XFillRectangle, it fills the 100 pixels you expect. But you get extra "bonus pixels" when you pass the same arguments to XDrawRectangle, because it actually draws an 11x11 square, hanging out one pixel below and to the right!!! If you find this hard to believe, look it up in the X manual yourself: Volume 1, Section 6.1.4. The manual patronizingly explains how easy it is to add 1 to the x and y position of the filled rectangle, while subtracting 1 from the width and height to compensate, so it fits neatly inside the outline. Then it points out that "in the case of arcs, however, this is a much more difficult proposition (probably impossible in a portable fashion)." This means that portably filling and stroking an arbitrarily scaled arc without overlapping or leaving gaps is an intractable problem when using the X Window System. Think about that. You can't even draw a proper rectangle with a thick outline, since the line width is specified in unscaled pixel units, so if your display has rectangular pixels, the vertical and horizontal lines will have different thicknesses enen though you scaled the rectangle corner coordinates to compensate for the aspect ratio.

The color situation is a total flying circus. The X approach to device independence is to treat everything like a MicroVAX framebuffer on acid. A truly portable X application is required to act like the persistent customer in Monty Python's "Cheese Shop" sketch, or a grail seeker in "Monty Python and the Holy Grail." Even the simplest applications must answer many difficult questions:

The PostScript imaging model, used by NeWS and Display PostScript, solves all these horrible problems in a high-level, standard, device independent manner. NeWS has integrated extensions for input, lightweight processes, networking, and windows. It can draw and respond to input in the same arbitrary coordinate system and define window shapes with PostScript paths. The Display PostScript extension for X is intended for output only and doesn't address any window system issues, which must be dealt with through X. NEXTSTEP is a toolkit written in Objective-C, on top of NeXT's own window server. NEXTSTEP uses Display PostScript for imaging, but not for input. It has an excellent imaging model and well designed toolkit, but the Display PostScript server is not designed to be programmed with interactive code: instead all events are sent to the client for processing, and the toolkit runs in the client, so it does not have the low bandwidth, context-switching, and code-sharing advantages of NeWS. Nevertheless, it is still superior to X, which lacks the device-independent imaging model.
On the other hand, X's spelling has remained constant over the years, while NeXT has at various times spelled their flagship product "NextStep," "NeXTstep," NeXTStep," "NeXTSTEP," "NEXTSTEP", and finally "OpenStep." A standardized, consistent spelling is certainly easier on the marketing 'droids.
Unfortunately, NeWS an d NEXTSTEP were political failures because they suffer from the same two problems: oBNoXiOuS capitalization, and Amiga Persecution Attitude(TM).
X: On the Road to Nowhere
X is just so stupid, why do people use it? Beats us. Maybe it's because they don't have a choice. (See Figure 2)
Nobody really wants to run X: what they do want is a way to run several applications at the same time using a large screen. If you want to run Unix, it's either X or a dumb character-based terminal.
Pick your poison.

UFS + soft updates (1)

voisine (153062) | more than 12 years ago | (#3874119)

I'm using soft updates on my BSD system.
It's fast, stable, no fscking after a
dirty reboot. Anyone know of benchmarks
comparing this to ext3 or riser?

Danger, Will Robinson (2, Informative)

Anonymous Coward | more than 12 years ago | (#3874246)

If you are using soft updates and not running fsck after a dirty reboot, then you don't understand soft updates. You are also flirting with loss of data.

Here is what you are missing. Soft updates is a method of ensuring that disk metadata is recoverably consistent without the normal speed penalty imposed by synchronous mounting. The only guarantee that softupdates makes is that your file system can be recovered to a consistent state by running fsck. Soft updates is designed to aid the running of fsck, but does not eliminate the need.

Better get out your Palm add running fsck to your "to-do" list.

Ext3 is fine... (0)

I.T.R.A.R.K. (533627) | more than 12 years ago | (#3874159) long as you're not using it to store anything you plan on keeping for more than a week at a time.
When that bitch crashes, she crashes HARD(and often). Kiss everything you hold dear goodbye.

Why always Linux? (2, Interesting)

evilviper (135110) | more than 12 years ago | (#3874235)

Why doesn't anyone compare UFS/FFS w/softupdates enabled to the Linux filesystems?

Better yet, why did EXT get to be the defacto Linux filesystem, rather than UFS? It outperforms, and supports much large files/filesystems.

A comparison of UFS from a platform other than FreeBSD might be in order.

Journaling (0)

Anonymous Coward | more than 12 years ago | (#3874295)

Softupdates is not the same as a journaled file system. Do your homework. Apples and oranges. Your assignment: write a 1800 word essay summarizing soft updates and journaling file systems. Discuss differences, strengths, and weaknesses of each.

Methinks that you need to crack the books.

As always, it depends on what is on the filesystem (5, Informative)

SwellJoe (100612) | more than 12 years ago | (#3874269)

Yes, folks, some filesystems are faster than others for some type of file.

We benchmark ReiserFS versus all other Linux filesystems about once every 6 months or so, and the last one from about 3 months ago still places Reiser in the "significantly faster" category for our workloads, specifically web caching with Squid.

ext3 is a nice filesystem, and I use it on my home machine and my laptop. But for some high performance environments, ReiserFS is still superior by a large margin. It is also worth mentioning that I could crash a machine running ext3 at will the last time we ran some Squid benchmarks (this was on 2.4.9-31 kernel RPM from Red Hat, so things have probably been fixed by now).

All that said, I'll be giving ext3 vs. ReiserFS another run real soon now, since there does seem to be some serious performance and stability work going into ext3.

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?