Senior Member
Registered: Oct 2003
Location: Northeastern Michigan, where Carhartt is a Designer Label
Distribution: Slackware 32- & 64-bit Stable
Posts: 3,541
|
Hmm. The initial impression is "lots," but after a little reflection, not all that much -- depending on what you're talking about.
At the user level, not all that much; Linux and Solaris, at the command line level, look pretty much the same. All the "standard" System V, Berkeley, etc. utilities look and work pretty much like they're supposed to.
At the developer level, particularly with, say, SUNWspro installed, there are some little gotcha differences compared to GCC (and, on Sun platforms, I'd rather have Sun's compiler than any other). And SPARCs are 64 bit where most Linux boxes, not all, but most, are built on PC platforms and you get into multi processors versus single and MSB, LSB and all that. Solaris does a tremendous job, as far as I'm concerned, managing multi processors although I have no experience with multi processor Linux so I can't really comment further on that.
I have found that a lot of open source packages that I'd sometimes like to have on a SPARC box will not build unless GCC is installed along with SUNWspro; GCC-specific functions, libraries, things like that cause pain. The big ones; e.g., Apache, PHP and a few others, however, build and work just fine.
Administrative stuff is, well, different. Some Linux distributions, Slackware for example (which is what I use) do start up with "run command" files (rc.sshd, for example), others do the rc.0, rc.1, ... way (like Solaris does). Pick your poison, live with it. (One of the things I like most about Slackware is that it's "closest to System V" in that it's the most un-fooled-around-with distribution I've found and doesn't insist on "doing" (invisible) things to or for me that I don't want done, kind of like Solaris. Making the switch from Solaris to Slackware was pretty painless.) Other, little things, are, oh, drive naming conventions, CUPS, and some others I can't think of right now -- which tells you that they probably don't matter much. I have almost -- almost -- no trouble porting code between Solaris and Slackware and everything works as I expect it to.
There are a few things that Linux distributions come with that Solaris doesn't. I'm really, really old fashioned; I prefer nawk over gawk any day of the week, vi over elvis, Sun C over GCC, things like that. For some inexplicable reason people seem to think that bloat is good and keep adding "features" to basic utilities that, well, I'd be happy to live without. M. Douglas McIlroy had it right: a program should do one thing and do it well and I can live quite happily with an editor that edits files and doesn't try to scratch my nose for me while it's at it.
I use Solaris' implementation of CDE (and like it) on Sun boxes and KDE (which is OK) on Linux boxes. I'm a software engineer by trade and I don't give much of a hoot about click-and-drool (gimme a terminal window and leave me alone, dammit). Overall I can't say that, other than a few Solaris-specific system calls versus Linux-specific system calls, mounting drive partitions, administering printers once or twice a year and the like that there's all that much of a learning curve switching back and forth.
So, let's see. There are a few -- very few -- compatibility differences but, in my experience, they're down there in exotic system calls and aren't annoying enough to be a big problem. To a user, look and feel are pretty much identical (well, CDE is different that KDE, but...). Standard utilities are... standard; you print with lp, you list files with ls, you exit with ^D. Adding drives is different, partitions are named differently, but so what. 64- versus 32 bit, well, yeah, but it's really hard to notice most of the time. A couple of hundred users going at it at once, well you pays your money and you gets your platform.
I kind of think that Linux is getting to be more like Solaris than the other way around.
|