Sunday, September 18, 2011

Module 3

1. What is an argument? Give several examples.

An argument is short form for "command line argument", information provided after the command itself indicating the directory or file to which the command should be applied. You use it to indicate specific files like file1, file2, file8, or directories like home.

2. Use the man pages to tell me two options for the ls command and what they do.

The options for the ls (list directory contents) command: -s is sort by file size, and -r is reverse order while sorting.

3. Use the internet to look up "The Cathedral and the Bazaar" and tell me what it is and why it is important.

"The Cathedral and the Bazaar" is an essay/book written by programmer Eric S. Raymond. Originally it was presented by Mr. Raymond to the Linux Kongress in 1997. Mr. Raymond's essay outlined the conflicts that arose from attempting to use the traditional (Cathedral style) method of software development for open source programming. Mr. Raymond established guidelines for creating good open-source software, and was a leading force in the movement towards the bottom-up development and bazaar style. He believed that by releasing your code early in the process and as often as possible, you not only benefit the project by allowing others to work it and develop it from there, but also by turning your users and peers into a beta-testing group to help tackle possible bugs and solve problems with greater efficiency.

Mr. Raymond's succinct argument persuaded the Open-Source community to formally adopt Bazaar as their method of development. His points were based not only in highly practical approaches to problem solving, but also in a sort of moral code- obligations of users and developers to one another, and the community. These principles are the foundation of the open-source movement and had a direct impact on things like Mozilla (natch FireFox), Google and Google Labs, and much user-generated content like Wikipedia and such.

Sunday, September 11, 2011

The Kernel

A layman says computer and thinks of the whole package- the computer is a singular entity. But when you begin to work with computers you become more aware of the many complex and less-obvious components that make up the whole. A computer is merely the sum of parts- both real and virtual. Each part has a necessary and specific function towards the success of the whole.

The word kernel means the fruit or meat of a nut or seed removed and separate from it's shell and exterior properties. It's a perfect description of what we now call a kernel in computing. The Kernel is the meat of the operating system. It is the vital core of what defines the methodology of operations for a computer. A Kernel directs and facilitates the uses of resources by software and hardware that make up a computer or system of computers as well as facilitating communication between different bits of hardware and software. In many ways, a Kernel is like a conductor in the Orchestra. The conductor cues and directs different parts of the music (software) to be used in conjunction with the necessary instruments (hardware), at the appropriate speed, volume, and place (resource allocation).