XenevaOS
Loading...
Searching...
No Matches
pcpu.h
Go to the documentation of this file.
1
30#ifndef __PCPU_H__
31#define __PCPU_H__
32
33#include <stdint.h>
34#include <Hal/x86_64_cpu.h>
35
36
37/*
38* AuCreatePerCPU -- creates a per-cpu data structure
39* @param alloc -- allocation address only for AP's
40*/
41extern void AuCreatePerCPU(void* alloc);
42
43/*
44* AuGetPerCPU -- returns a per cpu data
45* structure
46* @param id -- cpu id
47*/
48extern CPUStruc* AuGetPerCPU(uint8_t id);
49
50/*
51* AuPerCPUSetCpuID -- sets cpu id for current processor
52* @param id -- cpu id
53*/
54extern void AuPerCPUSetCpuID(uint8_t id);
55
56/*
57* AuPerCPUGetCpuID -- returns the current cpu id
58* of current processor
59*/
61
62/*
63* AuPerCPUSetCurrentThread -- set thread of current
64* processor
65* @param thread -- pointer to thread
66*/
67extern void AuPerCPUSetCurrentThread(void* thread);
68
69/*
70* AuPerCPUGetCurrentThread -- get the current thread of
71* present processor
72*/
74
79extern void AuPerCPUSetKernelTSS(TSS *tss);
80
85
86#endif
unsigned char uint8_t
Definition acefiex.h:161
AuThread * AuPerCPUGetCurrentThread()
Definition pcpu.cpp:94
void AuPerCPUSetCurrentThread(void *thread)
Definition pcpu.cpp:86
void AuPerCPUSetCpuID(uint8_t id)
Definition pcpu.cpp:69
uint8_t AuPerCPUGetCpuID()
Definition pcpu.cpp:77
CPUStruc * AuGetPerCPU(uint8_t id)
Definition pcpu.cpp:61
void AuPerCPUSetKernelTSS(TSS *tss)
Definition pcpu.cpp:103
void AuCreatePerCPU(void *alloc)
Definition pcpu.cpp:43
TSS * AuPerCPUGetKernelTSS()
Definition pcpu.cpp:110
Definition x86_64_sched.h:118
Definition x86_64_cpu.h:127
Definition x86_64_cpu.h:114