Red Hat 8.0 Reviewed
Jon writes "Eugenia from OSNews is giving Red Hat 8.0 a run for its money. She posted a very detailed and balanced review for the new version of Red Hat, which aims to be a "business desktop". Very interesting article and discussion over at OSNews." Several people also sent in the stories from InternetNews as well as LinuxPlanet.
You can read a users take on Red Hat 8 and KDE here/ I'll update it soon with screenshots and soem more info on the services bug.
Ahemm. Watch out, Apache 2.0 will bite you in the ass if you're not careful.
Null used Apache 2.0 as apposed to 1.3.26 in RH 7.3. So yer default config files are now somewhere else, and all of your carefully massaged virtual things are now nowhere to be found. It can be fixed pretty easy, just RTFM.
There are probably a few more "gotchas" but that one stuck out like a sore thumb.
I may be bad with names, but I'll never forget your IP address
Many things, like Flash Player and Acrobat Reader are available on the Applications CD.
We don't put closed source, or binary only software into the distribution itself, that's what keeps our distro fully GPL'd.
As for the decision behind not shipping mp3 players, that has more to do with the nature of mp3 patent licensing and royalty scemes. There used to be very clear terms allowing us to ship such things, but that seems to be changing, at least enough to put it in the gray area.
That said, nothing is stopping an end user from getting any of the software they are used to having on Red Hat Linux, we chose to err on the side of caution and not become someone's test case for litigation down the road.
On the other hand, try using Ogg Vorbis instead of mp3. It's not so encumbered with gray area, it's open and patent/royalty free.
And anyone having run a few benchmarks knows
1) Compiling for Pentium sucks on anything who is not a true Pentium. On a PII/PIII and on the K6 (I don't have access to an Athlon or PIV) they are markedly slower than code optimized for the 386 and much slower than code compiled with -mcpu=i686
2) Using the -march=i686 allows gcc to use PII/PIII specific instructions but benefits are small (about 2%) respective to -mcpu=i686 so you throw away universality for little benefit. Mandrake uses -mcpu=i686 -march=i586 but gcc is not smart enough to use 586 instructions when optimizing for 686 so it silently reverts to plain -mcpu=i686.
3) For those packages where 386-only instructions don't make sense since they have perfoarmnce-critical parts written in assembler (kernel, glibc, sasl) RedHat ships packages specific to the PII/PIII family who are compiled with -march=i686 (full optimizations) and another set specific to the Athlon compiled with -march=athlon.
Insightful.
/dev/yourharddrivenamehere. Significantly reduces "jerkiness" in X when doing disk access, including paging. For a long time, a lot of distros left this off by default.
.9 + Sound Blaster Live! with the emu10k1). It's not worth it. 99.99% of Linux users will never, ever need network transparency or any other features that you get with a sound server. They *do* want sound that doesn't break up, and having hardware mixing does that for them. Ye gods, it'd be nice to see Linux have some architecture that does "opportunistic" mixing (hardware mixing if any channels are left, software if not).
I'd also like to point out that I've done a bit of benchmarking gcc, and optimizing for a particular processor makes almost no difference on the vast majority of software.
The biggest win comes from flipping on -O3. Then if you can get away with it, -fomit-frame-pointer, which helps the register-starved x86, but keeps you from looking at stack traces and debugging crashed programs (or sending in useful bug reports). -fexpensive-optimizations have also helped a bit too, and for certain packages, -ffast-math can be big. -march=pentium2 makes next to no difference on anything I've tried benchmarking. -DNDEBUG is potentially good...seems like most production software is compiled with assertions enabled, when they're really intended for debugging.
The Pentium 1 sucked at running code compiled for the 386/486. This is why you got compilers like pgcc, a Pentium-optimized Mandrake distro, and lots of talk about architecture optimizations. With the Pentium 2, Intel realized that all software was not going to be recompiled for each processor (at least in Windows land), and did a really solid job of running 386 code.
So, as far as architectures go, the Pentium 1 is the odd man out. If you have a Pentium 1, it sucks to run any code other than stuff compiled for your chip. If you have anything else, you'll generally get very minimal gains from compiling specifically for your processor instead of for the 386.
Finally, most people don't actually care about the maybe 10% speedup they can get by recompiling software using optimization flags other than just -O2. They care about interactive latency. Look at Mac OS X. OS X is *hideously* slow, but it *feels* pretty fast because it has good UI latency -- it jacks UI priority and puts a lot of emphasis on slapping something on the screen that's updated as soon as the user does anything.
On Linux, here are the big culprits.
Jack the nice value of X from 0 to -10, if your distro doesn't already do so (take a look in top and see what it's running at). The nice value doesn't make it much "faster", but it does significantly improve latency, so you can get crisp edge-flipping and updating.
Turn *on* DMA and umasked interrupts (insert usual warnings about potential problems with *really* old computers having these on). hdparm -u1 -d1
If you're doing something that doesn't need low latency in the background, *nice* it. I run all compiles niced to 20. I can be compiling six or seven packages with no user-perceptable slowdown at all. Software that's always sucking down a little CPU in the background but still should be interactive (like lopster or gtk-gnutella) should be niced to 5 or so.
Make all your cron jobs run at nice 20 (crontab -e, edit command line to contain nice -n20). They have no reason to demand interactive latency, and you *do* need said latency for your UI.
If you run any servers on your workstation, they should run around nice 10. They need to get back to the user, but they shouldn't make your UI get unpleasant when they get hit.
Renice esd/artsd to -15. If these don't get CPU *right away* when they need it, your sound will break up. Frankly, I dumped esd/artsd, and got a sound card with hardware mixing (ALSA
Use a decent window manager. Sawfish is incredible if you're an edge-flipping maniac like me and like zero edge resistance. Why? Sawfish is actually not that *fast*, but they've compensated for that fact, which makes them beat any other window manager I've seen at edge flipping latency. Sawfish doesn't block other app redraws when edge flipping until it's redrawn its titlebars, as other WMs do, so you get much faster redisplay of app windows. Beautifl design.
Finally, I've had good experiences with redefining HZ in the kernel. Unfortunately, one of the side effects of using the X11 architecture is that anything going to the screen has to wait for a context switch -- first, the app tells X to display something, then we wait until X is active and actually display it. This isn't a huge deal unless you have a bunch of processes that all want CPU time, and you have an app or X that's blocking on I/O (say you've paged out an app). Then your ten compiles, and the lowly default 100 HZ in the x86 kernel mean that it takes a full tenth of a second just to move from the user app to X. If the app is displaying a big pixmap that has to be paged it, it has to draw a little bit, start paging the thing back in, draw a little more...it's I/O bound and yet it isn't gettting a chance to keep the ATA bus saturated. Jack HZ to 1000 or 1024 and recompile your kernel, and you should notice slightly better UI latencies (NOTE: at one point, this caused oddities in some libc call lke usleep or something, and made a couple games run too fast...I don't think this is an issue any more).
Other wins: Use mozilla 1.1 (much faster redraw than 1.0), use an up-to-date version of gtk2 (wow, the version RH is packaging is much faster at rendering aa text than the old snapshot I had from Ximian), use the blisteringly fast rxvt instead of the slow gnome-terminal or konsole. Use gnuserv mode in emacs/emacs -- that way, you open a *single* copy of emacs and then just open new windows in it. Opening files is about 50 times faster.
After following all these tips, you can play with Linux the way it was meant to be seen.
May we never see th