exectos/xtoskrnl/includes/i686
PerikiyoXD a270c08dcf
feat: Add CPU vendor and features identification
Add functionality to identify the CPU vendor and features using the CPUID instruction.
The CPU vendor information is stored in the Processor Control Block (PRCB),
including the vendor name and a corresponding enumeration.
CPU features are also retrieved and stored in the PRCB.
Previously, the CPU vendor was not properly stored in the PRCB, caused by a missing type cast.
Using Rtl functions to copy the CPU vendor name to the PRCB.

Details:
- Introduced functions `ArpSetCpuVendor` and `ArpSetCpuFeatures` to set CPU vendor and features, respectively.
- Modified `ArpIdentifyProcessor` to call the new functions for vendor and features identification.
- Added `CPU_FEATURES` structure to `KPROCESSOR_CONTROL_BLOCK` structure to store CPU features.

Tests:
- Tested x86_64 on QEMU. Verified that the CPU vendor and features are correctly identified and stored in the PRCB.
2023-11-23 23:26:39 +01:00
..
ar.h feat: Add CPU vendor and features identification 2023-11-23 23:26:39 +01:00
globals.h Let kernel initialize stack on it's own without relying on boot loader 2023-02-05 09:55:59 +01:00
ke.h Save processor state during kernel initialization 2023-11-15 15:00:38 +01:00
mm.h Cleanup XTDK and XTOSKRNL headers 2023-10-29 09:58:47 +01:00
rtl.h Cleanup XTDK and XTOSKRNL headers 2023-10-29 09:58:47 +01:00