Physics

Nifty Links


Useful Computer Links and Info


Linux Stuff:

 

Compilers:

  • Intel - Intel has produced some great compilers for their chip architecture. This is what I use for my programs.
  • Portland Group - The Portland Group has also produced some great compilers that are not architecture dependent.
  • GCC - The GNU Compiler Collection, a very useful assortment of freeware compilers. Standard on most Linux Systems.
  • G95 - Not done yet. To date there is only the g77 fortran compiler published under GPL, but they're working on a Fortran 95 compiler.

Mathematica:

 

What is Linux?

Linux, technically, is nothing more than the linux kernel developed by Linus Torvalds in the early 1990s. On it's own, it doesn't seem to do much. The kernel itself is not an operating system; it is the program that allows other programs to use the computer's hardware. The linux kernel can be downloaded from the Linux Kernel Archives. If one wanted to build a computer running linux, he/she would need much more then the linux kernel itself. In fact, a system running nothing but the linux kernel would not be able to communicate with the person using the computer! You need at least a shell program for that. This has left a perfect opening for the Gnu Project and the Free Software Foundation.

What is GNU?

GNU is a recursive acronym that stands for "Gnu's Not Unix." It's purpose is to produce a Unix like operating system that is completely open sourced. The Gnu Project started in 1984 and since has become a world-wide known organization of people who contribute though either software or funding to producing a very versatile, useful open-source operating system. When a program is called "open source", it means that it has been distributed along with it's source code. The terms and standards for how this is done is specified in the Gnu Public License which essentially says that the program and it's source code can be copied, distributed, and edited indefinitely, provided that any adaptations are recorded and no warranty is promised. The Linux kernel is publised under GPL. This is much different than what we are normally used to seeing from almost any other software vendor. Many of us are very familiar with the long product identification codes and even longer installation/registration proceedures software vendors employ to ensure they get their money.

The other great advantage to this is that one can examine the source code for the programs on the computer. When a program is written, it is written in a fashion that people can read it, and there are various programming languages to do this such as C, C++, Cobol, Pascal, Java, and Fortran. A computer, however, can only understand information in bits, ie, 1's or 0's. So after a program is written, it must be compiled. This compilation process takes the information the programmer has written and turns it into machine language which the computer can understand. When software companies (Microsoft is the one most everyone is familiar with) distribute their programs, they only distribute the form that the machine can read, not the person. Most people are rather fine with this, and justafiably so. A computer user (the person whom the program was written for and will be run by) usually has no need to know how the program was made, nor will they want to edit it, so they probably aren't interested in source code anyway. However, for those who are curious, not having the source code means that there is no chance of figuring out how it works. A commonly used analogy to buying software without the source code is buying a car with the hood welded shut. You can't see how it works. You can't even change the oil. I'ts understandable, though, why it's done this way. If software companies gave out their source code, they couldn't charge for their programs, people could simply compile their own.

If a program is well written, there is no harm is seeing how it works. However, if it is poorly written, knowing how it works could allow those with malicious intent to exploit its weaknesses, but good software can only get better when it is distributed openly.

GNU/Linux

Most systems that people say are running linux are really mosaics of Gnu programs surrounding the linux kernel. It would be more accurate to call them gnu-linux systems, but then people would wonder what 'new linux' was and what happend to the old linux. With the combination of the linux kernel and Gnu software, one can have a completely operational computer without paying a dime for software, and have the ability to see how it all works.

There are several different linux distributions by companies who have selected large varieties of programs to work with the linux kernel and thus produce an operating system. These companies then release these distributions with all the programs together as a package and as a result, a person doesn't have to go searching for all the programs they want. The most common distributions are Red Hat, SuSE, Mandrake, Debian, and Lindows. Where linux is concerned, it's the same for all of them. The kernels have different options built in, but it's the same linux. The major difference is what other software comes in the distribution.

 

 

 

 

 








Copyright 2003-2004 Daniel Brue