Wednesday, February 14, 2007

Find your page rank !!

Hey, are you interested in knowing your page rank ??
If yes, visit the link..

Just enter your website name and click the button...thats it !!

Tuesday, February 13, 2007

An Internet Audio Streaming Server !!

Yeah I mean it...With an audio streaming server you can setup your own Internet Radio station !! Well, in this post I would like to introduce audio streaming server - Icecast server.

Icecast Project

Icecast, is a collection of programs and libraries which help to stream audio over Internet.
Icecast has three basic components they are
    • Server
    • Source
    • DSP
Server (Icecast)

The server in the case of this tutorial is where the listener connects to to listen. The job of the server is to broadcast the audio data recieved from the source to the listeners. What icecast does is it streams audio to listeners.

Source (IceS)

The source is where the audio data for the server is provided from. IceS is a program that sends audio data to an icecast server to broadcast to clients. IceS can either read audio data from disk, such as from Ogg Vorbis files, or sample live audio from a sound card and encode it on the fly.


DSP stands for "Digital Signal Processing". In terms of streaming, it just sends the data to the server in digital form, and if necessary, re-encodes the data to a more suitable form (MP3, OGG, specific bitrates). It handles socket connections, timing of data etc. Libshout library is the library used for performing these functions.

Sunday, February 11, 2007

Fun in google !!!

Have fun in google !!!

Make your own Google search.

here replace 'Bonnie' with your name !!

The best p2p I have ever used !!!

I am talking about Ares...

Here is the short description of Ares. Well, Ares is a p2p software. Which can be used to download anything under the sky !! Yes, I mean it.

I recommend Ares because its a small file usually comes around 1.4 mb. And its a free software. I use this software to download mp3s, hollywood films, music videos and so on.

There are so many features in Ares. Advanced search for all types of media files. And another good feature is the ability to preview audio, video files while their download is in progress. Ares runs on its own Decentralized Network. Another feature is that it has a chat window, with that we can chat with other Ares users, browse user's shared folder etc etc..

Well try it out !!

You can download the software from

Some BitTorrent links !!

Links to BitTorrents could be found at the following websites....

Torrent !!

{ Read the previous posts, its the continuation...}


As said in the previous post, Torrent is a metadata. The word metadata means data about another data. An example is dictionary.

So in BitTorrent a torrent is the one that has the extension .torrent. This file contains the data about the data which you want to download. Normally when you click a link to download a file, actually this torrent file is send to your computer. And this torrent file contains the location of the data which you want to download plus some extra data. Normally a torrent file contains informations about the tracker, the data and the computer which cordinates the file distribution.

So inorder to share some data, the client first prepares the torrent file. And the other peers download these torrent file and connect to the specified tracker, which tells them from which other peers to download the pieces of the files.

Important BitTorrent terms !!!

{ Read my previous post to know about BitTorrent...}

1) Peer

A peer is another computer on the internet that you connect to and transfer data. A peer does not have the complete file. It has bits ans pieces of data.

2) Torrent

Torrent refers to the small metadata file you receive from the web server. A metadata is data about another data. More on Torrents in my next post.

3) Seed

Seed is a computer that has a complete copy of a certain file. This file is divided and shared among many clients.

4) Swarm

The group of machines that are collectively connected for a particular file.


A server on the Internet that acts to coordinate the action of BitTorrent clients.

Bit Torrent ???

We have been hearing this word for quite a long time!! right ?? What exactly is Bit Torrent ??
Well, in simple words Bit Torrent is p2p (peer to peer) file sharing protocol. It is designed by Bram Cohen. It is designed to provide file transfer among multiple peers across network. It is now maintained by BitTorrent, Inc.

Now little about the working of BitTorrent... There is a central server (called a tracker) which coordinates the action of all such peers. The tracker is meant for managing connections, it does not know the content of the files being distributed, and therefore a large number of users can be supported with relatively limited tracker bandwidth.

Lets consider an example. Suppose there are 4 persons A, B, C and S. 'A' has some data which B and C doesnt have. 'B' has some data which C and A doesnt have and similarly 'C' has some data which A and B doesnt have. These A, B and C are trying to get full set of data. So first A announces it has the data that the other two doesnt have similarly B and C also announces about their data. So what they do is, they share their data until eachone has got full set of data. And the 4th person 'S' is called seed. S has the full set of data. The function of the seed is to distribute the data and share it among A, B and C and these A, B and C will share that data among themselves until they obtain the full set of data. So the seed provides service without having the need of sharing the full set of data to the clients. This is the working of Bit Torrent. Now more about various terms of Bit Torrents in my next post !!

Friday, February 09, 2007

Lets see how google rank your page !!!

Well, in todays post lets see how Google ranks one webpage. The answer to this question is PageRank and Hypertext-matching analysis !!
I know you might be staring at this word. Yes Google uses a very efficient algorithm to rank our page . Even though Google didn't reveal their page ranking algorithm (Ofcourse they won't !!) we will get a small idea about their algorithm from their company pages.

In Google's PageRank they checks the entire link structure of the web and determine which all pages are important. Next they perform a hypertext-matching analysis to find which pages are relevant to the specific search being conducted !!

Inorder to get good PageRank, you need to get good links from related sites which points to your site. The more links point to your web site, the better your rankings. One thing about the quality of links its better to have a link that contains the keyword other than having 'click here' on the links.

Now hypertext matching analysis. Google, instead of simply scanning for meta-tags they analyze the full content of a page and factors in fonts, subdivisions and the precise location of each word.

Now, I hope you people got some idea about PageRank !!

Thursday, February 08, 2007

Monolithic and Microkernel architectures !!!

As I said in my previous post, I am going to explain about microkernel and monolithic kernel architectures. Read my previous post to learn about kernel.

Microkernel Architecture

In the microkernel architecture the kernel provides only a necesary minimum of functionality and can be implemented in a small and compact form. Building on this microkernel, the remaining functions of the operating systems are relocated to autonomous processes communicating with the microkernel through a well defined interface.


  • Less trouble to maintain
  • Individual components can work independently of each other and are easier to replace.
  • Developing process is less complicated

  • Microkernel architecture is slower than monolithic architecture.
  • Well defined interfaces are need to communicate.

Monolithic Kernel Architecture

In monolithic architecture the kernel is maintained as a single component with all the functionalities incorporated. This type of architecture is mainly used where good run time behaviour is the primary consideration.


  • Faster than microkernel architecture.
  • No well defined interfaces are needed for communication as in microkernel architecture.

  • Difficult to maintain.
  • Less stable.
  • Kernel often become very huge.
  • Bugs in one part of kernel produce many side effects.

An overview of UNIX kernels !!!

In this blog, I would like to share with you " An overview of UNIX kernels". Well some of you might be wondering what is a kernel ?? Am I right ?? Yes I am.

So here is the definition of kernel...

The kernel is the core of an operating system, it is loaded into main memory at boot time and it stays in the main memory until shut down. The kernel has two main responsibilities..

  • To service low level hardware programming requirements (e.g. responding to hardware interrupts).

  • To provide an environment for processes; instances of programs or threads in execution.

Mainly there are two types of kernels...monolithic kernels and microlithic kernels...More on that in my next post...

And now back to Unix Kernels....

Unix kernels provide an execution environment for the applications or processes. The applications can interact with other components of the system (mainly hardware) with the help of the resources, interfaces and the set of services provided by the kernel.

Processes and Threads

A process can be defined as program in execution. And thread can be defined as a sort of independent 'strand' in the course of a program execution. As opposed to processes, threads work on the same memory and can influence each other. The process of creating, terminating and synchronizing the process is controlled by a set of kernel routines.

Unix process/kernel model

In unix there are two modes of execution, they are user mode and kernel mode. User mode can be defined as a less privilaged mode. Because in user mode the process cannot access the kernel data structures. And the kernel mode is the high privilaged mode. In the kernel mode, a process can access all the kernel data structures. Normally, a program run in user mode but when a system call or interrupt comes it switch from user mode to kernel mode.

Re-entrant kernels

Unix has re entrent kernel. It simply means that several processes are executing in kernel mode at the same time. Yes ofcourse one process at one instant of time. Only one process will be executing and the other processes might be waiting. If the currently executing process needs
to do a read/ write operation on harddisk. The current process is temporarily stopped and the control is given to the device handler. And the kernel may start another process that is waiting. And when the the hard disk operation ceases the device handler raises an interrupt showing that the operation is over. And now the former process which was in the halt state comes back to execution. This feature in unix/linux kernels is called re-entrancy.

One way to provide re - entrancy is to write functions which allows to change the local variables but protects the global data structures from being modified. Such functions are called re-entrant functions. So in a re-entrant kernel an interrupt can stop a process even if it is in the kernel mode.

This is the basic overview of unix kernels.