Logic behind timer

Can someone explain the logic of the timer here (in detail)?

This code is working well, however i'm just wondering how the timer works (especially the variables of minutes, seconds, and friction).

    private var startTime;
    var textTime : String;

    function Awake() {
        startTime = Time.time;
    }

    function OnGUI () {

        var globalTime = Time.time - startTime;

        var minutes : int = globalTime / 60;
        var seconds : int = globalTime % 60;
        var fraction : int = (globalTime * 100) % 100;

        textTime = String.Format ("{0:00}:{1:00}:{2:000}", minutes, seconds, fraction); 

startTime is the time the application / scene started. Every time you call Time.time after this, the duration since the application started has altered. OnGui runs in a loop, so calling Time.time from here gives us the a new time on each iteration of the loop.

globalTime is equal to the time that has passed since the app started minus the time when it started.

minutes = globalTime divided by 60

The String.Format simply formats how each passed parameter is displayed on the screen, with the first 3 {0:00} being the format and the second three parameters being the variables.