Phoenix
Object-oriented orthogonally persistent operating system
cpu_caps.h
Go to the documentation of this file.
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_ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines