; Boot sector for GeekOS
 ; Copyright (c) 2001,2004 David H. Hovemeyer <daveho@cs.umd.edu>
 ; Copyright (c) 2003, Jeffrey K. Hollingsworth <hollings@cs.umd.edu>
-; $Revision: 1.6 $
+; $Revision: 1.7 $
 
 ; This is free software.  You are permitted to use,
 ; redistribute, and modify it as specified in the file "COPYING".
 [ORG 0x0]
 
 BeginText:     ; needed to calculate padding bytes to fill the sector
+       ;; temporalily for io performance test
+       mov dx, 0x995
+       mov eax, 0x12345678
+       out dx, eax
+       mov dx, 0x999
+       xor eax, eax
+       cpuid
+       rdtsc
+       ;;      mov [time], eax
+       ;;      mov eax, 0x12345678
+       out dx, eax
+       cpuid
+       rdtsc
+       sub eax, [time]
+       out dx, eax
 
        ; Copy the boot sector into INITSEG.
        mov     ax, BOOTSEG
        dw      0               ;       ! limit16,base24 =0
        dw      0,0,0,0         ;       ! BIOS CS
        dw      0,0,0,0         ;       ! BIOS DS
+time:
+       dw      0,0
 
 
 ; Padding to make the PFAT Boot Record sit just before the BIOS signature.
 
  * GeekOS timer interrupt support
  * Copyright (c) 2001,2003 David H. Hovemeyer <daveho@cs.umd.edu>
  * Copyright (c) 2003, Jeffrey K. Hollingsworth <hollings@cs.umd.edu>
- * $Revision: 1.9 $
+ * $Revision: 1.10 $
  * 
  * This is free software.  You are permitted to use,
  * redistribute, and modify it as specified in the file "COPYING".
  */
 volatile ulong_t g_numTicks;
 
+ulong_t clock_time(void){
+       return g_numTicks;
+}
+
+
 /*
  * Number of times the spin loop can execute during one timer tick
  */