Phoenix
Object-oriented orthogonally persistent operating system
|
00001 /* 00002 * /phoenix/kernel/sys/cpu_caps.h 00003 * 00004 * This file is a part of Phoenix operating system. 00005 * Copyright (c) 2011-2012, Artyom Lebedev <artyom.lebedev@gmail.com> 00006 * All rights reserved. 00007 * See COPYING file for copyright details. 00008 */ 00009 00016 #ifndef CPU_CAPS_H_ 00017 #define CPU_CAPS_H_ 00018 00019 #ifdef AUTONOMOUS_LINKING 00020 namespace { 00021 #endif /* AUTONOMOUS_LINKING */ 00022 00024 namespace cpu { 00025 00027 enum CpuCapId { 00028 CPU_CAP_NONE, 00030 /* Paging-related capabilities. */ 00031 CPU_CAP_PG_PGE, 00032 CPU_CAP_PG_PAT, 00033 CPU_CAP_PG_PCID, 00034 CPU_CAP_PG_SMEP, 00035 CPU_CAP_PG_NX, 00036 CPU_CAP_PG_1GB, 00037 CPU_CAP_PG_WIDTH_PHYS, 00038 CPU_CAP_PG_WIDTH_LIN, 00040 CPU_CAP_MAX, 00041 }; 00042 00043 } /* namespace cpu */ 00044 00045 #ifdef AUTONOMOUS_LINKING 00046 } 00047 #endif /* AUTONOMOUS_LINKING */ 00048 00049 #include <md_cpu_caps.h> 00050 00051 #endif /* CPU_CAPS_H_ */