Commit Graph
45 Commits
Author SHA1 Message Date
perikiyoxd 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
belliash 22693a48d3 Rework trap handling assembly code
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 32s
2024-04-23 15:07:08 +02:00
belliash 9f2279f28f Use common way of setting initial runlevel across architectures
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 34s
2024-04-19 23:56:33 +02:00
belliash 92ee74b494 Rework trap handling to access registers
Builds / ExectOS (i686) (push) Failing after 28s
Builds / ExectOS (amd64) (push) Failing after 29s
2024-04-19 16:52:37 +02:00
belliash 8aa33874ff Initialize CS segment on i686 architecture
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 31s
2024-04-17 18:27:57 +02:00
belliash b31aa82872 Fix loading CS segment for i686 architecture
Builds / ExectOS (i686) (push) Successful in 48s
Builds / ExectOS (amd64) (push) Successful in 50s
2024-04-17 16:46:03 +02:00
belliash 4b2d8ded72 No parameters are expected, explicitly
Builds / ExectOS (amd64) (push) Successful in 25s
Builds / ExectOS (i686) (push) Successful in 28s
2024-02-20 16:55:12 +01:00
belliash e409675f98 Always use RtlSetMemory() to fill a buffer with a specified pattern
Builds / ExectOS (amd64) (push) Successful in 23s
Builds / ExectOS (i686) (push) Successful in 28s
2024-02-20 16:16:32 +01:00
belliash 7727888087 Implement ArFlushTlb() routine
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 26s
2024-02-04 23:43:38 +01:00
belliash 9ce841e957 Implement memory barriers
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 27s
2024-02-04 22:10:37 +01:00
belliash 55cc62f5a0 Rename KIRQL to KRUNLEVEL type
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 27s
2023-11-25 00:32:55 +01:00
belliash 71d0608643 Implement ArGetStackPointer() routine
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 28s
2023-11-19 00:09:16 +01:00
belliash 35aa26e0e9 Add missing documentation comment block
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 29s
2023-11-15 15:50:33 +01:00
belliash ccd0514416 Implement more CPU-related routines
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 26s
2023-11-15 14:52:18 +01:00
belliash c5a9253ea8 Implement ArLoadLocalDescriptorTable() routine
ci/woodpecker/push/build Pipeline was successful
2023-03-02 23:04:36 +01:00
belliash dfae0b4727 Implement ArSetGdtEntryBase() routine
ci/woodpecker/push/build Pipeline was successful
2023-03-02 22:51:57 +01:00
belliash e41de62dab Implement ArYieldProcessor() routine
ci/woodpecker/push/build Pipeline was successful
2023-02-27 17:28:20 +01:00
belliash d427ca20fb Always include xtos.h in kernel sources
ci/woodpecker/push/build Pipeline was successful
2023-02-20 00:21:52 +01:00
belliash d72002187d Partially implement ArpIdentifyProcessor()
ci/woodpecker/push/build Pipeline was successful
2023-02-10 17:23:47 +01:00
belliash e645cf664c Set process and thread information in processor control block
ci/woodpecker/push/build Pipeline was successful
2023-02-09 17:30:24 +01:00
belliash 47f399e987 Set current process and thread in processor control block
ci/woodpecker/push/build Pipeline was successful
2023-02-09 00:02:45 +01:00
belliash a32e18b237 Implement ArReadFSDualWord() routine
ci/woodpecker/push/build Pipeline was successful
2023-02-07 23:19:22 +01:00
belliash 75c519a70c Use more generic name for this macro use pointer used behind it will point to kernel debugger after it gets initialized
ci/woodpecker/push/build Pipeline was successful
2023-02-07 19:37:44 +01:00
belliash 67768ae7a3 Mark ArpIdentifyProcessor() as unimplemented
ci/woodpecker/push/build Pipeline was successful
2023-02-06 16:15:24 +01:00
belliash 76f22fbdc4 Initialize segments and processor registers for i686 architecture
ci/woodpecker/push/build Pipeline was successful
2023-02-05 15:45:22 +01:00
belliash 911903d0eb Add missing routine description
ci/woodpecker/push/build Pipeline was successful
2023-02-05 10:08:49 +01:00
belliash d6aac59199 Let kernel initialize stack on it's own without relying on boot loader
ci/woodpecker/push/build Pipeline was successful
2023-02-05 09:55:59 +01:00
belliash 0b743a5f26 Add stub routine for identifying processor
ci/woodpecker/push/build Pipeline was successful
2023-02-05 00:42:30 +01:00
belliash f37722b6e6 Distinguish ProcessorBlock and ProcessorControlBlock
ci/woodpecker/push/build Pipeline was successful
2023-02-03 19:28:03 +01:00
belliash b90f37dad4 Fill in Interrupt Descriptor Table (IDT)
ci/woodpecker/push/build Pipeline was successful
2023-02-03 18:40:10 +01:00
belliash 648ad1636a Cleanup TSS initialization code
ci/woodpecker/push/build Pipeline was successful
2023-02-03 18:27:50 +01:00
belliash 269214ed34 Another improvements to GDT
ci/woodpecker/push/build Pipeline was successful
2023-02-03 18:00:37 +01:00
belliash a49d0804ce Add trap handlers for both i686 and amd64
ci/woodpecker/push/build Pipeline was successful
2023-02-02 23:31:32 +01:00
belliash cbd21ced39 Use a size of the structure, not a pointer
ci/woodpecker/push/build Pipeline was successful
2023-02-01 22:38:36 +01:00
belliash dc1a94b982 This is 'Processor Block'
ci/woodpecker/push/build Pipeline was successful
2023-02-01 22:02:07 +01:00
belliash 3522539d4b Initialize Interrupt Descriptor Table (IDT)
ci/woodpecker/push/build Pipeline was successful
2023-02-01 21:56:17 +01:00
belliash 1ef205d47b Initialize DoubleFault and NonMaskableInterrupt TSS entries
ci/woodpecker/push/build Pipeline was successful
2023-02-01 20:36:40 +01:00
belliash e2813bcdaa Fix entries in Global Descriptor Table (GDT)
ci/woodpecker/push/build Pipeline was successful
2023-02-01 20:24:55 +01:00
belliash 892c9eca86 Do not hardcode I/O map base
ci/woodpecker/push/build Pipeline was successful
2023-01-30 22:38:41 +01:00
belliash a761d3125a Architecture specific initialization prior to processor structures initialization
ci/woodpecker/push/build Pipeline was successful
2023-01-30 20:34:05 +01:00
belliash 6f068513cd Initial processor block initialization
ci/woodpecker/push/build Pipeline was successful
2023-01-30 19:07:05 +01:00
belliash bca7ac41b8 Initialize boot CPU structures inside kernel on i686 architecture
ci/woodpecker/push/build Pipeline was successful
2023-01-29 10:54:52 +01:00
belliash ae60753e33 Add missing source files for i686 architecture
ci/woodpecker/push/build Pipeline was successful
2023-01-29 00:52:05 +01:00
belliash 8733a23b20 Include kernel top header
ci/woodpecker/push/build Pipeline was successful
2023-01-29 00:34:34 +01:00
belliash 27e2fdf4f2 Introduce architecture library as new kernel subsystem and move selected routines into new subsystem
ci/woodpecker/push/build Pipeline was successful
2023-01-28 10:34:55 +01:00