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.
Add CPU features and fix CPU vendor.
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.
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.
Ghost
marked the pull request as work in progress 2023-11-23 23:30:14 +01:00
Ghost
requested review from belliash 2023-11-23 23:30:28 +01:00
I don't see any reason, why you have closed#2 and opened this PR. I have reviewed your proposed changes and I have asked for some changes, which should be done in #2. Afterwards it's easy for me to check what was done originally, what changes I have requested for, and what was fixed. I am not going to review this once again from scratch.
I don't see any reason, why you have closed #2 and opened this PR. I have reviewed your proposed changes and I have asked for some changes, which should be done in #2. Afterwards it's easy for me to check what was done originally, what changes I have requested for, and what was fixed. I am not going to review this once again from scratch.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Add CPU features and fix CPU vendor.
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:
ArpSetCpuVendorandArpSetCpuFeaturesto set CPU vendor and features, respectively.ArpIdentifyProcessorto call the new functions for vendor and features identification.CPU_FEATURESstructure toKPROCESSOR_CONTROL_BLOCKstructure to store CPU features.Tests:
I don't see any reason, why you have closed #2 and opened this PR. I have reviewed your proposed changes and I have asked for some changes, which should be done in #2. Afterwards it's easy for me to check what was done originally, what changes I have requested for, and what was fixed. I am not going to review this once again from scratch.
Pull request closed