Since its inception, Google has always had the motto of producing software and applications that serve the Internet to its full potential and allow its users to gain the most out of it. Market competition has always been the driving force behind its pursuits and the result has constantly been towards the better. In compliance with the platform it serves, the ever- changing Internet, Google has kept up and done better each time the need arose. The latest dish out of its kitchen is the all-new web browser, CHROME, which hopes to put an end to many problems of the Internet. Besides providing the basic functionalities of a browser, it also adds certain features in each area to generate a standard paradigm of web use and development. For those curious about Chrome, this article will provide you with some information of the technology behind it and some of its features.

The problem with the existing browsers is that they are single threaded, in the sense that at one time only one operation uses the resources. The limitation is overcome by introducing separate processes for each of the tabs, each using different copy of memory and data structure. The dynamic appearance of the web is rendered by JavaScript, which has also been made multi-threaded for different processes in this version. So the web continues to function in one tab even if others are found waiting for action, keeping the continuity preserved. The older design allocated same space to all tabs. The closing of one tab left back the allocated space being further unusable. Here each closing clears all associated memory resources and frees up space for other applications. Chrome also provides its own task manager which can be used for inspecting the resource usage by each application individually, including the plug-ins. Thus, the unwanted or the overwhelming ones can be aborted whenever needed. The need for a Beta version is postponed to late future as web pages are constantly being tested by the Google databases for bugs and errors. It happens each time a new Chrome build is added to the Internet.

Now let us move on to the issue of speed and the secret behind it. The open source rendering engine used to develop Chrome is called the WebKit, which is favorable because of its simplicity and easy-to-understand and develop coding patterns. The greatest innovation added is a Virtual Machine (VM) for the JavaScript by the V8 team in Denmark. The Virtual Machine generates a machine code that translates the source code into computer understandable binary digits only once. All later executions use different parameters to this compiled copy and get the desired output, reducing the overhead at each application execution, thereby rapidly increasing browser speed. It also allows the same source code to be applied on all different platforms and OS as the VM takes care of program transitions.

Although JavaScript is classless, every object being produced at the run-time of the applications share some common properties to other existing ones, and is gradually clubbed into same hidden classes that behave and respond in the same manner. So an overall uniformity is maintained among all the different activities on the net. In Chrome, Conservative Garbage Collection takes place that places all pointers in one place and all data in another place on the computer memory. So every time the need to free resources arises, the system has to look into a small set of pointers at a specified place only, and delete the unwanted references only. It makes the look-ups faster and more efficient. Also the risk of removing components that may be used later is minimized.

Chrome also provides a better search facility. Since each tab has its own URL bar, called the omnibox here, isolated actions can occur. The address bar provides the list of matching options, the most visited sites, and a suggestion of some sites based on the letters typed at an instant. Auto-completion options are relaxed by allowing only filling in previously typed words. So the whole web page URL is not filled, only the website’s names are added. Opening up of the Chrome browser provides us the most visited sites to choose form or enter a new URL, as desired. Privileges exist to make certain sessions secretive and they are not remembered by the browser after such windows are closed. The pop-ups are allowed to live only in the tab where they were opened but can be dragged out to any other window or tab. So no unwanted blocking too.

Another important feature is that it makes the best possible efforts to reduce the risks of malware and phishing by making all process read-only with respect to hard-drive contents. No changes can be made into the user’s data by malicious programs that are abundantly found on the net. Only two levels of permission is permissible:- high and none. Data can only be read from none to high level and written from high to none level. The lower level of security, none, can only perform action on the request of the higher end, thus removing unauthorized access to data. But plug-ins do get additional access permissions and can be dangerous. But the risk is still less daunting as compared to the multitudinal viruses sprawling across the Internet. Even if a plug-in does get corrupted, it can be closed own without affecting other processes as they are independent processes in Chrome. In addition to these static methods Chrome perpetually downloads the list of sites potentially dangerous for malware and phishing and stores the information. If a visited website falls into such a list, the user is notifies of the risks and prompted for proceed instructions. This guarantees complete control of web action on the part of the end-users.

To include compatibility problems Chrome provides a set of Gears that works behind the screen at the developers to end to provide the functionalities. Each new developer can study and adapt to the existing gear configuration of the browser to make the new product compatible and more efficient.

Arindham Chakroborty

[Image Source:]