Commit Graph

281 Commits

Author SHA1 Message Date
ad15c55a39
Cleanup AR subsystem headers
Some checks failed
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Failing after 13s
2023-10-28 23:35:34 +02:00
d55946c3cf
Cleanup HL subsystem headers
All checks were successful
Builds / ExectOS (i686) (push) Successful in 26s
Builds / ExectOS (amd64) (push) Successful in 29s
2023-10-28 22:56:04 +02:00
ebb740b0e7
Add more readmes to describe XTOS components and source code tree directories
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-05-18 21:24:33 +02:00
e11d9dcfad
Make a place for XTBK
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-05-18 21:11:36 +02:00
42669bcfb3
Import readme for XTDK
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-05-18 21:00:35 +02:00
9a059b407e
The declspec 'naked' attribute is not supported on 'x86_64', use attribute instead
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-04-12 20:50:42 +02:00
358b20f1a1
Reorder routines
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-04-04 22:35:06 +02:00
4073b1589d
Rename endian conversion routines to match naming convention
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-04-04 21:02:14 +02:00
2257ad1567
Add XTASSEMBLY routine modifier to instruct compiler to generate code without prolog and epilog
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-28 17:33:38 +02:00
bf3d56385f
Add missing forward declarations
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-24 15:39:07 +01:00
6402a0d0a4
Update EDK2 OVMF firmware
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-20 22:28:43 +01:00
2827bb400f
Implement ExAcquireRundownProtection() and ExReleaseRundownProtection() routines
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-18 11:11:06 +01:00
1f8026db2f
Implement RtlInterlockedCompareExchangePointer() and RtlInterlockedDecrementLongPtr() atomic routines
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-17 18:06:53 +01:00
934dba37a1
Initial kernel events support
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-17 16:46:18 +01:00
e0778d0a12
Introduce kernel executive
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-16 23:40:38 +01:00
e6b64b741a
Initialize thread context for i686
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-15 23:05:18 +01:00
3afbc7e419
Introduce SIMD save area in place of FN/FX and use anonymous union inside FX_SAVE_AREA structure
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-15 22:19:18 +01:00
a8fa702b05
Unify KSWITCH_FRAME naming with AMD64
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-15 19:15:31 +01:00
10ccf67e8e
Add missing forward declarations
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-14 22:50:32 +01:00
cec8a13e4c
Add context control flags and thread frames for i686 architecture
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-14 22:47:32 +01:00
5677719038
Initialize thread context for AMD64
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-14 17:37:20 +01:00
8f653c47dc
Initial Deferred Procedure Call (DPC) support
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-05 22:56:16 +01:00
fd8eec1d86
Add EFLAGS and THREAD_ENVIRONMENT_BLOCK for amd64
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-05 19:03:34 +01:00
70795ae57a
Add EFLAGS and THREAD_ENVIRONMENT_BLOCK for x86
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-05 18:11:57 +01:00
c5a9253ea8
Implement ArLoadLocalDescriptorTable() routine
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-02 23:04:36 +01:00
870a6680b0
Add thread information block
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-01 00:14:06 +01:00
3d42fcc0f5
Add KSWITCH_FRAME definition for i686 architecture
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-01 00:03:20 +01:00
e8e6cf1192
Set calling convention in each routine callback
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-28 19:41:58 +01:00
ef23acc3bc
Add Deferred Procedure Call (DPC) and processor power state related structures
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-27 19:58:47 +01:00
e41de62dab
Implement ArYieldProcessor() routine
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-27 17:28:20 +01:00
9c74aafe3d
Initial implementation of process initialization
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-24 19:52:20 +01:00
c4d1f1cd0d
Initial implementation of the thread initialization
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-23 20:11:21 +01:00
9e264e5327
Update kernel related structures
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-21 16:49:44 +01:00
c8428241dd
Add missing headers containing forward references of MM routines
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-20 22:22:32 +01:00
3354075900
Initial Asynchronous Procedure Call (APC) support
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-18 00:04:51 +01:00
3ba3a57881
Add missing KPRIORITY definition
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-17 09:41:53 +01:00
08405e7bdc
Ad more routines for semaphores support
Some checks failed
ci/woodpecker/push/build Pipeline failed
2023-02-17 09:40:18 +01:00
ccaa28399a
Initial semaphores support
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-16 19:29:36 +01:00
98884516a1
Implement KeInitializeSpinLock() routine
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-16 18:34:46 +01:00
b2456fd18a
Implement kernel timer initialization routines
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-16 17:56:35 +01:00
91e4176e45
Include more headers to satisfy clang
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-16 17:52:55 +01:00
4a737d0472
Remove kertptr header file
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-16 17:48:59 +01:00
feff0d9b7b
More core kernel library structures
Some checks failed
ci/woodpecker/push/build Pipeline failed
2023-02-16 17:46:51 +01:00
785c515e36
Add dispatcher object header definition
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-15 22:49:59 +01:00
b1c2b209e3
Implement RtlGetStackLimits() routine
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-15 20:12:58 +01:00
d28687631b
Add thread stack information to the structure
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-15 20:08:19 +01:00
18a39f95bc
Add floating save area structure definitions
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-15 20:07:17 +01:00
28b760b089
Add stubs for allocating and freeing kernel stacks
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-14 22:35:16 +01:00
2e790bd9b2
Add pages related macros and definitions
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-13 23:01:20 +01:00
050f24f877
Implement routines for atomically work with linked lists
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-13 22:36:03 +01:00
9e5fb84412
More routines for performing atomic bitwise AND/OR/XOR operations
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-12 23:11:23 +01:00
5a86d61b78
Implement routines for performing atomic operations
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-12 22:46:58 +01:00
6411fc3ae9
Simplify single linked list header
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-11 12:41:00 +01:00
4cae0447c1
Add single linked list definitions
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-11 00:27:36 +01:00
e94cb2d3a7
Processor identification structures
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-10 17:14:12 +01:00
e645cf664c
Set process and thread information in processor control block
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-09 17:30:24 +01:00
e3a900088c
Initial process and thread related structures
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-08 23:56:29 +01:00
9132c47cd9
Initial process and thread related structures
Some checks failed
ci/woodpecker/push/build Pipeline failed
2023-02-08 23:40:58 +01:00
d8c68ed003
Add endian conversion routines
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-08 16:33:57 +01:00
a32e18b237
Implement ArReadFSDualWord() routine
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-07 23:19:22 +01:00
75c519a70c
Use more generic name for this macro use pointer used behind it will point to kernel debugger after it gets initialized
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-07 19:37:44 +01:00
f8d2ccc0d0
Add more debugging macros
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-06 16:10:32 +01:00
707c92e08a
Boot loader no longer needs to do anything related to the stack
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-05 10:03:21 +01:00
c6cadbd655
Initialize MXCSR register
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-05 00:30:12 +01:00
5eaf7d63a3
Initialize Page Attribute Table
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-05 00:14:34 +01:00
55cdae7c83
Initialize AMD64 processor registers
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-04 23:40:03 +01:00
f37722b6e6
Distinguish ProcessorBlock and ProcessorControlBlock
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-03 19:28:03 +01:00
269214ed34
Another improvements to GDT
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-03 18:00:37 +01:00
19f34d4b17
Cleanup the code
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-02 19:42:57 +01:00
715f875c4f
Set alignment and packing properly
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-02 17:01:18 +01:00
2e2b01742a
Definitions for setting structures alignment and packing
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-02 15:47:21 +01:00
73fc7607cd
There is no need to specify alignment of the structure in the forward reference
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-02 15:37:57 +01:00
dc1a94b982
This is 'Processor Block'
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-01 22:02:07 +01:00
21fbe6febe
Add IDT related definitions
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-01 20:14:10 +01:00
5bbda188c6
IDT access levels and gate types
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-01 00:51:13 +01:00
9a1e9b1084
Define TSS offsets
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-30 23:43:10 +01:00
a761d3125a
Architecture specific initialization prior to processor structures initialization
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-30 20:34:05 +01:00
6f068513cd
Initial processor block initialization
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-30 19:07:05 +01:00
ebe6792f2b
Add MSR (Model Specific Registers) values
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-30 17:59:00 +01:00
ce4e590347
Add missing forward declaration of ArInitializeProcessor() routine
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-29 00:57:06 +01:00
900e71459a
Add missing x86 descriptor sizes
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-29 00:54:36 +01:00
7bf4a9ab8d
Initialize boot CPU structures inside kernel on AMD64
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-29 00:45:17 +01:00
27e2fdf4f2
Introduce architecture library as new kernel subsystem and move selected routines into new subsystem
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-28 10:34:55 +01:00
e94e50b5d9
Implement HlLoadInterruptDescriptorTable() intrinsics for loading IDT
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-26 20:08:57 +01:00
3ad3149f80
Add descriptor structure definition
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-25 17:42:35 +01:00
bfc9db8b6d
Unify KGDTENTRY and KIDTENTRY between architectures as much as possible
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-25 17:35:03 +01:00
3ee759cc27
i686 Interrupt request levels definitions
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-25 17:18:27 +01:00
7bd67d6210
Add GDT and Segments related definitions for i686
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-25 17:13:24 +01:00
a366de618f
AMD64 Interrupt request levels definitions
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-25 17:08:42 +01:00
8f348c3954
Add GDT and Segments related definitions for AMD64
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-25 17:05:15 +01:00
707dc37868
Fix type of Source parameter in HlLoadSegment() routine
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-24 23:08:48 +01:00
35aa514f95
Implement HlLoadSegment() intrinsics routine
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-24 19:27:18 +01:00
d3d8d144a0
Implement HlLoadGlobalDescriptorTable() intrinsic
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-23 20:13:51 +01:00
c81b858757
Implement HlReadGSQuadWord() intrinsic
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-23 19:59:54 +01:00
f20ab3e52e
Implement HlLoadTaskRegister() for loading TSS segment selector into task register
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-23 15:26:35 +01:00
9cbe2d458c
Initial support for EFI framebuffer 2023-01-23 15:26:35 +01:00
145fc17271
Pass framebuffer pitch information to the kernel
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-18 20:15:41 +01:00
41a0a2b37c
Shorter and longer version of the build timestamp
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-18 20:10:03 +01:00
1a93c198ed
Add missing forward reference to _LOADER_GRAPHICS_INFORMATION_BLOCK structure
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-16 19:51:19 +01:00
605597262c
Initial version of EFI framebuffer module, currently support only GOP
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-16 18:41:25 +01:00