typedef struct pagedir pg_dir_t;
+#define CPU_CAPABILITY_FPU (1 << 0)
+#define CPU_CAPABILITY_VME (1 << 1)
+#define CPU_CAPABILITY_DE (1 << 2)
+#define CPU_CAPABILITY_PSE (1 << 3)
+#define CPU_CAPABILITY_TSC (1 << 4)
+#define CPU_CAPABILITY_MSR (1 << 5)
+#define CPU_CAPABILITY_PAE (1 << 6)
+#define CPU_CAPABILITY_MCE (1 << 7)
+#define CPU_CAPABILITY_CX8 (1 << 8)
+#define CPU_CAPABILITY_APIC (1 << 9)
+
+#define CPU_CAPABILITY_SEP (1 << 11)
+#define CPU_CAPABILITY_MTRR (1 << 12)
+#define CPU_CAPABILITY_PGE (1 << 13)
+#define CPU_CAPABILITY_MCA (1 << 14)
+#define CPU_CAPABILITY_CMOV (1 << 15)
+#define CPU_CAPABILITY_PAT (1 << 16)
+#define CPU_CAPABILITY_PSE36 (1 << 17)
+#define CPU_CAPABILITY_PSN (1 << 18)
+#define CPU_CAPABILITY_CLFSH (1 << 19)
+
+#define CPU_CAPABILITY_DS (1 << 21)
+#define CPU_CAPABILITY_ACPI (1 << 22)
+#define CPU_CAPABILITY_MMX (1 << 23)
+#define CPU_CAPABILITY_FXSR (1 << 24)
+#define CPU_CAPABILITY_SSE (1 << 25)
+#define CPU_CAPABILITY_SSE2 (1 << 26)
+#define CPU_CAPABILITY_SS (1 << 27)
+#define CPU_CAPABILITY_HTT (1 << 28)
+#define CPU_CAPABILITY_TM (1 << 29)
+
+#define CPU_CAPABILITY_PBE (1 << 31)
+
int cpu_get_id(void);
u64_t cpu_get_capabilities(void);
u64_t cpu_timestamp(void);