51 Commits

Author SHA1 Message Date
Mikhail Krichanov
3664e7206d Ring3: Renamed Ring3 as UserSpace. 2025-04-14 13:17:36 +03:00
Mikhail Krichanov
10cb3149cd Core/Dxe: Added sanity checks. 2025-04-14 13:12:14 +03:00
Mikhail Krichanov
519bffe4f9 Core/Dxe: Placed platform dependent code into separate files. 2025-04-14 13:12:14 +03:00
Mikhail Krichanov
9d632c6572 Core/Dxe: Added sanity checks. 2025-04-14 13:12:14 +03:00
Mikhail Krichanov
d7c10198ac SysCall: Fixed paddings, renamed CoreOpenVolume as
CoreSimpleFileSystemOpenVolume.
2025-04-14 13:12:14 +03:00
Mikhail Krichanov
b13baeb518 Ring3: Refactored out SysCallStackTop. 2025-04-14 13:12:14 +03:00
Mikhail Krichanov
502bafe41b Ring3: Added NumberOfArguments to SysCall() and CallBootService(). 2025-04-14 13:12:14 +03:00
Mikhail Krichanov
213713f790 Ring3: Saved ReturnSP on SysCallStack. 2025-04-14 13:12:14 +03:00
Mikhail Krichanov
f532beefbd Ring3: Placed UnicodeCollation driver into User space. 2025-04-14 13:12:14 +03:00
Mikhail Krichanov
2601648b32 Ring3: Refactored out CoreRsp and UserStackTop. 2025-04-14 13:12:14 +03:00
Mikhail Krichanov
ae0465017f SysCall: Refactored out mRing3CallStackTop and mCoreSysCallStackTop. 2025-04-14 13:12:14 +03:00
Mikhail Krichanov
8587830d67 SysCall: Refactored out CORE_STACK and RING3_STACK. 2025-04-14 13:12:14 +03:00
Mikhail Krichanov
ea41000bcf Ring3: Fixed line endings. 2025-04-14 13:12:12 +03:00
Mikhail Krichanov
79d8607366 Ring3: Refactored out gCoreSysCallStackTop and gRing3CallStackTop. 2025-04-14 13:06:18 +03:00
Mikhail Krichanov
1135998eae SysCall: Refactored MakeUserPageTableTemplate(). 2025-04-14 13:00:53 +03:00
Mikhail Krichanov
2b0b63c99a SysCall: Simplified MakeUserPageTableTemplate(). 2025-04-14 13:00:53 +03:00
Mikhail Krichanov
03481707ea SysCall: Refactored InitializeMsr.c file name. 2025-04-14 13:00:53 +03:00
Mikhail Krichanov
9558d691d1 Ring3: Removed gEfiHobPageTableInfoGuid. 2025-04-14 13:00:53 +03:00
Mikhail Krichanov
a4886f5df1 SysCall: Turned on interrupts in User. 2025-04-14 13:00:53 +03:00
Mikhail Krichanov
0fd0e992d0 Ring3: Set 1G User pages as not present by default, fixed padding. 2025-04-14 13:00:53 +03:00
Mikhail Krichanov
1249d76ef8 SysCall: Disabled global pages, set User page table attibutes in
paging syscalls.
2025-04-14 12:54:02 +03:00
Mikhail Krichanov
70b97bff7c Ring3: Added necessary Core pages to User page table. 2025-04-14 12:54:02 +03:00
Mikhail Krichanov
6ad66cc634 Ring3: Split Page Table template construction and initialization,
removed ChangeUefiImageRing(), added GetUefiImageRecord().
2025-04-14 12:54:02 +03:00
Mikhail Krichanov
51447148b0 Ring3: Added support for separate User address space. 2025-04-14 12:50:53 +03:00
Mikhail Krichanov
bd8887ce13 SysCall/X64: Fixed CallBootService() for VS2019. 2025-04-14 12:12:47 +03:00
Mikhail Krichanov
7f8eb4d2f6 SysCall: Refactored SysCallReturnToCore handling to fix CLANGDWARF NOOPT. 2025-04-14 12:12:47 +03:00
Mikhail Krichanov
748417a698 SysCall/X64: Fixed CallBootService() for NOOPT. 2025-04-14 12:12:47 +03:00
Mikhail Krichanov
33b3f9221c SysCall: Split SMEP and SMAP initialization. 2025-04-14 12:12:47 +03:00
Mikhail Krichanov
cd64c7e0a6 Core/Dxe: Refactored DisableSMAP(), EnableSMAP() names. 2025-04-14 12:12:47 +03:00
Mikhail Krichanov
52fec299ed Core/Dxe: Changed line ending to Windows style. 2025-04-14 12:12:47 +03:00
Mikhail Krichanov
975c3b861e SysCall: Made SMEP, SMAP, PAN optional features. 2025-04-14 12:12:47 +03:00
Mikhail Krichanov
046dcae0e7 SysCall: Restored nonvolatile registers for IA32, X64. 2025-04-14 12:09:42 +03:00
Mikhail Krichanov
c40371524e SysCall: Fixed typos. 2025-04-14 12:09:42 +03:00
Mikhail Krichanov
ea5ad0fb34 Ring3: Summarized all known problems for AARCH64. 2025-04-14 11:54:33 +03:00
Mikhail Krichanov
1fdcce93d4 SysCall: Some refactoring. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
8ca773c920 Ring3: Moved platform dependant initialization to separate files. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
1cc7d21c40 SysCall: Fixed MdeModulePkg compilation for XCODE5. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
cf3bb4d68b Ring3: Refactored exception handling. 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
eba7b947da SysCall: Refactored data segment selectors' switching. 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
0822b7e12a Ring3: Fixed interrrupts handling. 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
6365e5bc8e Ring3: Fixed missing Ring3Call result. 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
d11ff4bebd Ring3: Some refactoring. 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
f0fb2003a2 Ring3: Refactored CallRing3(). 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
27c04bb224 Ring3: Moved Ring3UefiBootServicesTableLib to Ring3Dxe. 2025-04-14 11:23:05 +03:00
Mikhail Krichanov
0171f0ceff Ring3: Added SysCallReturnToCore. 2025-04-14 11:23:05 +03:00
Mikhail Krichanov
8a16ce73a7 Ring3: Refactored EnterUserImage() into CallRing3(). 2025-04-14 11:23:05 +03:00
Mikhail Krichanov
1b37dd79f6 Ring3: Fixed SysCallInstallMultipleProtocolInterfaces. 2025-04-14 11:23:05 +03:00
Mikhail Krichanov
2392881e22 Ring3: Added Ring3EntryPoint draft. 2025-04-14 11:23:05 +03:00
Mikhail Krichanov
028342cb6b Ring3: Refactored stack operations. 2025-04-14 11:23:05 +03:00
Mikhail Krichanov
9d5ef4f68e Ring3: Refactored out FunctionAddress from API. 2025-04-14 11:23:05 +03:00