development on Linux
University of Split
Faculty of Electrical Engineering, Mechanical Engineering and Naval Architecture; Department of Power Systems
Address: R. Boskovica bb, HR-21000, Split, Croatia.
All information provided on this web site reflects solely the personal opinions of the author himself and not the institutions or organizations to which he might be affiliated. It is provided as is, in 'bona fide' and with hope that it might be useful to someone. Author is not responsible for the content of the web pages linking from this web site.
Linux is an operating system for which the source code is available free without restrictions on use or requiring royalties. Highly regarded for its speed, reliability and security, Linux continues to evolve through contributed efforts from developers worldwide and is being used in all industries. Linux is one of the world's fastest-growing operating system. IBM is a strong supporter of Linux as a way to promote open standards. Open standards allow the interoperability of various applications, technologies, and computer devices, providing customers with a wider choice and flexiblity to deploy applications. Linus Torvalds created Linux in 1991, in Helsinki, Finland, when he was a graduate student. He wrote the first kernel, which is the core part of the operating system that provides basic services for all other parts of the operating system. Torvalds posted his cod- SunS on the Internet and invited developers from around the world to improve it. He provided the source code, free of charge, with the provision that developers share their work. Developers enthusiastically accepted Torvald's invitation.
Linux Operating System comes mainly in two main flawors: KDE Desktop and GNOME Desktop. KDE is an international technology team that creates Free Software for desktop and portable computing. Among KDE's products are a modern desktop system for Linux and UNIX platforms, comprehensive office productivity and groupware suites and hundreds of software titles in many categories including Internet and web applications, multimedia, entertainment, educational, graphics and software development. KDE software is translated into more than 60 languages and is built with ease of use and modern accessibility principles in mind. The GNOME desktop environment is an intuitive and attractive desktop for Linux users, and the GNOME development platform, which is an extensive framework for building applications that integrate into the rest of the desktop. GNOME is Free Software and part of the GNU project, dedicated to giving users and developers the ultimate level of control over their desktops, their software, and their data. GNOME is used, developed and documented in dozens of languages. Developers are not tied to a single language with GNOME. You can use C, C++, Python, Perl, Java, to produce high-quality applications that integrate smoothly into the rest of your Linux desktop. Both of these desktop environmets are great, highly adaptable, and complete desktop solutions. One can't make a mistake by choosing either one of them. It comes to the users individual experience with each desktop which might prevail towards KDE or GNOME. Many Linux distributions come packed with both of these desktop environments.
Linux OS, besides being a full desktop solution, provides a great environment for engineering development in various disciplines and/or programming languages. This includes Fortran F90/95 Programming Language as well as variety of other programming languages, such as C/C++, Java and many others. Combined with powerfull editors (such as Kate) or even full-featured Fortran IDEs (e.g. KDevelop, Photran - Eclipse or Sun Studio 12), along with vast fortran source code repositories (e.g. Netlib, GAMS, NIST, etc.), provides a high-performance and low-cost engineering development solution.
(mathematical FORmula TRANslation system) was originally developed in
1954 by IBM. Fortran was one the first to allow the programmer to use a
higher level language rather than machine code (0s and 1s) or assembly
language (using mnemonics). This resulted in programs being easier to
read, understand and debug and saved the programmer from having to work
with the details of the underlying computer architecture. In 1958 the
second version was released with a number of additions (subroutines,
functions, common blocks). A number of other companies then started
developing their own versions of compilers (programs which translate
the high level commands to machine code) to deal with the problem of
portability (machine dependency). In 1962 Fortran IV was released. This
attempted to standardize the language in order to work independent of
the computer (as long as the Fortran IV compiler was available!) In
1966 the first ANSI (American National Standards Institute) standard
was released which defined a solid base for further development of the
language. In 1978 the second ANSI standard was released which
standardized extensions, allowed structured programming, and introduced
new features for the IF construct and the character data type.
The third ANSI standard was released in 1991, called Fortran 90 standard. Fortran 90 is a superset of Fortran 77 and introduces new facilities for array type operations (collon notation, where construct, etc.), new methods for specifying precision, free source code form, recursion, dynamic arrays allocation, user defined data types, operator overloading, pointers, etc. Developments such as the recent importance of dynamic data structures and the (re)introduction of parallel architecture. Comparing with other languages, and only for number crunching, one can see that Fortran 90 scores higher on numeric polymorphism, decimal precision selection, real Kind type etc. Only Fortran 90 has data parallel capabilities meaningful for numeric computation which are missing from other languages. Also Fortran 90's data abstraction is not as powerful as in C++ but it avoids the complexities of object-oriented programming.
The OpenMP Application Program Interface (API) supports multi-platform shared-memory parallel programming in Fortran (including Fortran 77, 90 and 95 standard) and C/C++ on all architectures, including Linux platforms. Jointly defined by a group of major computer hardware and software vendors, OpenMP is a portable, scalable model that gives shared-memory parallel programmers a simple and flexible interface for developing parallel applications in Fortran 90 programming languge for platforms ranging from the desktop to the supercomputer. High Performance Fortran (HPF) was defined in 1993 to provide a portable syntax for expressing data-parallel computations in Fortran (including Fortran 90 and 95 standard). At the time of writing this, OpenMP stands at the mature 3.0 version.
A brief introduction to the several "main streem" Linux Distributions is given, along with links to official web sites with more detailed informations about each of the Linux Distributions. Additionaly, these official web sites contain detailed instructions about where each of the presented linux distribution could be obtained, free of charge. Many other Linux Distributions are also available, and equaly appropriate. Quick introduction to various Linux distributions can be found at DistroWatch.
SUSE (formerly SuSE or "Software und System Entwicklung") was established by a group of German developers in 1992. In the early days, the company sold sets of floppy disks containing a German edition of Slackware Linux, but it wasn't long before SUSE became an independent Linux distribution with the launch of version 4.2 in May 1996. In the following years, SUSE adopted the RPM package management format and developed YaST, an easy-to-use graphical system administration tool. Frequent releases, excellent documentation, and easy availability of SUSE Linux in stores across Europe and North America resulted in growing popularity of SUSE Linux.
SUSE was acquired by Novell in late 2003. Major changes in the development and availability of SUSE Linux followed shortly afterwards - YaST was released under the General Public License, the ISO images were freely distributed from dozens of public download servers, and, most significantly, the development of SUSE Linux was opened to public participation for the first time ever. Since the launch of the openSUSE project and the release of version 10.0 in October 2005, SUSE Linux has become a completely free distribution in both senses of the word.Starting from version 10.0, openSUSE Linux comes in several editions: the 5-CD "OSS" (Open Source Software) edition contains exclusively Free Software, while the 5-CD (or 1-DVD) "Eval" edition adds some proprietary, but freely-distributable packages. The retail edition of SUSE Linux includes extra commercial software, documentation, and installation support. A bootable "Live DVD" edition is provided for those who wish to test-drive SUSE Linux without the need to install it on their computers. At the time of writing this openSUSE is at the 11.1 version with KDE 4.2 support. Thsi is an excellent Linux distribution, extremly stable and polished. I would definitely recommend it to everyone.
Ubuntu Linux has stormed the Linux distribution scene like no other Linux project before. It has done so in a fashion resembling a highly sophisticated player: it seems to have first observed all other major distributions, learnt from their mistakes and combined the best features of all of them into one superior product. A six-month's release cycle, up-to-date package set, a clearly set product lifetime (at 18 months), fast download mirrors, great documentation, even free CDs and free shipment of CDs anywhere in the world to those interested in the distribution. That's Ubuntu. This is a Gnome based Linux distribution an has its twin - Kubuntu, which is a KDE based Linux distribution. This is another axcellent choice (Ubuntu & Kubuntu) of Linux distribution.
The project is funded by Mark Shuttleworth. Those who have never heard the name, Mark is a South African entrepreneur who made a fortune when he sold his company, Thawte Consulting, to Verisign, in late 1999. He founded several educational and open source initiatives around South Africa, including Go Open Source. While it is not yet clear how Mark's Canonical Limited intends to make money from Ubuntu, the distribution is certainly off to a good start, at least in terms of getting the name into public consciousness and offering a solid alternative to more established Linux distributions.On the technical side of things, Ubuntu is based on Debian Sid (unstable branch), but with more up-to-date packages, inclusive of the latest GNOME packages. The distribution is designed to be used on desktops and servers, with a supported upgrade path from Debian 3.0 (Woody). One of its more interesting features is the fact that the "root" account is disabled by default; the first registered user after installation is granted superuser privileges through the "sudo" command. This measure, while it might sound like an inconvenience at first, has to be applauded since it encourages good security practices.
For many, the name Red Hat epitomises Linux, as it is probably the best-known Linux company in the world. Founded in 1995 by Bob Young and Marc Ewing, Red Hat, Inc. has only recently started showing signs of profitability, due to services and its Red Hat Enterprise Linux product line. However, Red Hat Linux 9 was the last version in the Red Hat Linux product line, which was replaced by Fedora Core in late 2003. While Fedora is officially sponsored by Red Hat, it is developed with community participation, has a short life-span and serves mainly as a testing base for Red Hat Enterprise Linux.
What is so special about Red Hat Linux and Fedora Core? It is a curious mix of conservative and leading-edge packages put together on top of many knowledge-intensive utilities developed in-house. The packages are not the most up-to-date; once a new beta version is announced, the package versions are frozen, except for security updates. The result is a well-tested and stable distribution, the beta program and bug reporting facility are open to the public and there are several mailing lists. Red Hat Linux has become a dominant Linux distribution on servers around the world.
One other reason for Red Hat's success is the variety of popular services the company offers. The software packages are easy to update via Red Hat Network, a free repository of software and valuable information. A vast range of support services and enterprise Linux products are available from the company and, while not always cheap, you are virtually assured of an excellent support by highly skilled support personnel. The company has even developed a certification program to further popularise its distribution - the RHCE (Red Hat Certified Engineer) training and examinations are now available in most parts of the world. All these factors have contributed to the fact that Red Hat is now a recognised brand name in the IT industry.
Mandriva Linux (formerly Mandrakelinux), started by Gaël Duval, is a distribution that has experienced enormous rise in popularity since its first release in July 1998. The developers took the Red Hat distribution, changed the default desktop to KDE and added an easy-to-use installer, breaking the myth that Linux is hard to install. Mandrake's hardware detection features and disk partitioning utilities are considered by many to be the best in the industry and many users found themselves running Mandrake where other distributions failed to provide the required usability.
Mandriva Linux has since matured to become a popular distribution among those new to Linux and among home users looking for an alternative operating system. The Mandriva development is completely open and transparent with new packages appearing in the so-called "cooker" directory on a daily basis. When a new release is entering a beta stage, a cooker snapshot is accepted as the first beta. The beta testing process used to be short and intensive, but starting with version 9.0, it has become longer and more thorough. The beta mailing lists are extremely busy, but you are still likely to receive a very fast response to any bug or concern that you report.
The result of this type of development is a cutting edge release - a highly up-to-date Linux distribution. As a trade-off, the users are likely to notice more bugs and perhaps less stability than with other distributions. Many people find this trade-off acceptable on their desktops - they get the very latest software and the occasional application crash is something they can live with.
The Debian Project is an association of individuals who have made common cause to create a free operating system. This operating system is called Debian GNU/Linux, or simply Debian for short. Debian systems currently use the Linux kernel. Linux is a completely free piece of software started by Linus Torvalds and supported by thousands of programmers worldwide. Of course, the thing that people want is application software: programs to help them get what they want to do done, from editing documents to running a business to playing games to writing more software. Debian comes with over 20,000 packages (precompiled software that is bundled up in a nice format for easy installation on your machine) - all of it free. It's a bit like a tower. At the base is the kernel. On top of that are all the basic tools. Next is all the software that you run on the computer. At the top of the tower is Debian -- carefully organizing and fitting everything so it all works together.