Commit Graph

45 Commits

Author SHA1 Message Date
363e100493
Saving processor features in the processor control block
Fixed correct AMD Family 25 model detection
Fixed procedure for saving processor vendor name (previously corrupted)
Added a debugging print of the processor identification
2024-05-06 17:55:37 +02:00
22693a48d3
Rework trap handling assembly code
All checks were successful
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 32s
2024-04-23 15:07:08 +02:00
9f2279f28f
Use common way of setting initial runlevel across architectures
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 34s
2024-04-19 23:56:33 +02:00
92ee74b494
Rework trap handling to access registers
Some checks failed
Builds / ExectOS (i686) (push) Failing after 28s
Builds / ExectOS (amd64) (push) Failing after 29s
2024-04-19 16:52:37 +02:00
8aa33874ff
Initialize CS segment on i686 architecture
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 31s
2024-04-17 18:27:57 +02:00
b31aa82872
Fix loading CS segment for i686 architecture
All checks were successful
Builds / ExectOS (i686) (push) Successful in 48s
Builds / ExectOS (amd64) (push) Successful in 50s
2024-04-17 16:46:03 +02:00
4b2d8ded72
No parameters are expected, explicitly
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 25s
Builds / ExectOS (i686) (push) Successful in 28s
2024-02-20 16:55:12 +01:00
e409675f98
Always use RtlSetMemory() to fill a buffer with a specified pattern
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 23s
Builds / ExectOS (i686) (push) Successful in 28s
2024-02-20 16:16:32 +01:00
7727888087
Implement ArFlushTlb() routine
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 26s
2024-02-04 23:43:38 +01:00
9ce841e957
Implement memory barriers
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 27s
2024-02-04 22:10:37 +01:00
55cc62f5a0
Rename KIRQL to KRUNLEVEL type
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 27s
2023-11-25 00:32:55 +01:00
71d0608643
Implement ArGetStackPointer() routine
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 28s
2023-11-19 00:09:16 +01:00
35aa26e0e9
Add missing documentation comment block
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 29s
2023-11-15 15:50:33 +01:00
ccd0514416
Implement more CPU-related routines
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 26s
2023-11-15 14:52:18 +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
dfae0b4727
Implement ArSetGdtEntryBase() routine
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-03-02 22:51:57 +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
d427ca20fb
Always include xtos.h in kernel sources
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-20 00:21:52 +01:00
d72002187d
Partially implement ArpIdentifyProcessor()
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-10 17:23:47 +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
47f399e987
Set current process and thread in processor control block
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-09 00:02:45 +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
67768ae7a3
Mark ArpIdentifyProcessor() as unimplemented
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-06 16:15:24 +01:00
76f22fbdc4
Initialize segments and processor registers for i686 architecture
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-05 15:45:22 +01:00
911903d0eb
Add missing routine description
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-05 10:08:49 +01:00
d6aac59199
Let kernel initialize stack on it's own without relying on boot loader
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-05 09:55:59 +01:00
0b743a5f26
Add stub routine for identifying processor
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-05 00:42:30 +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
b90f37dad4
Fill in Interrupt Descriptor Table (IDT)
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-03 18:40:10 +01:00
648ad1636a
Cleanup TSS initialization code
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-03 18:27:50 +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
a49d0804ce
Add trap handlers for both i686 and amd64
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-02 23:31:32 +01:00
cbd21ced39
Use a size of the structure, not a pointer
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-01 22:38:36 +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
3522539d4b
Initialize Interrupt Descriptor Table (IDT)
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-01 21:56:17 +01:00
1ef205d47b
Initialize DoubleFault and NonMaskableInterrupt TSS entries
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-01 20:36:40 +01:00
e2813bcdaa
Fix entries in Global Descriptor Table (GDT)
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-01 20:24:55 +01:00
892c9eca86
Do not hardcode I/O map base
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-30 22:38:41 +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
bca7ac41b8
Initialize boot CPU structures inside kernel on i686 architecture
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-29 10:54:52 +01:00
ae60753e33
Add missing source files for i686 architecture
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-29 00:52:05 +01:00
8733a23b20
Include kernel top header
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-29 00:34:34 +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