Commit Graph

184 Commits

Author SHA1 Message Date
1eecad21db
Implement HlReadApicRegister() and HlWriteApicRegister() routines for basic APIC support 2023-11-20 15:26:03 +01:00
0c3268acd1
Export registers read/write related routines 2023-11-19 00:46:51 +01:00
12f946c92d
Fixes to I/O registers related routines 2023-11-19 00:39:52 +01:00
71d0608643
Implement ArGetStackPointer() routine 2023-11-19 00:09:16 +01:00
1a932468a2
Add some DPC related stubs 2023-11-16 14:53:54 +01:00
ec4a0fcb70
Add missing KepRetireDpcList() routine forward reference 2023-11-15 23:19:20 +01:00
5b6f3b0244
Mark user mode threads as not yet supported 2023-11-15 20:41:28 +01:00
35aa26e0e9
Add missing documentation comment block 2023-11-15 15:50:33 +01:00
5d27473bb0
Fix i686 build 2023-11-15 15:34:04 +01:00
d35dd4fce3
Save processor state during kernel initialization 2023-11-15 15:00:38 +01:00
ccd0514416
Implement more CPU-related routines 2023-11-15 14:52:18 +01:00
fc85e0674b
Let KeGetCurrentProcessorControlBlock() use CurrentPrcb field and correct comments 2023-11-13 15:36:50 +01:00
1d9a79736a
Allow to postpone thread startup 2023-11-11 16:30:53 +01:00
641b34b119
Fixes in i686 version of KepInitializeThreadContext() 2023-11-08 16:06:01 +01:00
362eefc2b3
Fixes in AMD64 version of KepInitializeThreadContext() to get rid of PageFault exception 2023-11-07 15:34:49 +01:00
91ce0f9947
Compensate missing return address, which is a 4-byte on i686 and an 8-byte on amd64 2023-11-05 20:07:13 +01:00
ba833422b0
Implement ExCompleteRundownProtection() and ExReInitializeRundownProtection() routines and add stub for ExWaitForRundownProtectionRelease() 2023-11-05 09:50:04 +01:00
02f35dbd8c
Try to allocate new stack for a thread if needed 2023-11-03 16:04:10 +01:00
a6c3924b56
Initialize Idle thread for i686 architecture 2023-11-03 15:29:01 +01:00
63f8dbc59b
Initialize CPU power structures, idle process and idle thread 2023-11-02 23:07:11 +01:00
2621cb6d8a
Turn atomic routines architecture independent 2023-10-29 21:43:05 +01:00
783a4a2aa0
Finish PoInitializeProcessorControlBlock() routine implementation 2023-10-29 20:14:10 +01:00
aa17be6eb3
Implement KeSetTargetProcessorDpc() routine 2023-10-29 19:59:21 +01:00
be7981f614
Implement KeInitializeThreadedDpc() and export it together with KeInitializeDpc() 2023-10-29 19:45:45 +01:00
a359c9b2e8
Keep only atomic routines 2023-10-29 18:22:11 +01:00
3f2baa5b50
Rename RtlInterlockedDecrementLongPtr() to follow routines naming convention 2023-10-29 12:21:19 +01:00
cf7c467637
Implement RtlInterlockedExchangePointer() routine 2023-10-29 11:48:31 +01:00
6d63750fc2
Rename KepArchInitialize() routine to KepInitializeMachine() 2023-10-29 10:38:23 +01:00
f05a262da2
Cleanup XTDK and XTOSKRNL headers 2023-10-29 09:58:47 +01:00
841a6b304b
Cleanup KE subsystem headers 2023-10-29 09:14:46 +01:00
798e4c1d22
Cleanup MM subsystem headers 2023-10-29 00:52:05 +02:00
600c86949b
Cleanup RTL subsystem headers 2023-10-29 00:14:01 +02:00
4ea54859f2
Add missing HL routine definitions 2023-10-28 23:36:21 +02:00
ad15c55a39
Cleanup AR subsystem headers 2023-10-28 23:35:34 +02:00
598b34acf7
AR subsystem is architecture dependant, thus there should be no generic routines 2023-10-28 23:08:08 +02:00
d55946c3cf
Cleanup HL subsystem headers 2023-10-28 22:56:04 +02:00
3f520c8e0f
Rename xtoskrnl headers 2023-10-28 22:35:33 +02:00
a2e3e3d9a9
Compile rundown routines 2023-10-28 01:37:27 +02:00
7f8618d2c0
Export ExAcquireRundownProtection(), ExInitializeRundownProtection() and ExReleaseRundownProtection() kernel routines 2023-10-28 00:02:18 +02:00
6f5e7f63f3
Include xtver.h to access version related definitions 2023-10-27 15:43:37 +02:00
4e553b5570
Remove unused variables to satisfy compiler 2023-10-27 15:37:31 +02:00
f549ca54a1
Implement I/O registers related routines 2023-04-05 00:04:11 +02:00
358b20f1a1
Reorder routines 2023-04-04 22:35:06 +02:00
4073b1589d
Rename endian conversion routines to match naming convention 2023-04-04 21:02:14 +02:00
d5dd87b889
Add initial kernel panic mechanism 2023-03-23 22:34:28 +01:00
2827bb400f
Implement ExAcquireRundownProtection() and ExReleaseRundownProtection() routines 2023-03-18 11:11:06 +01:00
1f8026db2f
Implement RtlInterlockedCompareExchangePointer() and RtlInterlockedDecrementLongPtr() atomic routines 2023-03-17 18:06:53 +01:00
934dba37a1
Initial kernel events support 2023-03-17 16:46:18 +01:00
e0778d0a12
Introduce kernel executive 2023-03-16 23:40:38 +01:00
e6b64b741a
Initialize thread context for i686 2023-03-15 23:05:18 +01:00