📄 smp.h
字号:
/****************************************************************************** * * Copyright (c) 2003 Gerhard W. Gruber * * PROJECT: pICE * $Source: /cvsroot/pice/pice/module/smp.h,v $ * $Revision: 1.3 $ * $Date: 2004/02/17 23:07:37 $ * $Author: lightweave $ * $Name: $ * * $Log: smp.h,v $ * Revision 1.3 2004/02/17 23:07:37 lightweave * * Improved the DEBUG facillity and replaced the configuration handler with a * new code which now can read MS Windows INI style files. See CHANGES.txt for * more details. * Also added a macro which prevents compiling for kernels before 2.4.19. * * Revision 1.2 2003/06/18 22:00:22 lightweave * DEBUG and DEBUG_SERIAL added * * *****************************************************************************//*++Copyright (c) 1998-2001 Klaus P. GerlicherModule Name: smp.hAbstract: HEADER for smp.cEnvironment: LINUX 2.2.X Kernel mode onlyAuthor: Klaus P. GerlicherRevision History: 22-Oct-2001: createdCopyright notice: This file may be distributed under the terms of the GNU Public License.--*/#ifndef _SMP_H#define _SMP_Htypedef struct _CPUID_S{ struct { ULONG rev : 4; ULONG model : 4; ULONG family : 4; ULONG type : 4; }signature; ULONG max_cpuid; char vendor[13]; char cpu_name[49];}CPUID_S,*PCPUID_S;#define SMP_CPU_DONE (0)#define SMP_CPU_GET_CPU_INFO (1)extern volatile ULONG ulSpinCount[32];extern PUCHAR pLocalApic;extern struct task_struct *current_for_cpu[PICE_MAX_CPUS];extern EXCEPTION_FRAME *frame_for_cpu[PICE_MAX_CPUS];extern CPUID_S cpuid_for_cpu[PICE_MAX_CPUS];void InitSmp(void);void ExitSmp(void);void LoopProcessors(void);void UnloopProcessors(void);void ProcessorsIdleLoop(EXCEPTION_FRAME* pFrame);ULONG GetProcessor(void);void FlushCacheAndTLBAllCpus(void);void DisableHWBreakpointsAllCpus(void);void CallOtherCPU(ULONG ulReason);void GetCpuId(void);#endif // _SMP_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -