4304bb9894
* Some things are currently ifndef'd out completely for x86_64 because they aren't implemented, there's a few other ifdef's to handle x86_64 differences but most of the code works unchanged. * Renamed some i386_* functions to x86_*. * Added a temporary method for setting the current thread on x86_64 (a global variable, not SMP safe). This will be changed to be done via the GS segment but I've not implemented that yet.
26 lines
536 B
C
26 lines
536 B
C
/*
|
|
* Copyright 2004-2005, Axel Dörfler, axeld@pinc-software.de. All rights reserved.
|
|
* Distributed under the terms of the MIT License.
|
|
*/
|
|
#ifndef _KERNEL_ARCH_x86_SYSTEM_INFO_H
|
|
#define _KERNEL_ARCH_x86_SYSTEM_INFO_H
|
|
|
|
|
|
#include <OS.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
status_t get_current_cpuid(cpuid_info* info, uint32 eax);
|
|
uint32 get_eflags(void);
|
|
void set_eflags(uint32 value);
|
|
|
|
status_t _user_get_cpuid(cpuid_info* info, uint32 eax, uint32 cpu);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* _KRENEL_ARCH_x86_SYSTEM_INFO_H */
|