If I had my own Linux distribution

I found an interesting editorial called If I had my own Linux Distro. He’s got some good ideas but I wish he’d known what he was talking about on some others.
He says it should be based on FreeBSD because it boots faster than Linux. I thought everyone knew that Unix boot time has very little to do with the kernel? A kernel will boot more slowly if it’s trying to detect too much hardware, but the big factor in boot time is init, not the kernel. BSD’s init is much faster than SysV-style init. Linux distros that use BSD-style inits (Slackware, and optionally, Debian, and, as far as I understand, Gentoo) boot much faster than systems that use a traditional System V-style init. I recently converted a Debian box to use runit, and the decrease in boot time and increase in available memory at boot was noticeable. Unfortunately now the system doesn’t shut down properly. But it proves the concept.

He talks about installing every possible library to eliminate dependency problems. Better idea: Scrap RPM and use apt (like Debian and its derivatives) or a ports-style system like Gentoo. The only time I’ve seen dependency issues crop up in Debian was on a system that had an out of date glibc installed, in which case you solve the issue by either keeping the distribution up to date, or updating glibc prior to installing the package that fails. These problems are exceedingly rare, by the way. In systems like Gentoo, they don’t happen because the installation script downloads and compiles everything necessary.

Debian’s and Gentoo’s solution is far more elegant than his proposal: Installing everything possible isn’t going to solve your issue when glibc is the problem. Blindly replacing glibc was a problem in the past. The problems that caused that are hopefully solved now, but they’re beyond the control of any single distribution, and given the choice between having a new install stomp on glibc and break something old or an error message, I’ll take the error message. Especially since I can clear the issue with an apt-get install glibc. (Then when an old application breaks, it’s my fault, not the operating system’s.)

In all fairness, dependency issues crop up in Windows all the time: When people talk about DLL Hell, they’re talking about dependency problems. It’s a different name for the same problem. On Macintoshes, the equivalent problem was extensions conflicts. For some reason, people don’t hold Linux to the same standard they hold Windows and Macs to. People complain, but when was the last time you heard someone say Windows or Mac OS wasn’t ready for the desktop, or the server room, or the enterprise, or your widowed great aunt?

He also talks about not worrying about bloat. I take issue with that. When it’s possible to make a graphical Linux distribution that fits on a handful of floppies, there’s no reason not to make a system smooth and fast. That means you do a lot of things. Compile for an advanced architecture and use the -O3 options. Use an advanced compiler like CGG 3.2 or Intel’s ICC 7.0 while you’re at it. Prelink the binaries. Use a fast-booting init and a high-performance system logger. Mount filesystems with the highest-performing options by default. Partition off /var and /tmp so those directories don’t fragment the rest of your filesystem. Linux can outperform other operating systems on like hardware, so it should.

But when you do those things, then it necessarily follows that people are going to want to run your distribution on marginal hardware, and you can’t count on marginal hardware having a 20-gig hard drive. It’s possible to give people the basic utilities, XFree86, a reasonably slick window manager or environment, and the apps everyone wants (word processing, e-mail, personal finance, a web browser, instant messaging, a media player, a graphics viewer, a few card games, and–I’ll say it–file sharing) in a few hundred megabytes. So why not give it to them?

I guess all of this brings up the nicest thing about Linux. All the source code to anything desirable and all the tools are out there, so a person with vision can take them and build the ultimate distribution with it.

Yes, the idea is tempting.

Linux gets more attractive on the Xbox

There’s been another milestone in getting Linux running on Microsoft’s Xbox game console. It’s now possible to get it going if you bridge a couple of solder points on the motherboard to enable flashing the unit’s BIOS, then you use the James Bond 007 game and a save game that exploits a buffer overflow, and with a few more tricks, you can unlock the hard drive, put it in a Linux PC, install Linux, then move the drive back to the Xbox and turn it into a cheap Linux box.

Read more

A tribute to Adam Osborne

A tribute to Adam Osborne

One of my Wikipedia entries has been doing some time on the front page. Computer pioneer Adam Osborne (the “Osborne” in Osborne/McGraw-Hill and in the Osborne 1 portable computer) died last week after an 11-year illness. Read more

The Abit BP6 and modern Linux distributions

Mail from Dave T.: I bumped into a place that is selling a used, functional Abit BP6 and a 400MHz Celeron to go with it. I already got another 400 MHz Celeron so it would be perfect. I always wanted to try out SMP but so far I haven't thought it was worth it. Now I can buy this combo and make my dream come true 🙂
I looked for reviews on the board but most of them were from 1999 and early 2000, when Linux was using kernel 2.2 and there also seemed to be problems with bios on the BP6 causing stability issues. None of the reviews were recent.

Being a long time reader I remembered you talking about owning a BP6 and a quick search confirmed that you were running a dual 500MHz BP6. Do you still have it? If I buy the board then I’ll be running Linux of course so I was wondering if you do that as well? How well does it work? Stability? I know that processors in a dual configuration should have identical stepping. If the two are not the same stepping, do you think it will pose a problem? What power supply rating would you recommend for 2x400MHz Celerons?

Thanks,

/Dave T.

The Abit BP6, for those who are unfamiliar with it, was a popular board among enthusiasts back at the turn of the millenium, because it was the first really cheap and easy SMP board. Prior to the BP6, to run dual Celerons you had to resort to some trickery, either soldering on slocket-type adapters or, later, playing with jumpers on them. The BP6 just allowed you to buy a pair of cheap Socket 370 Celerons and drop them on. A lot of people bought Celeron-366s and overclocked them to 550 MHz with this board.

It’s been forever since I’ve mentioned my BP6 because I’ve never found it newsworthy. My main Linux workstation runs on an Abit BP6 with dual Celeron-500s (originally a pair of 366s, which I upgraded a couple of years ago). I bought the board in late 1999 or early 2000 and it’s still my second-fastest PC.

I run Debian Unstable on it, running updates every month or two, so I’m running bleeding-edge everything on it most of the time. The kernel is either at 2.4.19 or 2.4.20. I’ve been running 2.4-series kernels on the BP6 pretty much since the 2.4 series came out, although I’ve changed distributions several times since then. The board has an Intel 440BX chipset, which used to be common as dirt, so I expect even 2.6 kernels and beyond won’t have problems with it.

I haven’t updated the BIOS on my BP6 in years, if ever. I’ve found the system to be stable–the only problems I’ve ever had could easily be attributed to memory leaks. Things would get goofy, I’d run top, and I’d find XFree86 had several hundred megs of memory allocated to it. I’d kill X, and then the system would be fine. So the rare problems I have probably aren’t the board’s fault, but rather the fault of bleeding-edge software. I was confident enough in the system’s stability that this Web site ran on that system for several weeks and I never had problems.

CPUs are supposed to be identical stepping. I’ve seen dual-CPU machines with different steppings work together without having any problems that I could directly attribute to the mismatch. It’s not a great idea and I wouldn’t run my enterprise on a mismatched system–although one of my clients does–but for hobbyist use at home at a bargain price, why not?

As far as power supplies, I ran my BP6 with dual 500s on a 235W box in an emergency. It’s had a 300W box in it for most of its life, so I’d go with a 300W unit, or a 350W unit if you want to overengineer the box a little bit.

Performance wise, I find it adequate but I run IceWM on it, and my primary browser is Galeon. Evolution runs fine on it. Some of the more resource-intensive desktop environments might pose a bit of a problem.

As far as upgradability, if you don’t overclock, the fastest Celerons you can use are Celeron-533s. If you want to do dual processing, you’re limited to the Mendocino-core Celerons. Celerons faster than 366 MHz didn’t overclock well; the limit of the Mendocino core seems to have been around 550 MHz or so.

Adapters to allow newer Celerons to work on the board ought to let you go higher (I haven’t tried it) but the newer Celerons have their SMP capability removed. So theoretically this board tops out at a 1.2 GHz Celeron with an adapter, but that pretty much defeats the purpose of getting a BP6. That’s also probably why they’re cheap when you can find them; the kinds of people who bought these boards in the first place aren’t going to be too happy with two CPUs in the 500 MHz range these days.

But I’m pretty happy with mine. I’ll run it until it dies, and that’ll probably be a while.

What large market for x86 Unix?

What large market for x86 Unix?

In a bizarre turn of events, SCO has sued IBM for not less than $1 billion, claiming IBM willfully destroyed SCO’s business by handing its intellectual property over to the Linux movement.

Read more

Pretentious Pontifications: Tape drives

R. Collins Farquhar IV, Scotsman, and aristocrat. To all whom it may concern. Greeting: One of my associates contacted me today about tape backup units, specifically, a review on Tom’s Hardware Guide. As usual, Tom’s Hardware substantially misses the mark.
I was extraordinarily disappointed that Tom’s Hardware made no mention whatsoever about Intel tape drives. I had my manservant call one of my contacts at Intel for the purposes of having them send me a tape drive, but my contact said that Intel does not make tape drives. Since Intel is one of a very small number of reputable hardware manufacturers, this is the kind of important information that needs to be in a review like this.

I had my manservant ask my contact at Intel which tape drive he would recommend. He recommended the HP SDLT320. Since Intel has a very close relationship with HP, I decided that an HP tape drive might be the next best thing. The Intel contact mentioned–as did the THG review–that the Tandberg SDLT320 is an identical unit. Since I have never heard of Tandberg, I did not even consider it. Any operation I have never heard of is obviously a fly-by-night. Accepting a Tandberg when Intel recommends an HP is akin to accepting a mere Bentley when you sought a real Rolls. Whereas Jacques Pierre Cousteau Bouillabaise Nouveau Riche Croissant de Raunche de la Stenche will settle for a Bentley, I am never willing to settle for a knockoff, even when the alleged difference is only in the front plate or grille.

I was also extraordinarily disappointed that Tom’s Hardware did not test the drives with Microsoft software. Microsoft, as even a tryo or ingenue knows, makes simply the finest software in the world. I would go so far as to call Microsoft the Rolls-Royce of software. So my manservant contacted Microsoft to ask for a copy of their top-flight tape backup software. The Microsoft representative said that Microsoft’s offering came bundled with its server software and is licensed by Veritas. If I wanted something better, I should talk to Veritas. Again, doing so would be to settle for something less than a Rolls. Even though a Rolls from the 1960s used a General Motors transmission, I would never settle for a 1968 Cadillac when what I really want is a 1968 Rolls. I have never heard of Veritas either, so I evaluated Microsoft’s offering and found it to be first-class and worthy of performing the backup needs of any enterprise. That Microsoft would be so generous as to bundle such a grandee application with its server software makes it all the more sweet for those whose means are less aristocratic than my own.

I was pleased when I connected the HP SDLT320 to my main workstation (a prototype 4 GHz Pentium 4 I got from Intel) that my Quake 3 framerates rose to 430 FPS. A serious gamer will want this.

Next, I tried backing up my Quake III CD to the HP SDLT320. I was amazed when the backup took a mere two minutes. I do not know whether to attribute these results to the influence of Intel engineers on HP, or to Microsoft’s sterling software. In all likelihood, it is a combination of both.

These tests prove once again the adage that corporations sufficiently large truly can do no wrong.

I just built a PC

It’s late, so I’ll save a lot of the gory details for tomorrow, but I built a PC over the course of the last couple of days. I did it a little bit differently than the last couple I’ve built.
All prices quoted are from Newegg.com as of last weekend when I ordered this stuff.

Case

I used a Foxconn PC115. It’s a two-tone case that looks like the cases the big brands use. Since a lot of the big brands buy from Foxconn, it’s probably a derivative of the designs Foxconn sells to them. It’s heavy enough gauge steel that you won’t hurt yourself with it. The mounting points are labeled. It has 11 drive bays. The included 350W power supply is honestly labeled. It’s a lower midrange case. I absolutely wouldn’t buy any less case than this–c’mon, the thing costs 30 bucks–but it’s nice enough that nobody’s going to be embarrassed with it.

Mobo

I used an AOpen AK75. It’s an AMD board, with a SiS 745 chipset. I’ve never had troubles with VIA chipsets, though to hear some people talk they make Yugos look reliable. I maintain that if you know what you’re doing, VIA chipsets are fine. But SiS has a great reputation of late so I thought I’d give a SiS-based board a try. It’s a nice board. It’s fast, and getting Windows to recognize and utilize the chipset is much nicer. Install the AGP driver and you’re in business.

One note about the board: Part of the Windows installation goes so slowly that I thought the board was defective. Right after the system check, it pauses for a long, long time. I’m talking longer than a Pentium 166. It seemed like minutes, though it probably wasn’t much longer than a minute in reality. Once it gets over that hurdle, it’s fast. This was with Win98 and 2000. I didn’t try XP. I had a legal copy of 98 for the system; I started to put 2000 on it in order to see if it ran into the same problems I thought 98 was having.

I only had a few hours’ experience with the board, which is anything but definitive, but it didn’t raise any red flags, and in my experience, most boards don’t wait until the second date to show their bad side. Usually the problems will show up either on the first day or sometime after the 366th.

I looked at an integrated Intel i815 board and very nearly bought it, but the supply dried up before I could pull the trigger. Buying AMD promotes competition, and the AK75 gives a lot more upgrade options in the future, so I’m not terribly sad about it.

Memory

I used a stick of Kingston DDR. It was on sale, I’ve never had a problem with Kingston memory, and back when I was working in an IBM shop, the IBM field techs trusted Kingston memory as much as the stuff IBM used from the factory.

DDR is cheaper than PC133 now, so if you’re building a new system, now’s the time to buy DDR instead. DDR-capable mobos are still more expensive, but they’re faster and you’ll save money in the long run by going with DDR now. DDR is the future. PC133 will stick around a while yet, but it’s headed to the same place EDO memory went.

Video

I used the cheap Radeon flavor of the week. When you don’t do 3D games, video cards don’t matter much anymore. This one was a genuine made-by ATi and I think it cost $29. It’ll stink up the joint if you’re waiting in line to buy Doom 3, but for the rest of us, it’s more video card than we’ll ever need, for a fantastic price.

I don’t have anything against Nvidia, but lately it’s easier to find a full-featured Radeon in the $30-$40 range than an Nvidia offering.

Modem

I used a USR 2977. It’s a real hardware modem and it’s PCI so it’ll fit in modern boards. At $35, it’s not that much more expensive than a Winmodem. And Winmodems steal anywhere from 10-20% of your available CPU power. People go to great lengths–either doing lots of time-consuming and sometimes downright foolish stuff, or spending lots of money–to achieve much smaller performance gains, so it’s stupid not to buy something like the 2977.

Hard drive

I used the flavor-of-the-week 7200-rpm 20-gig Maxtor. It cost $65. At that price I’m not going to be too picky, especially because I was working on a tight budget.

Operating system

Windows 98. Why? It was legal and adequate. Linux would be fine except for a few apps the new owner needs to run. There’s definitely enough hardware here to run XP, and XP might even outperform 98, but when you’re building a $300 system, spending $100 on an operating system when you’ve already got one doesn’t make a lot of sense.

Extras

I stole the CD-ROM, floppy, keyboard, mouse, and monitor from the PC this one was replacing. Along with all the cables.

How DOS came to be IBM’s choice of operating system

The urban legend says Gary Kildall snubbed the IBM suits by making them wait in his living room for hours while he flew around in his airplane, and the suits, not taking it well, decided to cut him out of the deal and opted to do business with Bill Gates and Microsoft, thus ending Digital Research’s short reign as the biggest manufacturer of software for small computers.

Read more

How IBM and DOS came to dominate the industry

How IBM and DOS came to dominate the industry

Revisionist historians talk about how MS-DOS standardized computer operating systems and changed the industry. That’s very true. But what they’re ignoring is that there were standards before 1981, and the standards established in 1981 took a number of years to take hold.

Read more

Network infrastructure for a small office

We talked earlier this week about servers, and undoubtedly some more questions will come up, but let’s go ahead and talk about small-office network infrastructure.
Cable and DSL modems are affordable enough that any small office within the service area of either ought to get one. For the cost of three dialup accounts, you can have Internet service that’s fast enough to be worth having.

I’ve talked a lot about sharing a broadband connection with Freesco, and while I like Freesco, in an office environment I recommend you get an appliance such as those offered by Linksys, US Robotics, D-Link, Netgear, Siemens, and a host of other companies. There are several simple reasons for this: The devices take up less space, they run cooler, there’s no need to wait for them to boot up in case of power failure or someone accidentally unplugging it, and being solid state, theoretically they’re more reliable than a recycled Pentium-75. Plus, they’re very fast and easy to set up (we’re talking five minutes in most cases) and very cheap–under $50. When I just checked, CompUSA’s house brand router/switch was running $39. It’s hard to find a 5-port switch for much less than that. Since you’ll probably use those switch ports for something anyway, the $10-$20 extra you pay to get broadband connection sharing and a DHCP server is more than worth your time.

My boss swears that when he replaced his Linksys combo router/100-megabit switch with a much pricier Cisco combo router/10-megabit switch, the Cisco was faster, not only upstream, but also on the local network. I don’t doubt it, but you can’t buy Cisco gear at the local office supply store for $49.

For my money, I’d prefer to get a 24-port 3Com or Intel switch and plug it into a broadband sharing device but you’ll pay a lot more for commercial-grade 3Com or Intel gear. The cheap smallish switches you’ll see in the ads in the Sunday papers will work OK, but their reliability won’t be as high. Keep a spare on hand if you get the cheap stuff.

What about wireless? Wireless can save you lots of time and money by not having to run CAT5 all over the place–assuming your building isn’t already wired–and your laptop users will love having a network connection anywhere they go. But security is an issue. At the very least, change your SSID from the factory default, turn on WEP (check your manual if it isn’t obvious how to do it), and hard-code your access point(s) to only accept the MAC addresses of the cards your company owns (again, check your manual). Even that isn’t enough necessarily to keep a determined wardriver out of your network. Cisco does the best job of providing decent security, but, again, you can’t buy Cisco gear at your local Staples. Also, to make it easier on yourself, make sure your first access point and your first couple of cards are the same brand. With some work, the variety pack will usually work together. Like-branded stuff always will. When you’re doing your initial setup, you want the first few steps to go as smoothly as possible.

I’d go so far as to turn off DHCP on the wireless segment. Most wardrivers probably have the ability to figure out your network topology, gateway, and know some DNSs. But why make life easier for them? Some won’t know how to do that, and that’ll keep them out. The sophisticated wardriver may decide it’s too much trouble and go find a friendlier network.

Why worry about wireless security? A wardriver may or may not be interested in your LAN. But that’s one concern. And while I don’t care if someone mooches some bandwidth off my LAN to go read USA Today, and I’d only be slightly annoyed if he used it to go download the newest version of Debian, I do care if someone uses my wireless network to send spam to 250,000 of his closest friends, or if he uses my wireless network to visit a bunch of child porn or warez sites.

Enough about that. Let’s talk about how to wire everything. First off, if you use a switched 100-megabit network, you can just wire everything together and not give much thought to anything. But if you’re using hubs or wireless to connect your desktops, be sure to put your servers on 100-megabit switch ports. The servers can then talk to each other at full speed if and when that’s necessary. And a switch port allows them to talk at full speed to a number of slower desktop PCs at once. The speed difference can be noticable.