Review of Microsoft DreamSpark Yatra 2012 at IIT Delhi

Posted by on Feb 10, 2012 in Microsoft, Microsoft Research, Microsoft Windows | 7 comments

Recently on 8th February, attended an event titled DreamSpark Yatra 2012 which was organized by Microsoft at Indian Institute of Technology, Delhi. First of all I would like to thank my classmate and buddy Piyush Saini, who is a Microsoft Student Partner as he got me registered.

Well the venue was Seminar Hall and I was present on dot. The whole event was organized by the Microsoft Student Partners and I should say that it was well managed. Riya Tayal was the anchor of the event and played her part well.

Robert Sinclair, Chief Accessibility Officer, MicrosoftThe main speech was given by Robert Sinclair, Chief Accessibility Officer, Microsoft, Redmond Office and it was mainly concentrated on role of accessibility in the application development process for mobile and other devices. A remarkable statement by Rob “India has more than 70 million disabled and if 10% of that population buys your application then imagine the profits earned”. The overall session was really amazing though the QA round was simply awesome.

Aniket Bera


Next session was presented by Aniket Bera on Natural User Interface. This session was really quite ecstatic         since     it introduced a new dimension of gaming Microsoft XBOX 360 Kinect. In the past, I had attended a session on Ubiquitous Computing and Natural User Interface being the subset of it, was of great interest to me. The live demonstration was simply outstanding!

Rishu Mehra, SapientAfter that Rishu Mehra who is a Content Strategist at Sapient gave a talk on Windows Phone 7. His presentation was simply awesome as well as the session was quite interactive due to his classy humor. The advancements of Windows Phone 7 is simply awesome and it leaves behind all the previous versions of Windows Phone with its outstanding MetroUI. Check out his presentation.

MV Priyank

And the last session was delivered by MV Priyank on Windows 8 with implementation on an Intel Tablet as well as on a Dell Laptop. Windows 8 also uses MetroUI for giving an ultimate touch usage as well as standard UI similar to Windows 7. In short, Windows 8 can be defined as an OS having goods of Windows 7 as well as additional new features like the MetroUI. Well I personally liked the picture password feature of Windows 8. Download Windows 8 Developer’s Preview link.

Finally the event came to completion with the certificate distribution. I also got a good chance to interact with all the MSP’s present at the venue for promoting my project Kalakhatta.com. Forgot to mention the awesome photography session, it appeared as the icing on the cake. Overall the event was simply awesome and worth attending. Expecting to attend similar events in the future :-)

Read More

Singularity OS from Microsoft

Posted by on Aug 16, 2010 in Microsoft Research, Singularity OS | 3 comments

Singularity - Microsoft Research

Microsoft had been designing a completely new OS (Yes it isn’t Windows at least Microsoft says that). This new project is called Singularity and it is aimed at designing an OS which is stable and fast. Singularity is written Sing# (most of you won’t have heard even its name but its just a derivative of C#).

Features of Singularity

SPIs:Singularity implements SPIs, i.e., Software Isolated Processes which means that now onwards it is the responsibility of the OS to make sure that no two processes interfere with each other. With SPIs being implemented Shared Memory concept is out. No two processes can share memory. If two processes want to communicate they will have to use special channels for communication and all communication will take place through a part in memory called Exchange Heap. Processes will pass pointers to this data and thus communicate with each other. So no process can by any method interfere with memory space of other process. So no longer OS crash due application crashes.
Contract–Based Channels: These channels will be responsible for inter-process communication. A channel is a bi-directional message conduit with exactly two endpoints. This process of transfer starts with one process sending a message. If the other end is able to read that message (i.e., compatible) then process of transfer starts.
Manifest-Based Coding: Remember MD5/SHA checks a file if it is a valid one. Singularity implements the same procedure for executable files. Files are checked for possible errors they can generate while execution. Singularity no longer supports Dynamic Code Generation (which is mainly done is order to increase the performance of application.)
So with Singularity RDK 2.0 out, picture is becoming clearer.

Advantages of Singularity

  • Every process runs in an isolated manner so in case one process fails the machine can still go on. Although this may not seem as a big achievement in case of apps as many current OSes already have this capability but it is surely worth appreciation that this technique has been extended even to drivers so if an application reading from a device fails the device will still continue to work properly (e.g. the GPU may stop working in present OSes if an application using it crashes).
  • A lot of weight has been shed from the kernel with nearly every basic function being implemented in form of SPI (Software Isolated Process) and ABI (Application Binary Interface). So this will result in faster, lighter and more responsive kernel.
  • With use of Manifest Based Programs no longer unsafe applications will be able to run which means lesser number of malicious programs.
  • Possible runtime errors can be judged early using Manifest Based Program execution.
  • With each memory block only accessible to only one process garbage collection is a lot easier and faster job resulting in efficient and fast retrieval of memory.
  • With ability to select kernel users can effectively run programs faster.
  • No more unnecessary checks for safe language coded application.
  • Low hardware load software does all the necessary memory handling jobs so less expensive hardware needed.

Disadvantages of Singularity

  • With resource sharing no longer possible using shared memory it will get difficult for application to communicate and will include a lot of overheads. This will affect application like game trainers which modify the value at memory being handled by other processes.
  • More amount of memory will be needed to run Singularity as a different section exchange heap will be needed to exchange information between two processes.
  • Singularity may be able to boot faster and may be less CPU intensive but with the use of contract based channels as only way of communication the application performance may degrade.
  • No longer would programmers be able to write self-generating code so as to optimize application performance at runtime.
  • File reading is no longer an easier job as it would result in calling of an ABI which has higher overhead than a normal function call.
  • Manifest Based Program execution can cause the startup time of application to increase.
  • With extra code being added to increase the number of modes of accessing an I/O device the performance of I/O devices may degrade.
  • Older applications may fail to run on Singularity as they may not follow the protocols set by Singularity.

Some important links for Singularity

Read More