<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8783002</id><updated>2011-04-22T02:39:29.890+05:30</updated><title type='text'>Balaji's Weblog</title><subtitle type='html'>Protocols | OpenSource | Linux | and much more...</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>16</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8783002.post-112585934185049976</id><published>2005-09-04T23:57:00.000+05:30</published><updated>2005-09-05T00:16:29.553+05:30</updated><title type='text'>A Quick Setup guide for Bugzilla on Linux</title><content type='html'>I wanted to setup and configure Bugzilla in my personal computer so just downloaded the package and started playing around with it. I will just run through the set up process which is quite simple.&lt;br /&gt;&lt;br /&gt;My Personal Computer runs on &lt;span style="font-weight: bold;"&gt;Fedora Core 4&lt;/span&gt; so i didnt have to install any of the basic packages that are required for bugzilla. They are as follows:&lt;br /&gt;&lt;br /&gt;  1. Apache&lt;br /&gt;  2. MySQL(3.22.5 or greater)&lt;br /&gt;  3. Perl(5.005 or greater, 5.6.1 is recommended if you wish to use Bundle::Bugzilla)&lt;br /&gt;  4. Apache (recommended)&lt;br /&gt;  5. Sendmail (Version 8.7)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 1:&lt;/span&gt;  The first step would be to download &lt;a href="http://www.bugzilla.org/download/#stable"&gt;bugzilla&lt;/a&gt; and then move the zipped archive to the following directory /var/www/html&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Listing 1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight: bold; font-style: italic;"&gt;$ cd /var/www/html/&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt; $ tar zxvf bugzilla-2.18.tgz&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt; $ mv bugzilla-2.18/ Bugzilla/&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 2:&lt;/span&gt; Now log on to the bugzilla directory i.e;, (/var/www/html/Bugzilla) and execute the Perl Script. checksetup.pl&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Listing 2&lt;/span&gt;&lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight: bold; font-style: italic;"&gt;$ su root&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt; $ ./checksetup.pl&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 3:&lt;/span&gt; Once this script is executed it should tell you what modules you need and the corresponding CPAN command needed to install from the CPAN repository. The CPAN command would look like this&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt;Listing 3&lt;/span&gt;&lt;br /&gt;&lt;br /&gt; &lt;span style="font-style: italic; font-weight: bold;"&gt;$ perl -MCPAN -e 'install "&lt;module-name&gt;"'&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 4:&lt;/span&gt; Issue the above command for each Perl module that you need to install. If your system is connected to the internet this downloads and installs the requested module automatically.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Configure Bugzilla&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 5:&lt;/span&gt; Once the above Processes are completed successfully the script would generate a file called localconfig in the same directory (/var/www/html/Bugzilla)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 6:&lt;/span&gt; Open the localconfig file and configure the Bugzilla application to use your local database server.You might have to change the following entries in the localconfig file&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Listing 4&lt;/span&gt;&lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight: bold; font-style: italic;"&gt;$db_host = "localhost";         # where is the database?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt; $db_port = 3306;                # which port to use&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt; $db_name = "test";              # name of the MySQL database&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt; $db_user = "balaji";            # user to attach to the MySQL database&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 7:&lt;/span&gt; Save the settings and the next thing to be done is to Create a database account for Bugzilla. To do this the first step would be to connect to mysql and then issue the following command.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Listing 5&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;mysql&gt;  GRANT SELECT, INSERT, UPDATE, DELETE, INDEX, ALTER, CREATE, LOCK TABLES,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;          CREATE TEMPORARY TABLES, DROP, REFERENCES ON bugs.* TO bugs@localhost&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;          IDENTIFIED BY '$db_pass';&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;mysql&gt;  FLUSH PRIVILEGES;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 8:&lt;/span&gt; This set of commands creates the bugs user and grants that user account numerous levels of access to the database configured when connecting locally.&lt;br /&gt;&lt;br /&gt;To make sure that the required PERL modules are present rerun the PERL script from the Bugzilla directory.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Listing 6:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt; $ su root&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt; $ ./checksetup.pl&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 9:&lt;/span&gt; Finally during this process you are asked to configure the Bugzilla's Administrator account.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Configure Apache &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 10:&lt;/span&gt; Open the configuration file for Apache (/etc/httpd/conf/httpd.conf) and then add the following lines First you need to allow Apache to run CGI Scripts outside of the cgi-bin directory. To do so you need to add or uncomment the following line in httpd.conf&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Listing 7:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight: bold; font-style: italic;"&gt;AddHandler cgi-script .cgi&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 11:&lt;/span&gt; Next you need to allow Bugzilla's .cgi files from the Bugzilla directory.Add the following lines&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Listing 8:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt; &lt;directory&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;     AddHandler cgi-script .cgi&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;          Options +Indexes +ExecCGI&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;          DirectoryIndex index.cgi&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;          AllowOverride Limit&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;        &lt;/directory&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Step 12:&lt;/span&gt; Now You need to configure Apache to accept index.cgi file when entering the Bugzilla directory by adding the following in the httpd.conf file&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Listing 9:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt; &lt;span style="font-style: italic; font-weight: bold;"&gt;DirectoryIndex index.html index.html.var index.cgi&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Screenshots &lt;/span&gt;on how to create new Products and new Components (i.e,Sections and Subsections)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;To add a new Section&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/7719/612/1600/Pic11.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/7719/612/320/Pic11.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/7719/612/1600/Pic2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/7719/612/320/Pic2.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;To add a new subsection for an already created Section&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/7719/612/1600/Pic3.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/7719/612/320/Pic3.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/7719/612/1600/Pic4.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/7719/612/320/Pic4.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;To enter bugs in the appropriate Sections and Subsections&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/7719/612/1600/Pic5.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/7719/612/320/Pic5.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8783002-112585934185049976?l=gbalaji.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/112585934185049976/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8783002&amp;postID=112585934185049976' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/112585934185049976'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/112585934185049976'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/2005/09/quick-setup-guide-for-bugzilla-on.html' title='A Quick Setup guide for Bugzilla on Linux'/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8783002.post-112343493861086723</id><published>2005-08-07T22:07:00.000+05:30</published><updated>2005-09-04T21:31:48.506+05:30</updated><title type='text'>Snapshot of DNS Ethereal Capture</title><content type='html'>&lt;div style="text-align: justify;"&gt;I wanted to post a screenshot of a DNS query and its corresponding DNS response captured using Ethereal. In fact in my previous blog i had posted the output of the dig program but i thought posting a screenshot of the decoding of the DNS query and DNS response would really help people who view this blog in finding out the ingredients of the DNS query .&lt;br /&gt;&lt;br /&gt;The query i gave in my Firefox browser was this http://www.kernel.org and this query and its corresponding response was captured using Ethereal . Here we go !!!!&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;DNS Query&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/7719/612/1600/query.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/7719/612/320/query.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;DNS Response (Screenshot of  Answer Section) Screenshot - 1&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/7719/612/1600/Response1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/7719/612/320/Response1.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;DNS Response (Screenshot of  Authority Section) Screenshot - 2&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/7719/612/1600/Response2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/7719/612/320/Response2.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;font&gt;Hope people find this information useful :-)&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8783002-112343493861086723?l=gbalaji.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/112343493861086723/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8783002&amp;postID=112343493861086723' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/112343493861086723'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/112343493861086723'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/2005/08/snapshot-of-dns-ethereal-capture.html' title='Snapshot of DNS Ethereal Capture'/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8783002.post-112158474574012359</id><published>2005-07-03T09:48:00.000+05:30</published><updated>2005-07-17T16:30:40.790+05:30</updated><title type='text'>Domain Name System</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Introduction&lt;br /&gt;&lt;/span&gt; &lt;div style="text-align: justify;"&gt;The DNS plays a critical role in supporting the Internet infrastructure by providing a distributed and fairly robust mechanism that resolves Internet host names into IP addresses and IP addresses back into host names. The DNS also supports other Internet directory-like lookup capabilities to retrieve information pertaining to DNS Name Servers, Canonical Names, Mail Exchangers, etc.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Overview of the DNS&lt;br /&gt;&lt;/span&gt; &lt;div style="text-align: justify;"&gt;To connect to a system that supports IP, the host initiating the connection must know in advance the IP address of the remote system. An IP address is a 32-bit number that represents the location of the system on a network. The 32-bit address is separated into four octets and each octet is typically represented by a decimal number. The four decimal numbers are separated from each other by a dot character ("."). Even though four decimal numbers may be easier to remember there is a practical limit as to how many IP addresses a person can remember without the need for some sort of directory assistance. The directory essentially assigns host names to IP addresses. &lt;/div&gt; &lt;p style="text-align: justify;"&gt;The Stanford Research Institute’s Network Information Center (SRI-NIC) became the responsible authority for maintaining unique host names for the Internet. The SRI-NIC maintained a single file, called hosts.txt, and sites would continuously update SRI-NIC with their host name to IP address mappings to add to, delete from, or change in the file. The problem was that as the Internet grew rapidly, so did the file causing it to become increasingly difficult to manage. Moreover, the host names needed to be unique throughout the worldwide Internet. With the growing size of the Internet it became more and more impractical to guarantee the uniqueness of a host name. The need for such things paved the way for the creation of a new system called the Domain Name System.&lt;br /&gt;&lt;/p&gt; &lt;p align="left"&gt;&lt;span style="font-weight: bold;"&gt;DNS Design Goals&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;There were some design goals that were set at the time of structuring the Domain Name System.They are as follows:&lt;br /&gt;&lt;div&gt; &lt;/div&gt; &lt;ul&gt;   &lt;li style="text-align: justify;"&gt;The primary goal is a consistent name space which will be used for referring to resources.&lt;/li&gt;   &lt;li style="text-align: justify;"&gt;The sheer size of the database and frequency of updates suggest that it must be maintained in a distributed manner,with local caching to improve performance.&lt;/li&gt;   &lt;li style="text-align: justify;"&gt;Where there tradeoffs between the cost of acquiring data, the speed of updates, and the accuracy of caches, the source of the data should control the tradeoff.&lt;/li&gt;   &lt;li style="text-align: justify;"&gt;The costs of implementing such a facility dictate that it be generally useful, and not restricted to a single application.&lt;/li&gt;   &lt;li style="text-align: justify;"&gt;The system should be useful across a wide spectrum of host capabilities. Both personal computers and large timeshared hosts should be able to use the system, though perhaps in different ways.&lt;/li&gt; &lt;/ul&gt;  &lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;Elements of DNS&lt;/span&gt;&lt;span class="" style="display: block;" id="formatbar_JustifyFull" title="Justify Full" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 13);ButtonMouseDown(this);"&gt;&lt;/span&gt;The DNS has three major components:&lt;br /&gt;&lt;/div&gt; &lt;ul&gt;   &lt;li style="text-align: justify;"&gt;The Domain Name Space&lt;/li&gt;   &lt;li style="text-align: justify;"&gt;Name Servers&lt;/li&gt;   &lt;li style="text-align: justify;"&gt;Resolvers&lt;/li&gt; &lt;/ul&gt; &lt;span style="font-weight: bold;"&gt;The Domain Name Space&lt;br /&gt;&lt;/span&gt; &lt;div style="text-align: justify;"&gt;The DNS is a hierarchical tree structure whose root node is known as the root domain. A label in a DNS name directly corresponds with a node in the DNS tree structure. A label is an alphanumeric string that uniquely identifies that node from its brothers. Labels are connected together with a dot notation, ".", and a DNS name containing multiple labels represents its path along the tree to the root. Labels are written from left to right. Only one zero length label is allowed and is reserved for the root of the tree. This is commonly referred to as the root zone. Due to the root label being zero length, all FQDNs end in a dot.&lt;br /&gt;&lt;br /&gt;Each node has a label, which is zero to 63 octets in length. Brother nodes may not have the same label, although the same label can be used for nodes which are not brothers.The domain name of a node is the list of the labels on the path from the node to the root of the tree.By convention, domain names can be stored with arbitrary case, but domain name comparisons for all present domain functions are done in a&lt;br /&gt;case-insensitive manner.&lt;br /&gt;&lt;br /&gt;When a user needs to type a domain name, the length of each label is omitted and the labels are separated by dots (".").Since a complete domain name ends with the root label, this leads to a printed form which&lt;br /&gt;ends in a dot.  We use this property to distinguish between:&lt;br /&gt;&lt;/div&gt; &lt;ul&gt;   &lt;li style="text-align: justify;"&gt;a character string which represents a complete domain name (often called "absolute").  For example, "poneria.ISI.EDU."&lt;/li&gt;   &lt;li style="text-align: justify;"&gt;a character string that represents the starting labels of a domain name which is incomplete, and should be completed by local software using knowledge of the local domain (often&lt;br /&gt;called "relative").  For example, "poneria" used in the ISI.EDU domain.&lt;br /&gt;&lt;/li&gt; &lt;/ul&gt;&lt;span style="font-weight: bold;"&gt; Example Name Space&lt;/span&gt;&lt;br /&gt;The following figure shows a Domain Name Space.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/7719/612/1600/fig-11.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/7719/612/320/fig-11.gif" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Resource Records&lt;br /&gt;&lt;/span&gt; &lt;div style="text-align: justify;"&gt;A domain name identifies a node. Each node has a set of resource information, which may be empty. The set of resource information associated with a particular name is composed of separate resource&lt;br /&gt;records (RRs).A DNS RR has 6 fields:&lt;br /&gt;&lt;/div&gt; &lt;ul style="text-align: justify;"&gt;   &lt;li&gt;NAME&lt;/li&gt;   &lt;li&gt;TYPE&lt;/li&gt;   &lt;li&gt;CLASS&lt;/li&gt;   &lt;li&gt;TTL&lt;/li&gt;   &lt;li&gt;RD Length&lt;/li&gt;   &lt;li&gt;RDATA.&lt;/li&gt; &lt;/ul&gt; &lt;div style="text-align: justify;"&gt;The NAME field holds the DNS name, also referred to as the owner name, to which the RR belongs. The TYPE field is the TYPE of RR. This field is necessary because it is not uncommon for a DNS name to have more than one type of RR.The common RR types are listed in the following table.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;table bgcolor="#ffffff" border="1" bordercolor="#000000" cellpadding="4" cellspacing="0"&gt; &lt;tbody&gt;&lt;tr&gt;&lt;th align="center" nowrap="nowrap" valign="top"&gt;&lt;p align="center"&gt;&lt;b&gt;RECORD TYPE&lt;/b&gt;&lt;/p&gt;&lt;/th&gt;     &lt;th nowrap="nowrap" valign="top"&gt;&lt;p align="center"&gt;&lt;b&gt;DESCRIPTION&lt;/b&gt;&lt;/p&gt;&lt;/th&gt;     &lt;th valign="top"&gt;&lt;p align="center"&gt;&lt;b&gt;USAGE&lt;/b&gt;&lt;/p&gt;&lt;/th&gt;   &lt;/tr&gt;   &lt;tr&gt;     &lt;td align="center" nowrap="nowrap" valign="top"&gt;A&lt;/td&gt;     &lt;td align="left" nowrap="nowrap" valign="top"&gt;&lt;p align="left"&gt;An address record&lt;/p&gt;&lt;/td&gt;     &lt;td align="left" valign="top"&gt;&lt;p align="left"&gt;Maps FQDN into an IP address&lt;/p&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;     &lt;td align="center" nowrap="nowrap" valign="top"&gt;PTR&lt;/td&gt;     &lt;td align="left" nowrap="nowrap" valign="top"&gt;&lt;p align="left"&gt;A pointer record&lt;/p&gt;&lt;/td&gt;     &lt;td align="left" valign="top"&gt;&lt;p align="left"&gt;Maps an IP address into FQDN&lt;/p&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;     &lt;td align="center" nowrap="nowrap" valign="top"&gt;NS&lt;/td&gt;     &lt;td align="left" nowrap="nowrap" valign="top"&gt;&lt;p align="left"&gt;A name server record&lt;/p&gt;&lt;/td&gt;     &lt;td align="left" valign="top"&gt;&lt;p align="left"&gt;Denotes a name server for a zone&lt;/p&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;     &lt;td align="center" nowrap="nowrap" valign="top"&gt;SOA&lt;/td&gt;     &lt;td align="left" nowrap="nowrap" valign="top"&gt;&lt;p align="left"&gt;A Start of Authority record&lt;/p&gt;&lt;/td&gt;     &lt;td align="left" valign="top"&gt;&lt;p align="left"&gt;Specifies many attributes concerning the zone, such as the name of the domain (forward or inverse), administrative contact, the serial number of the zone, refresh interval, retry interval, etc.&lt;/p&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;     &lt;td align="center" nowrap="nowrap" valign="top"&gt;CNAME&lt;/td&gt;     &lt;td align="left" nowrap="nowrap" valign="top"&gt;&lt;p align="left"&gt;A canonical name record&lt;/p&gt;&lt;/td&gt;     &lt;td align="left" valign="top"&gt;&lt;p align="left"&gt;Defines an alias name and maps it to the     absolute (canonical) name&lt;/p&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;     &lt;td align="center" nowrap="nowrap" valign="top"&gt;MX&lt;/td&gt;     &lt;td align="left" nowrap="nowrap" valign="top"&gt;&lt;p align="left"&gt;A Mail Exchanger record&lt;/p&gt;&lt;/td&gt;     &lt;td align="left" valign="top"&gt;&lt;p align="left"&gt;Used to redirect email for a given domain or     host to another host&lt;/p&gt;&lt;/td&gt;   &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;br /&gt;&lt;div style="text-align: justify;"&gt;The owner name is often implicit, rather than forming an integral part of the RR. For example, many name servers internally form tree or hash structures for the name space, and chain RRs off nodes. The remaining RR parts are the fixed header (type, class, TTL) which is consistent for all RRs, and a variable part (RDATA) that fits the needs of the resource being described.The meaning of the TTL field is a time limit on how long an RR can be kept in a cache. This limit does not apply to authoritative data in&lt;br /&gt;zones.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Queries&lt;br /&gt;&lt;/span&gt; &lt;div style="text-align: justify;"&gt;Queries are messages which may be sent to a name server to provoke a response. In the Internet, queries are carried in UDP datagrams or over TCP connections. The response by the name server either answers the question posed in the query, refers the requester to another set of name servers, or signals some error condition.In general, the user does not generate queries directly, but instead makes a request to a resolver which in turn sends one or more queries to name servers and deals with the error conditions and referrals that may result.DNS queries and responses are carried in a standard message format. The message format has a header containing a number of fixed fields which are always present, and four sections which carry query parameters and RRs.&lt;br /&gt;The most important field in the header is a four bit field called an opcode which separates different queries. Of the possible 16 values,one (standard query) is part of the official protocol, two (inverse&lt;br /&gt;query and status query) are options, one (completion) is obsolete, and the rest are unassigned.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; The four sections are:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Question&lt;/span&gt;        Carries the query name and other query parameters.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Answer         &lt;/span&gt; Carries RRs which directly answer the query.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;Authority&lt;/span&gt;       Carries RRs which describe other authoritative servers.&lt;br /&gt;                     May optionally carry the SOA RR for the authoritative&lt;br /&gt;                     data in the answer section.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Additional&lt;/span&gt;      Carries RRs which may be helpful in using the RRs in the&lt;br /&gt;                     other sections.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Standard Queries&lt;br /&gt;&lt;/span&gt; &lt;div style="text-align: justify;"&gt;A standard query specifies a target domain name (QNAME), query type (QTYPE), and query class (QCLASS) and asks for RRs which match. This type of query makes up such a vast majority of DNS queries that we use the term "query" to mean standard query unless otherwise specified. TheQTYPE and QCLASS fields are each 16 bits long, and are a superset of defined types and classes.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;The QTYPE field may contain:&lt;br /&gt;&lt;br /&gt;&lt;any&gt;     matches just that type. (e.g., A, PTR).&lt;br /&gt;&lt;br /&gt;AXFR            special zone transfer QTYPE.&lt;br /&gt;&lt;br /&gt;MAILB          matches all mail box related RRs (e.g. MB and MG).&lt;br /&gt;&lt;br /&gt;*               matches all RR types.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/any&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt; &lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt; &lt;p align="left"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/p&gt;The QCLASS field may contain:&lt;br /&gt;&lt;br /&gt;&lt;any&gt;     matches just that class (e.g., IN, CH).&lt;br /&gt;&lt;br /&gt;*               matches aLL RR classes.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Name Servers&lt;br /&gt;&lt;/span&gt; &lt;/any&gt;&lt;div style="text-align: justify;"&gt;Name servers are the repositories of information that make up the domain database. The database is divided up into sections called zones, which are distributed among the name servers. While name servers can have several optional functions and sources of data, the essential task of a name server is to answer queries using data in its zones.By design,name servers can answer queries in a simple manner; the response can always be generated using only local data, and either contains the answer to the question or a referral to other name servers "closer" to the desired information.A given zone will be available from several name servers to insure its availability in spite of host or communication link failure.&lt;br /&gt;A given name server will typically support one or more zones, but this gives it authoritative information about only a small section of the domain tree. It may also have some cached non-authoritative data about&lt;br /&gt;other parts of the tree. The name server marks its responses to queries so that the requester can tell whether the response comes from authoritative data or not.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Example:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Dig(Domain Information Groper)&lt;/span&gt; is a tool for interrogating with the DNS Server.It performs DNS lookups and displays the answers that are returned from the name server(s) that were queried.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Syntax:&lt;br /&gt;                   dig @server name type&lt;br /&gt;where:&lt;br /&gt;Server &lt;/span&gt;is the name or IP address of the name server to query. This can be an IPv4 address in dotted-decimal notation or an IPv6 address in colon-delimited notation.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Working of Dig&lt;br /&gt;&lt;/span&gt; &lt;div style="text-align: justify;"&gt;When the supplied server argument is a hostname, dig resolves that name before querying that name server. If no server argument is provided,dig consults /etc/resolv.conf and queries the name server listed there.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Working Snapshot of Dig&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;[balaji@localhost ~]$ dig kernel.org&lt;br /&gt;&lt;br /&gt;; &lt;&lt;&gt;&gt; DiG 9.3.1 &lt;&lt;&gt;&gt; kernel.org&lt;br /&gt;;; global options:  printcmd&lt;br /&gt;;; Got answer:&lt;br /&gt;;; -&gt;&gt;HEADER&lt;&lt;- opcode: QUERY, status: NOERROR, id: 4738&lt;br /&gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 6, ADDITIONAL: 4&lt;br /&gt;&lt;br /&gt;;; QUESTION SECTION:&lt;br /&gt;;kernel.org.                    IN      A&lt;br /&gt;&lt;br /&gt;;; ANSWER SECTION:&lt;br /&gt;kernel.org.             600     IN      A       204.152.191.5&lt;br /&gt;kernel.org.             600     IN      A       204.152.191.37&lt;br /&gt;&lt;br /&gt;;; AUTHORITY SECTION:&lt;br /&gt;kernel.org.             2779    IN      NS      ns2.kernel.org.&lt;br /&gt;kernel.org.             2779    IN      NS      ns3.kernel.org.&lt;br /&gt;kernel.org.             2779    IN      NS      ns.vger.kernel.org.&lt;br /&gt;kernel.org.             2779    IN      NS      ns1.q.port80.se.&lt;br /&gt;kernel.org.             2779    IN      NS      ns1.kernel.org.&lt;br /&gt;kernel.org.             2779    IN      NS      ns2.gimp.org.&lt;br /&gt;&lt;br /&gt;;; ADDITIONAL SECTION:&lt;br /&gt;ns1.q.port80.se.        520573  IN      A       217.75.109.220&lt;br /&gt;ns1.kernel.org.         2166    IN      A       209.128.68.125&lt;br /&gt;ns2.kernel.org.         2166    IN      A       204.152.191.4&lt;br /&gt;ns3.kernel.org.         2166    IN      A       204.152.191.36&lt;br /&gt;&lt;br /&gt;;; Query time: 319 msec&lt;br /&gt;;; SERVER: 218.248.255.145#53(218.248.255.145)&lt;br /&gt;;; WHEN: Sun Jul 17 16:30:10 2005&lt;br /&gt;;; MSG SIZE  rcvd: 252&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8783002-112158474574012359?l=gbalaji.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/112158474574012359/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8783002&amp;postID=112158474574012359' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/112158474574012359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/112158474574012359'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/2005/07/domain-name-system.html' title='Domain Name System'/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8783002.post-111941091354983824</id><published>2005-06-22T08:36:00.000+05:30</published><updated>2005-06-22T09:02:12.413+05:30</updated><title type='text'>Hello World</title><content type='html'>Hello Everyone&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;This blog has been silent for over two months probably the longest time gap ever.I have got lot of excuses for that... Lots of work couple of months back and then was in Mumbai for a week and once i came back i became busy developing some tools for my team at office.Last week i took the red pill and joined an other big project in the same company.Its for Lucent and i ll be working on IP,IP based protocols and UMTS protocols and i am really excited about being part of this great project coz i love working on these protocols.Whats the Project about??? well !!! i cannot disclose that coz its confidential :-).&lt;br /&gt;&lt;br /&gt;I have started blogging again and i wish to post better technical posts here . Have got lots to read and also lots to write .&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8783002-111941091354983824?l=gbalaji.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/111941091354983824/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8783002&amp;postID=111941091354983824' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/111941091354983824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/111941091354983824'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/2005/06/hello-world.html' title='Hello World'/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8783002.post-111106840951977882</id><published>2005-03-17T19:34:00.000+05:30</published><updated>2005-03-26T16:53:47.443+05:30</updated><title type='text'>My Nerd Score looks Kewl</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;span style="font-family:Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://www.wxplotter.com/ft_nq.php?im"&gt; &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial, Helvetica, sans-serif;"&gt;&lt;span style="font-size:85%;"&gt;&lt;img src="http://www.wxplotter.com/images/ft/nq.php?val=8756" alt="I am nerdier than 85% of all people. Are you nerdier? Click here to find out!" /&gt; &lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a href="http://www.wxplotter.com/ft_nq.php?im"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8783002-111106840951977882?l=gbalaji.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/111106840951977882/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8783002&amp;postID=111106840951977882' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/111106840951977882'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/111106840951977882'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/2005/03/my-nerd-score-looks-kewl.html' title='My Nerd Score looks Kewl'/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8783002.post-110861955797356143</id><published>2005-02-17T11:07:00.000+05:30</published><updated>2005-02-17T11:22:37.996+05:30</updated><title type='text'>The Kernel and its variants</title><content type='html'>&lt;strong&gt;Kernel Definition&lt;/strong&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;br /&gt;The kernel is a program that constitutes the central core of a computer operating system. It has complete control over everything that happens in the system. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;A kernel can be contrasted with a shell (such as bash, csh or ksh in Unix-like operating systems), which is the outermost part of an operating system and a program that interacts with user commands. The kernel itself does not interact directly with the user, but rather interacts with the shell and other programs as well as with the hardware devices on the system, including the processor (also called the central processing unit or CPU), memory and disk drives. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;The kernel is the first part of the operating system to load into the main memory (RAM) during booting, and it remains in the memory for the entire duration of the computer session. Thus it is important for it to be as small as possible while still providing all the essential services required by the other parts of the operating system and by the various applications. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Because the code that makes up the kernel is needed continuously, it is usually loaded into a protected area of memory, which prevents it from being overwritten by other, less frequently used parts of the operating system or by application programs. The kernel performs its tasks (e.g. executing processes and handling interrupts) in &lt;strong&gt;kernel space,&lt;/strong&gt; whereas everything a user normally does (e.g. writing text in a text editor or running graphical programs in the X Window System) is done in &lt;strong&gt;user space&lt;/strong&gt;. This separation is made in order to prevent user data and kernel data from interfering with one another and thereby diminishing performance or causing the system to become unstable and possibly crashing. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;When a computer crashes, it actually means the kernel has crashed. If only a single program has crashed but the rest of the system remains in operation, then the kernel itself has not crashed. A crash is a situation in which a program, either an user application or a part of the operating system, stops performing its expected functions and also stops responding to other parts of the system. The program might appear to freeze. If such program is a critical to the operation of the kernel, the entire computer could freeze or crash. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;The kernel provides basic services for all other parts of the operating system, typically including memory management, process management, file management and I/O (input/output) management (i.e., accessing the peripheral devices). These services are requested by other parts of the operating system or by application programs through a specified set of program interfaces referred to as system calls.&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Process management, possibly the most obvious aspect of a kernel to the user, is the part of the kernel that ensures that each process gets its turn to run on the processor and that the individual processes do not interfere with each other by writing to their areas of memory. A process, also referred to as a task, can be defined as an executing (i.e., running) instance of a program. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;The contents of a kernel vary considerably according to the operating system, but they typically include  a &lt;strong&gt;scheduler&lt;/strong&gt;, which determines how the various processes share the kernel's processing time (including in what order),  a&lt;strong&gt; supervisor&lt;/strong&gt;, which grants use of the computer to each process when it is scheduled,  an &lt;strong&gt;interrupt handler&lt;/strong&gt;, which handles all requests from the various hardware devices (such as disk drives and the keyboard) that compete for the kernel's services and  a memory manager, which allocates the system's address spaces among all users of the kernel's services.&lt;br /&gt;Normally people relate kernel to the BIOS. The kernel should not be confused with the BIOS (Basic Input/Output System). The BIOS is an independent program stored in a chip on the motherboard (the main circuit board of a computer) that is used during the booting (i.e., startup) process for such tasks as initializing the hardware and loading the kernel into memory (RAM). Whereas the BIOS always remains in the computer and is specific to its particular hardware, the kernel can be easily replaced or upgraded by changing or upgrading the operating system or, in the case of Linux, by adding a newer kernel or recompiling an existing kernel. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Most kernels have been developed for a specific operating system, and usually there is only one version available for each operating system. For example, the Microsoft Windows 2000 kernel is the sole kernel Microsoft Windows 2000 and the Microsoft Windows 98 kernel is the only kernel Microsoft Windows 98. Linux is far more flexible in that there are numerous versions of the Linux kernel, and each of these can be modified in innumerable ways by an informed user.&lt;/div&gt;&lt;div align="justify"&gt;A few kernels have been designed with the intention of being suitable for use with any operating system. The best known of these is the Mach kernel, which was developed at Carnegie-Mellon University and is used in the Macintosh OS X operating system. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;The term kernel is frequently used in books and discussions about Linux, whereas it is used less often when discussing some other operating systems, such as Microsoft Windows. The reason is that in the kernel is highly configurable in the case of Linux and the user is encouraged to learn about and modify it and/or download and install updated versions. With the Microsoft Windows operating systems, in contrast, there is relatively little point in discussing kernels because they cannot be modified or replaced. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;strong&gt;Categories of Kernels &lt;/strong&gt;&lt;/div&gt;&lt;strong&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;/strong&gt;Kernels can be classified into four broad categories: &lt;strong&gt;monolithic kernels&lt;/strong&gt;,&lt;strong&gt; microkernels&lt;/strong&gt;, &lt;strong&gt;hybrid kernels&lt;/strong&gt; and &lt;strong&gt;exokernels&lt;/strong&gt;. Each has its own advantages and disadvantages as well.&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;strong&gt;Monolithic kernels&lt;/strong&gt;, which have traditionally been used by Unix and Linux, contain all the operating system core functions and the device drivers (small programs that allow the operating system to interact with hardware devices, such as disk drives, video cards and printers). Modern monolithic kernels, such as those of Linux and FreeBSD, feature the ability to load modules at runtime, thereby allowing easy extension of the kernel's capabilities as required, while helping to minimize the amount of code running in kernel space. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt; &lt;strong&gt;Microkernels&lt;/strong&gt; usually provides only minimal services, such as defining memory address spaces, interprocess communication (IPC) and process management. All other functions, such as hardware management, are implemented as processes running independently of the kernel. Examples of microkernel operating systems are AIX, BeOS, Hurd, Mach, Minix and QNX. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;strong&gt;Hybrid kernels&lt;/strong&gt; are similar to microkernels, except that they include additional code in kernel space so that such code can run more swiftly than it would if it were in the user space. These kernels represent a compromise that was implemented by some developers before it was demonstrated that pure microkernels can provide high performance. Hybrid kernels should not be confused with monolithic kernels that can load modules after booting example: Linux. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Most modern operating systems use hybrid kernels, including Microsoft Windows NT, 2000 and XP. Mac OS X also uses a modified microkernel, as it includes BSD kernel code in its Mach-based kernel. DragonFly BSD, a recent variant of FreeBSD, is the first non-Mach based BSD operating system to employ a hybrid kernel architecture. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;strong&gt;Exokernels&lt;/strong&gt; are a still experimental approach to operating system design. They differ from the other types of kernels in that their functionality is limited to the protection and multiplexing of the raw hardware, and they provide no hardware abstractions on top of which applications can be constructed. This separation of hardware protection from hardware management enables application developers to determine how to make the most efficient use of the available hardware for each specific program. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Exokernels in themselves they are extremely small. However, they are accompanied by library operating systems, which provide application developers with the conventional functionalities of a complete operating system. A major advantage of exokernel-based systems is that they can incorporate multiple library operating systems, each exporting a different API (application programming interface), such as one for Unix and one for Microsoft Windows, thus making it possible to simultaneously run both Unix and Windows applications. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;The Monolithic Kernel Versus Micro Kernel&lt;/div&gt;&lt;div align="justify"&gt;In the early 1990s, many computer scientists considered monolithic kernels to be obsolete, and they predicted that microkernels would revolutionize operating system design. In fact, the development of Linux as a monolithic kernel rather than a microkernel led to a famous flame war between Andrew Tanenbaum, the developer of the Minix operating system, and Linux Torvalds, who originally developed Linux based on Minix. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Proponents of microkernels point out that monolithic kernels have the disadvantage that an error in the kernel can cause the entire system to crash. However, with a microkernel, if a kernel process crashes, it is still possible to prevent a crash of the system as a whole by merely restarting the service that caused the error. Although this sounds sensible, it is questionable how important it is in reality, because operating systems with monolithic kernels such as Linux have become extremely stable and can run for years without crashing. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Another disadvantage cited for monolithic kernels is that they are not portable; that is, they must be rewritten for each new architecture that the operating system is to be ported to. However, in practice, this has not appeared to be a major disadvantage, and it has not stopped Linux from being ported to numerous processors. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Monolithic kernels also appear to have the disadvantage that their source code can become extremely large. For example, the code for the Linux kernel version 2.4.0 is approximately 100MB and contains nearly 3.38 million lines, and that for version 2.6.0 is 212MB and contains 5.93 million lines. This adds to the complexity of maintaining the kernel, and it also makes it difficult for new generations of computer students to study and comprehend the kernel. However, the advocates of monolithic kernels claim that in spite of their size such kernels are easier to design correctly, and thus they can advance more quickly than microkernel-based systems.&lt;br /&gt;Moreover, the size of the compiled kernel is only a tiny fraction of that of the source code, for example roughly 1.1MB in the case of version 2.4 on a typical Red Hat desktop installation. Contributing to the small size of the Linux kernel is its ability to dynamically load modules at runtime, so that the basic kernel contains only those components that are necessary for the system to start itself and to load modules. This approach allows all other components, which have been compiled but not linked into the kernel executable, to be loaded into the slots reserved for them whenever their services are required. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;The monolithic Linux kernel can be made extremely small not only because of its ability to dynamically load modules but also because of its ease of customization. In fact, there are some versions that are small enough to fit together with a large number of utilities and other programs on a single floppy disk and still provide a fully functional version of Linux (one of the best known of which is mulinux). This ability to miniaturize its kernel has also led to a rapid growth in the use of Linux in embedded systems. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Although microkernels are very small by themselves, in combination with all their required auxiliary code they are, in fact, often larger than monolithic kernels. Advocates of monolithic kernels also point out that the two-tiered structure of microkernel systems, in which most of the operating system does not converse directly with the hardware, creates a not-insignificant cost in terms of efficiency. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Apparently the advantages of microkernels have not been sufficient to compel the majority of operating systems to adopt this approach. In fact, there are extremely few widely used operating systems today that utilize microkernels -- mainly just AIX and QNX. AIX is a proprietary Unix operating system developed by IBM, a company which has recently been placing an increasing emphasis on Linux. QNX is a highly successful commercial real-time operating system for embedded applications where reliability and small size are of paramount importance.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8783002-110861955797356143?l=gbalaji.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/110861955797356143/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8783002&amp;postID=110861955797356143' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/110861955797356143'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/110861955797356143'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/2005/02/kernel-and-its-variants.html' title='The Kernel and its variants'/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8783002.post-110278386000691551</id><published>2004-12-11T20:35:00.000+05:30</published><updated>2004-12-11T22:25:10.490+05:30</updated><title type='text'>Debian Sarge - A Review</title><content type='html'>&lt;span style="font-weight: bold;"&gt;What is Debian&lt;br /&gt;&lt;br /&gt;&lt;/span&gt; &lt;div style="text-align: justify;"&gt;Debian GNU/Linux is a bit different from the other Linux Distros that are out there in the market.Debian does not have any point releases unlike Redhat 7.0,7.1,7.2,8.0,9.0.Debian has three versions with different content:Stable,testing,and unstable and the three versions called Woody,Sarge and Sid.Woody is officially known as Debian 3.0.Any program that will be published in the next version will be Compiled,Documented, packaged and added in the Unstable version.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Installation of Debian Sarge&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Debian installation could be divided into three phases or stages. First is when you boot the machine with a Debian Bootable DVD/CD and do the Base install. The Second part consistes of installing packages such as the X Window System,Mail Server/client and common software packages that would make Debian Sarge a complete Operating System.After that you get a fully working Debian machine with Gnome or KDE or both (depends on the installation) .&lt;br /&gt;&lt;br /&gt;So This is what i did to set up Debian Sarge in my system . Here we go...............&lt;br /&gt;I ve got Debian Sarge DVD.With this i installed Debian Sarge in my system.I got this DVD when i bought this month's(Dec 2004) PC Quest Magazine.In fact i got PC Quest only for the sake of this DVD :-) .&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I ve got a Samsung DVD ROM in which i inserted the Debian Sarge DVD.The System booted and i got the Debian Sarge Startup screen . I didnt have second thoughts at all i wanted 2.6 Kernel and i just typed linux26 in the boot prompt and the installer Started. The best part of Debian Sarge is that it has got the latest software packages and it has got a beautiful Installer. Debian has got a reputation of being the toughest Distribution to install on any PC because if a person needs to install Debian in his system the person needs to know a lot about the Hardware thats being used in the system but the Sarge installer is very easy to use and at the end of the installation you get a fully functional Debian Box with a shiny GUI (KDE or Gnome).&lt;br /&gt;&lt;br /&gt;I was just keeping my fingers crossed till the installation started. The initial screens just asked me to select the language,country and keyboard layout respectively.The Installer detects all the hardware thats plugged into ths system.The Installer detected my Network Interface Card(NIC) and it tried to configure it with DHCP but i ve got a static IP so i had to enter the IP of my machine and the other necessary details and i was able to configure it easily . Next the installer asked for the hostname and domain name of the machine .I have just got one machine a stand alone so i just had to type local and then comes the important aspect . Guess what ................ Its about Paritioning . Wow....... I didnt have any problems because i already had knoppix running in my system so i already had an EXT3 partition and swap so all i had to do for this installation was to point the installer to format the current EXT3 Partition and use it for Sarge.It was a breeze doing that and i really enjoyed it.Then the installer started installing the Base System which hardly took about 10 mts and then the system rebooted and then i got GRUB on the screen with 2 options (one was normal mode and the other was the recovery mode ) and it also detected my other Operating System Guess what windows XP????????? No its Windows 98 .Hip Hip Hurrah !!!!!! I just selected the first option and booted into my new Operating System then the second phase of insallation started.In this phase the installer asked me to create enter the name for an User and the corresponding password and then it asked me to enter the administrator password and then it asked me about apt-setup . I just inserted my DVD and it just indexed all the packages in my DVD .Then it showed me a screen which showed me some options and asked me for the packages to install. So all i did was i needed apache so selected WebServer and Of course i need X Windows so i just selected Desktop Environment and i really didnt want to manually select the packages so i just clicked on Finish and i went for sleep and when i got up i saw the login Screen in the GUI mode with X windows System running and GDM running perfectly i selected KDE as the Desktop Environment and entered my user name and password and i logged into KDE and i was amazed with the number of software packages that were installed . I didnt break my head in selecting packages as this used to be the process in Debian Woody . I had everything including OpenOffice of course No doubt of GCC Compilers .&lt;br /&gt;&lt;br /&gt;All in all i would say that Debian Sarge is a very good Distribution targeted towards Servers and Desktops too . I highly recommend it for newbies too but the only Disadvantage that users might face is with the internet . If the user has a normal Dial up i dont think so the user might like seeing his pocket burning when he issues apt-get update or apt-get install &lt;package&gt; but if the user has got a cable connection and does not worry about the downloads and the time he spends online then Debian would be or infact should be the way to go.&lt;/package&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8783002-110278386000691551?l=gbalaji.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/110278386000691551/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8783002&amp;postID=110278386000691551' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/110278386000691551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/110278386000691551'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/2004/12/debian-sarge-review.html' title='Debian Sarge - A Review'/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8783002.post-110217336274035816</id><published>2004-12-04T20:10:00.000+05:30</published><updated>2004-12-06T09:52:20.216+05:30</updated><title type='text'>Debugging Demystified  - Part I </title><content type='html'>&lt;div style="TEXT-ALIGN: justify"&gt;Debugging (in the context of software engineering) is a process of identifying the cause for defective behavior of a system .In raw terms it can be defined as fixing a bug in the software. Debugging plays a very important role in Software Engineering process because this is the phase where the bugs are really fixed.Now the question to be asked is How could Debugging be done. The answer is very simple.There are Debuggers which are specifically used for Debugging purposes alone. So what is a Debugger and why at all should a Debugger be used. ??? Before we get into that. Let me define what is a Debugger and the purpose of it. The purpose of a debugger is to allow you to see what is going on "inside" another program while it executes--or what another program was doing at the moment it crashed.&lt;br /&gt;Lot of Debugging tools are available which can be used very easily.Almost all IDEs have debugging functionality inbuilt in them .One of the them is Microsoft Visual Studio which has very good debugging functionalities embedded into it which makes it really easy for the developer to fix bugs in the Code.As far as Linux Platform is concerned there are handful of Debuggers available. GDB is a very good Debugger but the main disadvantage of this IDE from my point of view is that its a Command Line tool which makes it quite difficult to use because to use GDB you have to make sure that you read the GDB documentation first , memorize the commands and then start using it.There has to be a GUI for Debuggers which would make Debugging really easy .Infact i was in need of a real good Debugger with a decent User Interface which would allow me to set breakpoints with a click of my mouse button and i found out DDD. DDD stands for Data Display Debugger and it has got a very good User Interface which makes it really easy to use and morever people who have got used to Visual Studio wont really find it difficult to migrate to DDD. Ultimately less spent time is spent in learning about the tool and more time is spent in improving the Debugging skills which counts more. I ll just give a small Introduction to DDD.&lt;br /&gt;&lt;br /&gt;Technically Speaking DDD is a front end to the command line Debugger GDB which can also be called as inferior Debugger because it lies at the layer beneath DDD. To debug an executable binaries DDD can be used with GDB,DBX,Ladebug,or XDB.&lt;br /&gt;&lt;br /&gt;&lt;small style="FONT-WEIGHT: bold"&gt;GDB&lt;/small&gt;&lt;dfn style="FONT-WEIGHT: bold"&gt;&lt;/dfn&gt;, the &lt;small&gt;GNU&lt;/small&gt; Debugger, is the recommended inferior debugger for &lt;small&gt;DDD&lt;/small&gt;. &lt;small&gt;GDB&lt;/small&gt; supports native executables binaries originally written in C, C++, Java, Pascal, Chill, Ada, and FORTRAN.&lt;br /&gt;&lt;br /&gt;To debug &lt;em&gt;Java byte code programs&lt;/em&gt;, you can use &lt;small&gt;DDD&lt;/small&gt; with &lt;dfn&gt;&lt;/dfn&gt;&lt;small&gt;JDB&lt;/small&gt;&lt;dfn&gt;&lt;/dfn&gt;, the Java debugger.&lt;br /&gt;&lt;br /&gt;To debug &lt;em&gt;Python programs&lt;/em&gt;, you can use &lt;small&gt;DDD&lt;/small&gt; with &lt;dfn&gt;&lt;/dfn&gt;&lt;small&gt;PYDB&lt;/small&gt;&lt;dfn&gt;&lt;/dfn&gt;, a Python debugger.&lt;br /&gt;&lt;br /&gt;To debug &lt;em&gt;Perl programs&lt;/em&gt;, you can use &lt;small&gt;DDD&lt;/small&gt; with the &lt;dfn&gt;Perl debugger.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;....To be Continued :-) &lt;/dfn&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8783002-110217336274035816?l=gbalaji.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/110217336274035816/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8783002&amp;postID=110217336274035816' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/110217336274035816'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/110217336274035816'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/2004/12/debugging-demystified-part-i.html' title='Debugging Demystified  - Part I '/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8783002.post-110001722387395622</id><published>2004-11-09T21:41:00.000+05:30</published><updated>2004-11-09T21:50:23.873+05:30</updated><title type='text'>Recovering the GRUB Boot-Loader</title><content type='html'>&lt;div style="text-align: justify;"&gt;I have seen people experiencing problems in recovering the GRUB(Grand Unified Boot Loader) boot loader.This problem occurs when one has to reinstall windows and its setup overwrites the Master Boot Record (MBR), removing the GRUB bootloader which was previously installed in MBR.When this happens this makes your Linux installation inaccessible and makes many users irritated i being one among them :-).Then i found out that recovering Linux under these circumstances was really easy.This is the procedure . Boot from the First Fedora CD, and at the boot prompt issue the &lt;span style="font-style: italic; font-weight: bold;"&gt;Linux rescue &lt;/span&gt;command.Now, you would be asked whether to mount the Linux System image  under the &lt;span style="font-style: italic; font-weight: bold;"&gt;/mnt/sysimage&lt;/span&gt; directory, choose &lt;span style="font-weight: bold; font-style: italic;"&gt;Continue&lt;/span&gt;.This would land the user in a root-like hash prompy command line environment.Now give the following Commands&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;                            &lt;span style="font-style: italic; font-weight: bold;"&gt;#chroot /mnt/sysimage&lt;/span&gt;&lt;br /&gt;                            &lt;span style="font-style: italic; font-weight: bold;"&gt;#grub-install /mnt/hda &lt;/span&gt;   --&gt; refers to the Master Boot Record&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8783002-110001722387395622?l=gbalaji.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/110001722387395622/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8783002&amp;postID=110001722387395622' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/110001722387395622'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/110001722387395622'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/2004/11/recovering-grub-boot-loader.html' title='Recovering the GRUB Boot-Loader'/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8783002.post-110001651134567949</id><published>2004-11-09T20:58:00.000+05:30</published><updated>2004-11-09T21:38:31.346+05:30</updated><title type='text'>Gmail "A  Google approach to email " - A Review </title><content type='html'>&lt;div style="text-align: justify;"&gt;Some of my friends got an invitation and created their Gmail accounts. After using them for a while, they inturn got an invitation to invite other friends. Some of them asked me whether I want one. I decided to test Gmail and then they sent me an invite for Gmail which enables you to create an email account in Gmail. This is because Gmail does not have anything called "signup" since   Gmail is still in beta stage.&lt;br /&gt;&lt;/div&gt; &lt;br /&gt;&lt;div style="text-align: justify;"&gt;Gmail user interface is very simple. I hardly found any popup advertisements until i logged out. After using it for some days I was quite impressed by its features especially the feature which allows you to use the keyboard as a shortcut. It was like using an email client like Thunderbird/Outlook Express.&lt;br /&gt;&lt;/div&gt; &lt;br /&gt;&lt;div style="text-align: justify;"&gt;The user interface for Gmail is based on Javascript with cookies enabled. As of now, it will run on certain browsers namely Microsoft IE 5.5/6.0 (Windows) ,Mozilla 1.4 and newer (Windows, Macintosh, Linux) Mozilla Firefox 0.8/1.0 (Windows,Macintosh, Linux)&lt;br /&gt;&lt;/div&gt; &lt;br /&gt;&lt;div style="text-align: justify;"&gt;However I tried it with only Mozilla Firefox which is the recommended browser to access Gmail. The loading of the User Interface takes very little time.Its really fast and I got impressed by the auto address completion feature which fills up the email address in the To,Cc,Bcc boxes by giving a drop down list of the email addresses from your contact list.This is the first time I am seeing such a feature in a web based email.&lt;br /&gt;&lt;/div&gt; &lt;br /&gt;&lt;div style="text-align: justify;"&gt;One of the important feature is "Conversation view". By default all the emails are threaded and neatly arranged. You will appreciate it if you subscribe to lot of mailing lists.&lt;br /&gt;&lt;br /&gt;And now comes the storage aspect Gmail provides you with 1GB of storage space. What more can you expect ? &lt;br /&gt;&lt;br /&gt;The Concept of  "Folders" is not available in Gmail .All the mails are stored under "All Mail" including the sent mail. Whenever you want to retrieve a particular mail, just type some keyword in the "Search Mail" box, -- your mails appear . I guess the searching mechanism does not need any explanation since its Google's.&lt;br /&gt;&lt;br /&gt;Instead of folders, Gmail uses a concept called "Label" . When you are reading any conversation from that mailing list, just assign appropriate label to it by clicking a button. The entire conversation will be marked with that label. Any new mails under the same conversation will be automatically visible under that label.&lt;br /&gt;&lt;br /&gt;As of now, Gmail has some restrictions in what you send/receive. The maximum size of the outgoing mail should be 10MB. For security reasons, any kind of executable files are not allowed in the attachment. (.exe) files are not allowed as attachment even if it is zipped in the following formats, tar.gz., tgz, .gz etc. In such a case, the mail won't be sent or bounced to the sender. Since most of the viruses spread through executable files, this measure will try to reduce the spread of email viruses through Gmail.&lt;br /&gt;&lt;br /&gt;Normally when you send an email to a mailing list, usually you will also receive a copy of it if you have subscribed to that mailing list. However in Gmail, you won't receive it since it is already stored in "Sent Mail". Its to avoid cluttering of the inbox with multiple copies of the same mail. If you are able to see your sent mail in the sent mail list it means that the mail has been successfully delivered.  If not, obviously you will receive a "Mail delivery notification for failed delivery".&lt;br /&gt;Spam marking is there. The feature I liked most is it keyboard shortcut like:&lt;br /&gt;&lt;br /&gt;c for compose&lt;br /&gt;/ for search&lt;br /&gt;k move to new conversation&lt;br /&gt;j move to older conversation&lt;br /&gt;p move to previous message in a conversation&lt;br /&gt;n move to next message in a conversation&lt;br /&gt;o to open the message/conversation (from the index page)&lt;br /&gt;u return to inbox or conversation list&lt;br /&gt;r reply&lt;br /&gt;a reply all&lt;br /&gt;f forward&lt;br /&gt;TAB+Enter to send the message&lt;br /&gt;! mark a message as spam&lt;br /&gt;and some more. For a detailed list check:&lt;br /&gt;http://gmail.google.com/support/bin/answer.py?answer=6594&amp;amp;topic=-1&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Gmail by default uses Unicode UTF-8 encoding and hence you can cut and paste the UTF-8 encoded text.&lt;br /&gt;&lt;br /&gt;Since Gmail is still in beta stages, lot of testing is done to improve the features and fix as many bugs so it is not open to the public as yet. i.e. You can't signup for a gmail account by logging to http://gmail.google.com. To get a Gmail invite a someone who has a Gmail account can send you an invitation to create an account. Based on availability of new storage space and other resources, Gmail is allotting few invitations to the existing Gmail users so that they can invite their friends who will be interested in beta testing. If you ever get any invitation, by all means accept it, and enjoy the great Gmail features. &lt;/div&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8783002-110001651134567949?l=gbalaji.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/110001651134567949/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8783002&amp;postID=110001651134567949' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/110001651134567949'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/110001651134567949'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/2004/11/gmail-google-approach-to-email-review.html' title='Gmail &quot;A  Google approach to email &quot; - A Review '/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8783002.post-110001341109700077</id><published>2004-11-09T20:24:00.000+05:30</published><updated>2004-11-09T20:46:51.096+05:30</updated><title type='text'>What is Open Source?</title><content type='html'>&lt;div style="text-align: justify;"&gt;Open Source is a non-profit corporation dedicated to managing and promoting the Open Source Definition for the good of the community, specifically through the OSI Certified Open Source Software.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;What is Open Source ?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Before we discuss more about the differences between open source and proprietary software, we need to understand perfectly what the term really means. Many people have a misconception that  "open source" means "free of charge" but that's not necessarily the case. Open source code can be and is the basis for products of all Linux Distributions like Redhat,Mandrake,Debian and dozens of other commercial distributions of Linux that range from a few dollars to a few thousand dollars like Redhat Enterprise Edition .&lt;br /&gt;&lt;br /&gt;"Open source" also does not mean that it is "unlicensed" In fact, there are a whole slew of licenses under which open source software is distributed. Some of the most popular licenses include GPL (the GNU Public License), BSD, and the Mozilla Public License. The Open Source Initiative (OSI), a non-profit corporation, has developed a certification process for licenses. You can see a list of open source licenses approved by OSI at http://opensource.org/licenses/.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Open source software means the source code is available to anyone who wants it, and can be examined, modified and distributed . This is in contrast to "closed" or proprietary software such as Microsoft Windows, for which the source code is a closely kept as a trade secret (except when it's leaked to the public).&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;When programmers can read, redistribute, and modify the source code for a piece of software, the software evolves. People improve it, people adapt it, and people fix bugs.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;In the open source community everyone has learned that this rapid evolutionary process model produces better software than the traditional closed model, in which only a very few programmers have a look at the code.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8783002-110001341109700077?l=gbalaji.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/110001341109700077/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8783002&amp;postID=110001341109700077' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/110001341109700077'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/110001341109700077'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/2004/11/what-is-open-source.html' title='What is Open Source?'/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8783002.post-109946321837568307</id><published>2004-11-03T10:27:00.000+05:30</published><updated>2004-11-03T11:56:58.376+05:30</updated><title type='text'>Difference between GNU/Linux and Linux </title><content type='html'>&lt;div align="justify"&gt;&lt;br /&gt;When Linus Torvalds wrote the Linux kernel, he didn't have the whole system in place, so he ported a few &lt;a href="http://www.gnu.org/"&gt;GNU&lt;/a&gt; utilities like bash, gcc and released it along with Linux.&lt;/div&gt;&lt;div align="justify"&gt; &lt;/div&gt;&lt;div align="justify"&gt;So, Linux is not the operating system itself, it is just the kernel(the Core of any Operating System). In case of &lt;a href="http://www.gnu.org/gnu/linux-and-gnu.html"&gt;GNU/Linux&lt;/a&gt;, the (most of) user programs are contributions from the &lt;a href="http://www.fsf.org/"&gt;Free Software Foundation&lt;/a&gt; or programs published under the GPL license.So, when you mean "Linux", it refers to the operating system kernel. If we want to refer the operating system, we should use "GNU/Linux" giving the credit to the Free Software Foundation for its contributed work towards the success of GNU/Linux.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8783002-109946321837568307?l=gbalaji.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/109946321837568307/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8783002&amp;postID=109946321837568307' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/109946321837568307'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/109946321837568307'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/2004/11/difference-between-gnulinux-and-linux.html' title='Difference between GNU/Linux and Linux '/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8783002.post-109846789134413676</id><published>2004-10-22T23:26:00.000+05:30</published><updated>2004-11-10T15:22:07.290+05:30</updated><title type='text'>Windows vs. Linux Security !!! - The Real Facts</title><content type='html'>&lt;span style="font-size:85%;"&gt;I read this article on slashdot . The author&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;Nicholas Petreley &lt;/span&gt;&lt;span style="font-size:85%;"&gt;compares the security procedures implemented in windows and Linux. (&lt;a href="http://www.theregister.co.uk/2004/10/22/linux_v_windows_security/"&gt;http://www.theregister.co.uk/2004/10/22/linux_v_windows_security/&lt;/a&gt;) &lt;/span&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8783002-109846789134413676?l=gbalaji.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/109846789134413676/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8783002&amp;postID=109846789134413676' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/109846789134413676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/109846789134413676'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/2004/10/windows-vs-linux-security-real-facts.html' title='Windows vs. Linux Security !!! - The Real Facts'/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8783002.post-109846434106220335</id><published>2004-10-22T22:12:00.000+05:30</published><updated>2004-10-22T22:29:01.063+05:30</updated><title type='text'>Microsoft feeling heat from the penguin !!!</title><content type='html'>I've just read this page (&lt;a href="http://www.linuxinsider.com/story/37521.html"&gt;http://www.linuxinsider.com/story/37521.html&lt;/a&gt;) on the linux insider site which exposes the current status of Microsoft.&lt;br /&gt;&lt;span class="down" style="display: block;" id="formatbar_CreateLink" title="Link" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8783002-109846434106220335?l=gbalaji.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/109846434106220335/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8783002&amp;postID=109846434106220335' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/109846434106220335'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/109846434106220335'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/2004/10/microsoft-feeling-heat-from-penguin.html' title='Microsoft feeling heat from the penguin !!!'/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8783002.post-109846792825447946</id><published>2004-10-19T21:11:00.000+05:30</published><updated>2004-10-22T23:28:48.256+05:30</updated><title type='text'>Dual Boot Problems with Fedora Core 2 and Windows 2000/XP</title><content type='html'>&lt;span style="font-size:85%;"&gt;I have read many complaints regarding the dual boot problem with Fedora Core 2 and Windows XP/2000. Below is the procedure for resolving the dual boot problem.&lt;/span&gt; &lt;p&gt;&lt;span style="font-size:85%;"&gt; 1.	Install Windows first. &lt;/span&gt;&lt;/p&gt;   &lt;p&gt;&lt;span style="font-size:85%;"&gt; 2.	Install FC 2 and place boot loader into /dev/hda3 (for example). &lt;/span&gt;&lt;/p&gt;   &lt;p&gt;&lt;span style="font-size:85%;"&gt; 3.	Enforce LBA32 ( just in case your boot loader partition is above 32 GB from the beginning of the hard drive) &lt;/span&gt;&lt;/p&gt;   &lt;p&gt;&lt;span style="font-size:85%;"&gt; 4.	Complete FC 2 install. &lt;/span&gt;&lt;/p&gt;   &lt;p&gt;&lt;span style="font-size:85%;"&gt; 5.	Load again from first CD from FC2 distribution set. &lt;/span&gt;&lt;/p&gt;   &lt;p&gt;&lt;span style="font-size:85%;"&gt; 6.	At "linux" prompt type:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;          &lt;/p&gt;  &lt;pre style="font-style: italic;"&gt;&lt;span style="font-size:85%;"&gt;linux rescue&lt;/span&gt;&lt;/pre&gt;    &lt;p&gt;&lt;span style="font-size:85%;"&gt; 7.	When getting root prompt issue: &lt;/span&gt;&lt;/p&gt;   &lt;p&gt; &lt;/p&gt;  &lt;pre&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic;"&gt;# chroot /mnt/sysimage&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# cd /tmp &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# df –k (just to make sure you are in right environment) &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# dd if=/dev/hda7 of=linux.bin bs=512 count=1 &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Insert MS-DOS formatted floppy into the drive&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# mcopy linux.bin a:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# ^D&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;     &lt;p&gt;&lt;span style="font-size:85%;"&gt; 8.	Boot into Windows. &lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:85%;"&gt; 9.	Get to the command prompt, and enter this:&lt;br /&gt;&lt;/span&gt; &lt;/p&gt;  &lt;pre style="font-style: italic;"&gt;&lt;span style="font-size:85%;"&gt;copy  a:\linux.bin   c:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;  &lt;span style="font-size:85%;"&gt;10.	Add line to boot.ini:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic;"&gt;C:\linix.bin=" Red Hat Fedora Core 2" &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;    &lt;p&gt;&lt;span style="font-size:85%;"&gt; 11. Reboot machine and choose "Red Hat Fedora Core 2" from boot.ini menu, which will cause "NTLDR" to load first 512 kb from FC2 boot partition. &lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:85%;"&gt; 12.     Select from Grub Menu desired kernel and press “Enter”&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8783002-109846792825447946?l=gbalaji.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/109846792825447946/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8783002&amp;postID=109846792825447946' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/109846792825447946'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/109846792825447946'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/2004/10/dual-boot-problems-with-fedora-core-2_19.html' title='Dual Boot Problems with Fedora Core 2 and Windows 2000/XP'/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8783002.post-109846684091993296</id><published>2004-10-18T20:36:00.000+05:30</published><updated>2004-10-22T23:10:40.920+05:30</updated><title type='text'>Knoppix 3.6 - A Review !!!</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;K&lt;/span&gt;noppix 3.6 can be automatically optimised and customized for any application . Great auto-detection,and performance are the significant features of this distro.I got knoppix when i bought the October month's issue of LINUX FOR YOU mag.I immediately installed it. I was really amazed by the installation process.The Hardware auto detection mechanism was absolutely awesome.Almost everything just worked out-of-the-box,so to speak.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt; &lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Booting up&lt;/span&gt;&lt;br /&gt;&lt;/span&gt; &lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt; The installation took about half an hour to forty- five minutes. Starting off at the boot screen,it was nice to have a choice of booting either with the kernel 2.4.27 kernel or the 2.6.7 kernel. I selected the 2.6.7 Kernel first and found it to be faster in booting than the 2.4.27. After it had booted up the thing that struck me was to know how much software has been included.Nearly 2000 MB of software is available with Knoppix. Knoppix 3.6 release features KDE 3.2.3 which is truly awesome.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt; &lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Hardware&lt;br /&gt;&lt;/span&gt;&lt;/span&gt; &lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt;The next step was to test all my devices to see whether they were functioning.There were no problems at all. It detected the video and sound card perfectly.I tested both thoroughly and they performed very well.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Knoppix also mounted all of my hard drive file systems/partitions with the correct permissions.It detected my Combo ,CD-ROM and floppy Drive correctly.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt; &lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Software&lt;br /&gt;&lt;/span&gt;&lt;/span&gt; &lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt;i decided to give the software section a shot. There is a collection of servers under the menus for SSHD,FTPd,SAMBA,NXetc.i then decided to play a mp3 song using xmms and no wonder it played perfectly without prompting me to download the mp3 plugin from some site unlike in Fedora/Redhat.i was very happy about that . i was a bit disappointed not to see mplayer but Xine has been included so i fired that up.It played almost all of the movie formats that i fed into.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;K3B, the CD/DVD burning software has been included and it detected my CD-RW . No worries !!!. Other packages that has been included are Mozilla 1.7(Firefox would have been a better choice),Openoffice.org 1.1.2,XFCE (an other Desktop environment),Gaim,Xchat and the list goes on.....&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Though Knoppix has the name LIVE CD it can be used as a permanent solutiong for an Operating System.Knoppix can be used as a demonstration environment to those who are unfamiliar with Linux.Knoppix is a complete,portable and highly functional operating system with many useful applications.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt; &lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8783002-109846684091993296?l=gbalaji.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gbalaji.blogspot.com/feeds/109846684091993296/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8783002&amp;postID=109846684091993296' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/109846684091993296'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8783002/posts/default/109846684091993296'/><link rel='alternate' type='text/html' href='http://gbalaji.blogspot.com/2004/10/knoppix-36-review.html' title='Knoppix 3.6 - A Review !!!'/><author><name>Balaji</name><uri>http://www.blogger.com/profile/02916547161863721030</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
