Tuesday, March 24, 2009

Virtualization stripped.

Managed to squeeze in some time, despite being hard hit with issues at work. I always feel writing blogs energises me, so hope to catch up with work in full swing after this. With that let me walk you through my new post.

Virtualization stripped
Virtualization picked up more buzz and momentum, when IT companies started emphasizing on the new cloud computing paradigm. With this blog post I will get to the breadth and depth of the virtualization platform, products and terminologies.

To start with I put together the different buckets of virtualization categorizing the major buckets followed by the next level; focusing on the different technologies trying to solve the problem.

Virtualization in my terms: A platform enabling users to do their tasks, without fully banking on the hardware and software resources of the user. Also a platform which enables on demand computing; by sharing resources and thereby improving the hardware, and software utilization. Certainly a move towards greener ecosystem for IT, by reducing the wastage of computing resources including power.

The above definition almost seems close to be called as cloud computing, hence the obvious question. How does virtualization differ from cloud computing? If virtualization is the underlying platform for doing things, Cloud computing is a model for doing business leveraging virtualization. Virtualization is a key technology towards achieving cloud computing but does not end with it. Cloud computing deals with other areas, which will not be of interest to this post.

Wednesday, March 18, 2009


Came across this new tool Expression Web SuperPreview for Windows Internet Explorer, that allows developers to get a preview of what their websites looks like in different versions of IE, majorly IE6, IE7 and IE8.

There are virtualization apps there to help you do that, but the pain is not being able to get everything in a single box.

A good example is Citrix's sanboxing environment for browsers!

I almost thought, the virtualization sandbox is a good tool for testing all such cases and we will not need any more tools

Wednesday, March 11, 2009

Gazing other blogs...

These days I end up spending considerable amount of time reading random blogs, before I forget that it's time for bed. I almost certainly fall in love with some of the blog posts for the flavor they bring with it, the things I have never experienced before. And not knowing who the author, adds more thrill and fun. I enjoy the mood, passion, culture, geography, interests, photos, theme, music, video, emotions, spirit and what not!

To me, it is a perfect way to spend some time. I usually start from my blog, and go for the link in the header and keep going on and on. If i feel some topic needs more attention, I start searching for similar posts and dive in for more...

A masterpiece in my collection

A casual photo shot by my mom, capturing a pigeon in between me and my brother with Taj mahal in the background.

How does a Garbage collector act on a circular reference?

This post walks through the Garbage collector's (here after called GC) action in response to circular references in memory.
In order to understand the working of the GC itself, you need to look in to this link - GC in MSDN

If you have a fair enough understanding of the above link, then you can start reading the below...

Say you have two objects in Generation 0; named A and B. One of the field's in A refers to the object B and one of the field's in B refers to object A. If you were to put in simple terms they reference vice versa and hence introduce a "circular reference". The GC when called for action would go and inspect the thread stack for the roots pointing to A and B individually in a regular scenario. But in the case of circular reference, the GC will walk through the thread stack to determine if there is a root for either one of the objects A or B. If at least one of them has a reference then both the objects survive and are pushed to generation 1, If not both of them will be garbage collected.