Softpanorama

May the source be with you, but remember the KISS principle ;-)
Contents Bulletin Scripting in shell and Perl Network troubleshooting History Humor

Solaris vs. Linux: Framework for the Comparison

by Dr Nikolai Bezroukov


 

Prev Contents Next

6. Development environment

Solaris is definitely less popular then Linux as a free software development environment. In terms of developer out-of-the-box usability, Linux even with its "perma-beta" kernel and semi-debugged GUI beats Solaris hands down.

This list of questions can be continued but it is logically assume that any large corporation has some level of "institutional stupidity" that is unavoidable. Just look at any other Unix vendor if you do not believe me; the discussion of a number of warts in AIX (the very idiosyncratic Unix which smells with mainframes) and HP-UX requires a book not an article :-).

The value of Linux as a development environment is intrinsically connected with its value as a corporate bureaucracy fighting machine of formidable power.  OSS is life blood of software development: it is first and foremost software for developers by developers.  Life is too short to spend it on approvals for each and every tool you need.  Linux comes preconfigured with a lot of development tools (of various quality) and it is ready to use for complex development projects from day one.

Linux is a tremendously positive force and  a powerful tool in  fighting corporate and academic  bureaucracy; its value in this area cannot be overestimated

Solaris does has some advantages (see below) for developers of applications that integrate more closely with OS as it has far better dump facilities, better debugger, and compiler and far better instrumentation mechanism (Dtrace is next to none). But you need to spend some efforts configuring it as a development machine and spectrum of available tools is much narrow although some of the tools are of higher quality. Actually Sun recently started to produce distribution called Solaris Express Developer Edition which is oriented specifically for developers and that's a very positive step:

Solaris Express Developer Edition is an OpenSolaris-based distribution for x86 that includes the latest tools, technologies, and platforms to create applications for Solaris OS, Java Application Platform, and Web 2.0.

Available at no-cost, Solaris Express Developer Edition is regularly updated to incorporate new functionality to help application developers create better applications -- faster. Developers can create high performance applications using this distribution and deploy to Solaris 10 OS.

Develop your applications using Solaris Express Developer Edition and deploy to Solaris 10. For applications that use Solaris APIs, we encourage you to download and use the Solaris Ready Test Suit to verify use of Solaris 10 APIs. In addition, you should do your final build on a Solaris 10 server before deploying.
 

Developer support options are available for code support, programming and technical assistance. Recognized industry-wide, Sun offers developer training and certification courses for Solaris, Java, and Web 2.0 developers.

The 2/07 release of Solaris Express Developer Edition is only for x86-based laptops and desktops. Developers on SPARC systems can obtain similar functionality by downloading the latest Solaris Express Community Edition build 55 (CD) or (DVD) and installing Sun Studio 11 for OpenSolaris and NetBeans IDE 5.5 with NetBeans Enterprise Pack 5.5. Future Solaris Express Developer Edition releases will include support for both x86 and SPARC platforms. VMware for Solaris Express Developer Edition is also available.

Compilers

GCC is the standard compiler for Linux: both OS itself and applications are compiled with it. It is an established compiler with reasonable (but far from outstanding) quality.

But GCC is a fuzzy term and multitude of partially incompatible versions are actually used.  That means that recompilation problem can be a problem for Linux too.  The other variable here is version of the kernel and it affects a lot of applications. It is usually surprising to see that application compiled for Linux 2.2. or 2.4 works for 2.6.

For Solaris GCC is a secondary compiler, different from the compiler with which OS is compiled. GCC is available on Solaris in several precompiled versions including the most current but the availability of versions does not mean  absence of problems with compilation. Here actually Sun's compiler groups is sleeping at the wheel. Until recently they did nothing to provide some guidance of compiling major open source tools with gcc on Solaris or (if this hurts too much :-) to popularize better and actually pretty compatible with gcc Studio 11. As of  September 2006 the number of precompiled with Studio 11 packages can be counted on one hand (see Cool tools). I see no attempt to provide an equivalent of Supplementary Software CD based on Studio 11 with some documentation as this feat was achieved.

Actually release of Studio 11 as a free application was a very shrewd move on the part of the Sun.  Few developers working in enterprise environment enjoy using gcc and Emacs as the development environment as expectations here are generally defined by the quality of Microsoft Studio environment. Some people use Eclipse, but it is a very heavy, bloated IDE that slightly suffers from usage of Java as an implementation language. Outside Microsoft Studio,  SlickEdit often defines the quality of editors for developers and Intel complier -- for compliers.  

The quality of compilation might make a big difference for those few IT organizations where staff's ability to use compiler and linker still survived. Yes Intel compiler is available for linux but not Solaris so theoretically the most optimized applications can be produced on linux. But here you are actually in the same boat as people who are trying to recompile open source applications on Solaris: without expert knowledge of standard Unix development tools this job is extremely dangerous to your mental health :-).  There was a good  albeit slightly evil joke about linux development environment which is especially applicable to people who just need to recompile a couple of open source applications to make something work: open source is free only if your time cost nothing.  Like in any good joke there is a deep truth hidden in it and  no amount comments from zealots on Slashdot or Linuxtoday.com can change that. 

Also for CPU intensive application Sun has unique advantage  Sun Studio 11 for X86 compiler tuned for Opteron -- the area were Intel compiler by definition will always be weaker. Also it is important to understand that until version 4.01 gcc was weaker then Sun Studio 11 on UltraSparc (GCC 4.01 is able to use the optimizing Sun Code Generator for SPARC systems). Still even with version 4.01 of gcc available, recompilation with Sun Studio 11 is still a recommended option if speed is extremely important as well as from the points of  the lessening of the level of exposure to vulnerabilities for such important enterprise applications as apache, bind, postfix or Sendmail. Speed-up generally depends on the application and can be as low as 5% or as big as 50%, but it definitely exists.

Sun Studio 11includes:

Compiler options are different. Here is a table modified from IBM's  Guide to porting from Solaris to Linux on POWER [[Skawratananond&Davis1996]  that provides some guidance:

SUN Studio option GNU GCC option Description
-# -v Instructs the compiler to report information on the progress of the compilation.
-### -### Traces the compilation without invoking anything.
-Bstatic -static Causes the link editor to look only for files named libx.a.
-Bdynamic (Default) Instructs the link editor to look for files name libx.so and then libx.a when given the lx option.
-G -shared Produce a shared object rather than a dynamically linked executable.
-xmemalign -malign-natural,
-malign-power
Specifies the maximum assumed memory alignment and the behavior of misaligned data accesses.
-xO1, -xO2, -xO3, -xO4,-xO5 -O, -O2, -O3 Optimizes code at a choice of levels during compilation.
-KPIC -fPIC Generates position-independent code for use in shared libraries (large model).
-Kpic -fpic Generates position-independent code for use in shared libraries (small model).
-mt -pthread Compile and link for multithreaded code.
-R dirlist -Wl, -rpath, dirlist Builds dynamic library search path into the executable file.
-xarch -mcpu, -march Specifies the target architecture instruction set.
 

As I already mentioned several times usage of Studio 11  provides some additional protection against script kiddies: exploits developed for GCC version will not work on Sun Studio compiled version.  As for UltraSparc script kiddies usually don't even bother to port exploits to this platform.   

Recently Sun Studio 11 won  3 out of the 4 major metrics (SPECint2006, SPECfp2006, and SPECint_rate2006)[Sun Studio 11 Performance Results Sizzle in Newest Application Benchmark Result; Sun Launches Sun Studio Express Program]:

SANTA CLARA, CALIF. Augus 31, 2006 Sun Microsystems, Inc. (Nasdaq: SUNW) today announced that its Sun Studio 11 software, Sun's freely available development tool for Solaris and Linux Operating Systems, has again delivered record-setting results across the new benchmark suite provided by The Standard Performance Evaluation Corporation (SPEC). Additionally, Sun has launched the Sun Studio Express Program, that enables C, C++, and Fortan developers to preview features intended for future releases. With more than 50,000 registered downloads in the past 6 months, this program was created in response to the rapid adoption and interest in Sun Studio 11 software.

Jochen Rehbock, Head of Product Development with Billing and Loyalty Systems GmbH, confirms, "The quick and knowledgeable support provided by the Sun technical experts as well as the use of Sun Studio 11 were instrumental for making Billit, a modern and future-oriented billing system for the telecommunication industry, a success. Replacing GCC version 3.4.4 with Sun Studio 11 and the STLPort library provided by Sun alone yielded performance improvements in the range of 10 to 25 percent depending on the use case without requiring more than a few lines of code to be changed."

Sun has established an early and commanding lead, taking top honors in 3 of the 4 major metrics (SPECint2006, SPECfp2006, and SPECint_rate2006), using Sun Studio 11 and Solaris 10 on both AMD Opteron and UltraSPARC(R) processor-based systems. Utilizing the most advanced features of Sun Studio 11 software, such as auto-parallelism technology, the Sun Fire X4200 server, equipped with AMD Opteron processors, surpassed rival systems based on Intel processors, such as HP ProLiant DL380 G4 server, as well as the competing HP ProLiant DL385 server. Demonstrating commitment to the high-end commercial computing segment, Sun is also showcasing the flagship Sun Fire E25K server. Optimized with Sun Studio software, these best-in-class systems helped Sun to be the only top server vendor to increase market share, according to the IDC Q206 Worldwide Quarterly Server Tracker.

The SPEC CPU2006 Benchmark (announced on August 24, 2006) which is more than 4 times larger than its predecessor, now includes a broader variety of workloads and better real-world applicability of the results. This new benchmark exercises a computer's processor, memory architecture, and compilers on a variety of compute intensive workloads, including protein sequencing, MPEG-4 decoding, XML processing, fluid dynamics, structural mechanics, and speech recognition.

"Sun Studio continues to demonstrate its leadership in its ability to help developers maximize the performance of their applications," said Don Kretsch, senior director, Sun Developer Tools. "With 50,000 downloads in 6 months, enterprise to open source developers are using Sun Studio 11 to reduce development time, increase portability, and improve the performance of their applications."

One of the significant benefits of Sun Studio 11 is the integration between components, which includes optimizing compilers, a multi-thread aware debugger (dbx), performance analysis tools, and a NetBeans-based IDE. The tools components also work on objects created by other compilers which allows developers to easily intermix Sun Studio tools within their current development environment. The newly launched Sun Studio Express Program provides regular snapshots of future releases of Sun Studio under development. The latest snapshot includes optimizing compilers for Linux, demonstrated recently at LinuxWorld, San Francisco 2006. In addition, the new Data Race Detection Tool complements the existing multi-threaded libraries, tools, and compiler optimizations to ease multi-threaded development.

Debugging

Dbx on Solaris is more solid then gdb. GNU debugger probably outlived its usefulness and has mainly historical importance.  The difference is especially big we are talking about debugging complex program in C++.

Solaris also has better kernel visibility (including classic core dumps infrastructure) and debugging tools which are critical to get a correct understanding of system behavior in complex situation when an application hangs or crush.  Core dumps analysis is the debugging technique that was polished to perfection on IBM mainframes and its reimplementation by Sun provides similar functionality under Solaris.  There are two types of dumps on Solaris, crash dumps (all OS failed) and core dumps (application failed). Linux does not have this important infrastructure. On Solaris, the post-mortem case is exactly the same as on mainframes. Simply reboot -d (or initiate a sync from the OK prompt if the server really hung) and then run mdb on the resulting crash dump. Linux has different implementation of driver layer (especially SCSI layer as it supports many different SCSI adapters) and is generally unable to produce crash dump when interrupts went south. To compensate for this linux introduced the concept of networked dump.  To what extent this is an adequate replacement remain to be seen and IMHO Solaris looks slightly better in this particular area.

With linux any dump is a crash dump and that means this feature much less useful. Also kdump implementation in kernel 2.6 is very fragile and does not work out of the box in Suse 10.

All in all Solaris has huge advantage in the quality of dump implementation and if this is important Solaris is a clear choice.

UltraSparc has cleaner architecture and debugging for Solaris is generally easier due to big Endean CPU with RISC instruction set. x86 is a way too cumbersome architecture for debugging ;-). Still x86 is were developers make most money and as a result in no way you are limited to GNU tools in linux (with the exception of gcc and DejaGnu it might be a good policy to try to avoid them as there are always better alternatives) the assortment of various debugging tools on this platform is next to none. Also due to virtual machine environment you can use many Windows development tools on linux (this is true for Solaris too but implemented less often; for UltraSparc Solaris also has a unique feature -- a "Windows card"  that I mentioned before).

For tracking system calls Solaris has an excellent truss utility. For Linux, the strace utility provides a similar but weaker function.  For more complex situations Solaris has Dtrace and is an amazing tool, a real breakthrough.  Currently Linux has no analogs for Dtrace.  This means that for applications closely integrated with OS (and in those applications you really need the full power of DTrace, dumps and a very good debugger) Solaris does have tremendous advantages as a development environment.

As for memory leaks detection tools the situation is unclear and Solaris might still have an edge. Insure++  is available both on Solaris and Linux. Grandaddy of memory leak detection tools -- IBM Rational PurifyPlus -- is available for Linux only, but it largely outlived its usefulness. Among OSS alternatives Electric Fence library and Valgrind are probably the most well developed. Of them only Electric Fence is portable to Solaris. It provides functionality similar to that of the watchmalloc(3) library on Solaris. 

Valgrind is the product of Julian Seward (of bzip2 and cacheprof fame). It is a more aggressive approach that presuppose running the application in an emulated environment, in which every memory access on both the heap and stack are monitored. The tool is highly x86 and Linux specific. It is helpful, but produces a lot of false positives, especially things going on in various libraries which in most cases are not relevant.

There are also attempts to create a modified version of GCC that can instrument the program so that leaks can detected at run time.

 

General level of OSS support

Isn't Linux a lot like Solaris?
Not if you're porting an application
From Technical guide for porting applications from Solaris to Linux, Version 1.0

Linux generally wins here and in many areas the distance is quite large as most open source applications are now developed on Linux or even if they are not (FreeBSD is still the platform of choice for development of several major enterprise open source applications), they are almost always tested for Linux compatibility.  In this sense linux is Microsoft of the Unix world.

Problem with Solaris instantly arise if you cannot find precompiled package and need to compile sizable application that uses multiple unique libraries. As I mentioned before, most open source packages are very fragile and compiling them on a different OS without being an expert in Unix development tools is a very dangerous for your mental health adventure.

The key advantage of Sun is that it does provide a large subset set of precompiled and tested applications on its Software Supplement CD. There are also many additional high quality packages on Sunfreeware.com. BTW packages from Sunfreeware.com have different installation targets (/usr/local ) then packages from Sun Software supplement CD (Sunfreeware.com also often have newer versions) but thanks God Unix has symbolic links for directories :-). 

Solaris 10 can be attractive to developers who do not depend too much on somebody else tools and packages due to availability of high quality free IDE and compiler suit (Studio 11) and its uniquely instrumented kernel that makes such an amazing (and valuable for developers of complex applications) tool as DTrace possible.  DTrace is a crown jewel of Solaris development environment and if you can benefit from it Linux instantly became out of question as a development platform. You can endure a lot of sufferings in other areas just for an ability to use Dtrace. Many developers in computer simulation area and some other areas with heavy mathematical components fall into this category. Now with virtual machines on every corner this is an easily achievable goal anyway: those days standard development environment is dual platform environment (usually Windows + Linux or Windows + Solaris). 

In case you depends on a large number of obscure open source packages or libraries linux is a preferable platform as it is native for majority of open source packages and tools. Only for small number of native BSD packages your mileage can vary. Paradoxically Linux is preferable platform for using major scripting language although strictly speaking it should not necessarily be this way. 

But as enterprise usage of open source is very selective and generally is limited to about a hundred of application/packages or so. That means that the real situation is more complex than "black and white" statement: "Linux rulez, Solaris sucks".

First of all native platform for developing of several important open source applications is not linux but BSD.  Also open source software can be considered a viable alternative to closed source only if a particular product is under active development and has critical mass of developers with some organization behind that group.  Just existence of  package means nothing unless you want to lead the development.  Today it exists, tomorrow it might disappear. And with the current level of complexity and volume of important for enterprises open source applications few people can pick up the flag the key developer dropped.  If it is not supported it is generally outside the scope for large enterprises.  That disqualifies probably 99% of Freshmeat packages.

For those unsupported packages linux and Solaris are equivalent: you need to understand (and able to modify and debug) the source code to make this application useful.  for strong developers this is quite possible if application is reasonably simple or extremely important, but after codebase is above say 10K lines all bets are off. As people who participated in ports of legacy applications to a new platform can tell, the only viable option is almost full re-implementation (which just another way to understand the codebase :-).

Sunfreeware.com is the most well know provider of prepackaged open source applications for Solaris and it is known for its high quality of packaging. As of September 2006 it lists 381 packages and libraries for Solaris 10 (slightly more for Solaris 9). That generally covers most tier-one open source applications although sometimes versions provided are rather old.  At the same time the quality of packaging is extremely high.

For the second tire open source application (which can be estimated around one thousand packages) Solaris versions are either unavailable or not supported on regular basis or both. Among such packages we can mention ksh93.  Sun really should pay more attention to support of sites like sunfreeware.com and Supplementary software CD.

But this is an uphill battle: support costs money that Sun does not have and return on investment is not the easy to quantify. But still even within limited finding available Sun should do much better job in supporting major open source application in precompiled form. Here Sun compiler group should definitly play more important role. Availability and systematic flow of updates for precompiled packages for Solaris can be a perfect way to promote its line of Opteron servers, much more effective that many regular advertising avenues, which also cost a lot of money.

Still even with the handicaps in availability of versions of some open source applications and weak support of scripting languages the stability of kernel and other subsystems make Solaris a preferable platform for several important for enterprise open source applications, especially those that were initially developed on FreeBSD, and those that depends of threads. I am thinking about bind, Apache, Postgress and (while not open source, but free) Java here. While I am not a fun of Java I cannot deny its huge importance for enterprise: the language essentially replaced Cobol for commercial application development. Version 6 of the Java Platform does not mandate any particular script engine, but it does include the Mozilla Rhino  engine for the JavaScript programming language. The Java SE 6 platform implements the java.script APIs, which allow you to use script engines that comply with JSR 223. The web site scripting.dev.java.net hosts an open project to maintain several script engines that conform to JSR 223.

You might have also slight advantage of mixing open source with commercial applications for example Oracle, which are better supported on Solaris (I know Oracle is moving toward linux but it is interesting to see how far it will come and at what point Larry Ellison will realize the danger of being too close to open source for a proprietary database vendor; there are already signs that for 64-bit version Solaris will be preferable platform :-).

Still even if a particular open source application is better running on Solaris, and one can get many important major open source applications in precompiled form from sites like SunFreeware.com , downloading and installing them takes time, a lot of time and is less transparent (and more error prone) that installing additional applications on linux (especially during initial installations of distributions like RH or Suse).

As I already mentioned before, recompiling packages for Solaris requires both skills and persistence, but here we at least can realize the advantage of open source instead of being "download lemmings" a la Windows users, the situation that is so typical for linux. After all open source is mostly about source code not free lunch.

Still we should understand that for any architecture different from Intel 32-bit architecture, precompiled new versions of  open source applications with improvements and patches for open source applications on Solaris (let's say recompiled packaged for free ride lovers ;-) are slower to arrive. Often you need to compile an application yourself in order to put a new patched version in place within the timeframe of your corporate policy.  With adequate skills recompiling actually  provides an opportunity for tuning it to your environment (and using a better compiler instead of GCC), but requires additional time, effort and qualification.  In this sense Solaris favors higher qualified IT departments that preserves some IQ and were the personnel still can use complier and linker, not just install packages. 

Some additional semi-random points:

All-in-all, Sun's support of open source applications is still fragmentary and upgrade mechanism for open source applications that it provides to customers on its Solaris Supplementary Software CD is almost non-existent. If Sun embraces open source it should at least minimally support software provided on Solaris Supplementary Software CD providing periodic updates. In the past software on Solaris Supplementary Software CD was not even included in quarterly upgrades of the OS. It can be a separate mechanism to take care licensing issues but without quarterly updates usability of many open source tools usable on Solaris remain questionable in the large enterprize environment.

For more information about compiling and using open source applications on Solaris see [Lin2007]

Software packaging

The dominant distribution form for precompiled applications is now so called package. Package is a special form of archive with executable components.  It usually includes binaries, libraries, documentation, and scripts that provide integration of the application to the host OS. It also contains metadata that are is used by the package management system to document the content of the package and define installation sequence and registry entries for the package.

Solaris uses pkgadmin as its package manager. Linux uses several packaging scheme with RPM as the most popular (used on Red Hat and Suse).  Linux package manager is more modern and more capable that Solaris. 

The format of the package used by pkgadmin in Solaris is different from the spec file used by RPM, and direct translation of one into another is difficult (see RPM-for-Unix HOW-TO Convert RPM to Solaris Package rpm2pkg). That means that developers usually need to know both. RPM can be used for Solaris but it remain non-standard package format.

See  Fetter Consulting/Solaris RPM Building How-To  for more details.

There some uncoordinated efforts to make Solaris packaging more user friendly. See for example Phil's Solaris hints/Fun with packaging. Some departments of Rutgers University use a ported version of the RPM to install and upgrade software on Sun Solaris machines. See  rpm.rutgers.edu They have a large repository of RPM packages for Solaris (mainly for Solaris 9).  You can use port of art-rpm or yum to install packages with dependencies.

Scripting languages support

Linux has better support for major scripting languages. For many it is the development platform. Solaris has an adequate for large enterprise support. For most important scripting languages free precompiled packages are available from either Sun's Software Supplement Disk and sites the distribute open source applications for Solaris (SunFreeware.com, blastwave.org,  etc). High quality commercially supported ports for Solaris are provided by ActiveState.

Solaris suffered from Sun's preoccupation from Java and in a default installation has limited support for scripting languages.  It is interesting to note that Sun was major contrinutor to two mainstream scripting languages: JavaScripts and TCL. For several year it employed TCL developer Prof. John Ousterhout. From 1994 to 1998 he was a Distinguished Engineer in Sun Microsystems Laboratories, where he led the Tcl project.  Unfortunately Sun preoccupation with Java deemphasized TCL project and  John Ousterhout decided to leave Sun and have found several startups.

As I mentioned before while  Perl is included with the Solaris 9 and 10 distributions but the number of packages in default installation is limited. TCL, while for many years was developed by Sun,  needs to be installed separately. For PHP support you need to use Apache. Even ksh is still old ksh88 (POSIX shell), not ksh93. But company is slowly recovering from the Java fad (or more correctly start to embrace scripting languages in Java framework) and might put more resources into OS development.

Solaris currently has very poor scripting languages support out of the box: 

The problem with usage of bash and GNU utilities on Solaris is that they are not ACL and RBAC aware. They still can be used within those limitations as Solaris provides an excellent compatibility.

As for scripting IDE Komodo Studio from Activestate is available for Solaris and it represents a more or less OK environment for most scripting languages.

Java Support

Java support is one reason of popularity of Solaris among enterprise application developers.  Paradoxically IBM Webshere is more often used on Solaris then on AIX or linux.  That does not mean that it automatically becomes more stable in this environment, but still there is no question that Solaris in more Java friendly OS then any flavor of enterprise linux.

Actually the main competition for Solaris in Java application development (and more recently deployment) is not linux, it is Windows.  And Windows beats enterprise flavor of linux in cost/performance ration by a wide margin. Here are the cost comparison of .Net 2.0 and Webshere environment from Enterprise .NET Community .NET 2.0 vs. IBM WebSphere 6.0

Microsoft .NET 2.0 vs. IBM WebSphere 6.0 License Cost Comparison

As Configured for the Plants Benchmark

 

Item

Microsoft
Product

Cost

IBM
Product

Cost

Base Server OS Windows Server 2003 Standard Edition @ $1089.85 / system

$1089.85

Red Hat Enterprise Linux AS @ 1 year subscription

$1499.00

Application Server Function (Included in Windows Server)

--

WebSphere Application Server Express, v6.0 @ $2000/cpu

$8000.00

Unlimited External Connections External Connector @ $3033.07/ system

$3033.07

(Included in WAS Express)

--

One Developer seat Visual Studio 2005 Professional with MSDN Premium Subscription, 1 annual charge

$2518.00
** see note

Rational Application Developer for WebSphere software, floating user, 1 st year

$2155.00

Development-time runtime license (Included in MSDN Enterprise subscription)

--

WAS Express Developer User

$400

Media CD kit for Windows Server 2003 Standard Edition

$28.00

(included in IBM.com price)

$--

Total  

$6668.92

 

$12054.00

Despite being based on open technology Webshere generally lags in performance. 

NET has a significantly better price/performance ratio than IBM WebSphere 6 across all implementations of the benchmark tested. .NET delivers up to a 4x better performance per dollar as compared to WebSphere in non-clustered benchmark. For tests that include clusters of application servers running IBM WebSphere Network Deployment Editon vs. the lower end WebSphere Express product, the price/performance advantage of Microsoft Windows and .NET can increase significantly.

Pricing Notes

Costs for IBM were obtained from the IBM.com online store, and the Red Hat online store. Red Hat Enterprise Linux AS is required, as opposed to the less expensive Red Hat Enterprise Linux ES, because this configuration uses 4 cpus, and the maximum number of CPUs supported by the Red Hat Enterprise Linux ES license is 2. Windows Server 2003 Standard Edition supports up to 4 CPUs. A single seat license for the RWD Developer tool is included in WAS Express, but the EJB implementation of the Plants app (as originally developed by IBM) requires support for EJBs, and therefore we separately priced Rational Application Developer for WebSphere 6 to meet this requirement. The price of a floating user license for RAD is $2155.00 for the initial year under a current (as of October 2005) promotion; the normal price is $7000.

Desktop environments

While KDE is a nice, flexible desktop, Solaris beats linux hands down if you use workstation with the SunPCi IIIpro card installed:

Some native offerings are more or less acceptable. Eclipse is an advanced plug-in based IDE that supports C/C++ and Java development on both platforms. It's slow.  The commercial version that is supported by IBM is expensive.

The KDE project (www.kde.org) provides KDevelop (www.kdevelop.org), a nice, integrated with KDE IDE for GNU compiler collection supporting multiple platforms and languages (including C/C++, Java, bash, Fortran, and others) [KDevelop - Wikipedia]. It has six year development history, has powerful editor that can be enhanced by plugins (including persistent project-wide code bookmarks, a Source formatter, Regular expressions search, and project-wide search/replace which can help with refactoring code).

KDevelop supports CVS and ClearCase. Integrated graphical debugger supports standard set of features like breakpoints and backtraces. It works with dynamically loaded plugins unlike command line gdb.

The problem is that KDE is not very well supported on Solaris.

Configuration Management and Bug Tracking Tools

Linux has an edge here as Subversion was developed for linux and better matches this environment. The default source control system for Solaris is the Source Code Control System (SCCS), a dying branch of Unix tree.

The current default source control on linux is the Concurrent Versions System (CVS) a network-aware version of Control System (RCS). Both are available on Solaris. IBMs ClearCase are also available.

Bug tracking applications works well with both systems. For example Bugzilla is not that platform specific to make any difference (www.bugzilla.org).

Prev Contents Next



Etc

FAIR USE NOTICE This site contains copyrighted material the use of which has not always been specifically authorized by the copyright owner. We are making such material available in our efforts to advance understanding of environmental, political, human rights, economic, democracy, scientific, and social justice issues, etc. We believe this constitutes a 'fair use' of any such copyrighted material as provided for in section 107 of the US Copyright Law. In accordance with Title 17 U.S.C. Section 107, the material on this site is distributed without profit exclusivly for research and educational purposes.   If you wish to use copyrighted material from this site for purposes of your own that go beyond 'fair use', you must obtain permission from the copyright owner. 

ABUSE: IPs or network segments from which we detect a stream of probes might be blocked for no less then 90 days. Multiple types of probes increase this period.  

Society

Groupthink : Two Party System as Polyarchy : Corruption of Regulators : Bureaucracies : Understanding Micromanagers and Control Freaks : Toxic Managers :   Harvard Mafia : Diplomatic Communication : Surviving a Bad Performance Review : Insufficient Retirement Funds as Immanent Problem of Neoliberal Regime : PseudoScience : Who Rules America : Neoliberalism  : The Iron Law of Oligarchy : Libertarian Philosophy

Quotes

War and Peace : Skeptical Finance : John Kenneth Galbraith :Talleyrand : Oscar Wilde : Otto Von Bismarck : Keynes : George Carlin : Skeptics : Propaganda  : SE quotes : Language Design and Programming Quotes : Random IT-related quotesSomerset Maugham : Marcus Aurelius : Kurt Vonnegut : Eric Hoffer : Winston Churchill : Napoleon Bonaparte : Ambrose BierceBernard Shaw : Mark Twain Quotes

Bulletin:

Vol 25, No.12 (December, 2013) Rational Fools vs. Efficient Crooks The efficient markets hypothesis : Political Skeptic Bulletin, 2013 : Unemployment Bulletin, 2010 :  Vol 23, No.10 (October, 2011) An observation about corporate security departments : Slightly Skeptical Euromaydan Chronicles, June 2014 : Greenspan legacy bulletin, 2008 : Vol 25, No.10 (October, 2013) Cryptolocker Trojan (Win32/Crilock.A) : Vol 25, No.08 (August, 2013) Cloud providers as intelligence collection hubs : Financial Humor Bulletin, 2010 : Inequality Bulletin, 2009 : Financial Humor Bulletin, 2008 : Copyleft Problems Bulletin, 2004 : Financial Humor Bulletin, 2011 : Energy Bulletin, 2010 : Malware Protection Bulletin, 2010 : Vol 26, No.1 (January, 2013) Object-Oriented Cult : Political Skeptic Bulletin, 2011 : Vol 23, No.11 (November, 2011) Softpanorama classification of sysadmin horror stories : Vol 25, No.05 (May, 2013) Corporate bullshit as a communication method  : Vol 25, No.06 (June, 2013) A Note on the Relationship of Brooks Law and Conway Law

History:

Fifty glorious years (1950-2000): the triumph of the US computer engineering : Donald Knuth : TAoCP and its Influence of Computer Science : Richard Stallman : Linus Torvalds  : Larry Wall  : John K. Ousterhout : CTSS : Multix OS Unix History : Unix shell history : VI editor : History of pipes concept : Solaris : MS DOSProgramming Languages History : PL/1 : Simula 67 : C : History of GCC developmentScripting Languages : Perl history   : OS History : Mail : DNS : SSH : CPU Instruction Sets : SPARC systems 1987-2006 : Norton Commander : Norton Utilities : Norton Ghost : Frontpage history : Malware Defense History : GNU Screen : OSS early history

Classic books:

The Peter Principle : Parkinson Law : 1984 : The Mythical Man-MonthHow to Solve It by George Polya : The Art of Computer Programming : The Elements of Programming Style : The Unix Haters Handbook : The Jargon file : The True Believer : Programming Pearls : The Good Soldier Svejk : The Power Elite

Most popular humor pages:

Manifest of the Softpanorama IT Slacker Society : Ten Commandments of the IT Slackers Society : Computer Humor Collection : BSD Logo Story : The Cuckoo's Egg : IT Slang : C++ Humor : ARE YOU A BBS ADDICT? : The Perl Purity Test : Object oriented programmers of all nations : Financial Humor : Financial Humor Bulletin, 2008 : Financial Humor Bulletin, 2010 : The Most Comprehensive Collection of Editor-related Humor : Programming Language Humor : Goldman Sachs related humor : Greenspan humor : C Humor : Scripting Humor : Real Programmers Humor : Web Humor : GPL-related Humor : OFM Humor : Politically Incorrect Humor : IDS Humor : "Linux Sucks" Humor : Russian Musical Humor : Best Russian Programmer Humor : Microsoft plans to buy Catholic Church : Richard Stallman Related Humor : Admin Humor : Perl-related Humor : Linus Torvalds Related humor : PseudoScience Related Humor : Networking Humor : Shell Humor : Financial Humor Bulletin, 2011 : Financial Humor Bulletin, 2012 : Financial Humor Bulletin, 2013 : Java Humor : Software Engineering Humor : Sun Solaris Related Humor : Education Humor : IBM Humor : Assembler-related Humor : VIM Humor : Computer Viruses Humor : Bright tomorrow is rescheduled to a day after tomorrow : Classic Computer Humor

The Last but not Least


Copyright 1996-2016 by Dr. Nikolai Bezroukov. www.softpanorama.org was created as a service to the UN Sustainable Development Networking Programme (SDNP) in the author free time. This document is an industrial compilation designed and created exclusively for educational use and is distributed under the Softpanorama Content License.

The site uses AdSense so you need to be aware of Google privacy policy. You you do not want to be tracked by Google please disable Javascript for this site. This site is perfectly usable without Javascript.

Original materials copyright belong to respective owners. Quotes are made for educational purposes only in compliance with the fair use doctrine.

FAIR USE NOTICE This site contains copyrighted material the use of which has not always been specifically authorized by the copyright owner. We are making such material available to advance understanding of computer science, IT technology, economic, scientific, and social issues. We believe this constitutes a 'fair use' of any such copyrighted material as provided by section 107 of the US Copyright Law according to which such material can be distributed without profit exclusively for research and educational purposes.

This is a Spartan WHYFF (We Help You For Free) site written by people for whom English is not a native language. Grammar and spelling errors should be expected. The site contain some broken links as it develops like a living tree...

You can use PayPal to make a contribution, supporting development of this site and speed up access. In case softpanorama.org is down you can use the at softpanorama.info

Disclaimer:

The statements, views and opinions presented on this web page are those of the author (or referenced source) and are not endorsed by, nor do they necessarily reflect, the opinions of the author present and former employers, SDNP or any other organization the author may be associated with. We do not warrant the correctness of the information provided or its fitness for any purpose.

Created Jan 2, 2005.  Last modified: June 04, 2016

</