Commit Graph

1045 Commits

Author SHA1 Message Date
e4fa9bdead CurrentPrcb is needed here
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-10 17:29:18 +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
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
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
c4a52938d2 Implement KeGetCurrentThread() routine
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-08 23:58: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
929d3dfae7 Implement KeGetCurrentProcessorBlock() and KeGetCurrentProcessorControlBlock() routines for both amd64 and i686
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-08 16:39:05 +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
67768ae7a3 Mark ArpIdentifyProcessor() as unimplemented
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-06 16:15:24 +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
9c7d961c5a Architecture specific initialization after processor init is done
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-06 15:53:11 +01:00
385f0e6de0 Not all AMD64 CPUs support large pages and global pages, unfortunately
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-05 22:14:47 +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
2ba42c5270 Update ideas
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-05 13:23:11 +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
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
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
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
f181215341 Initialize segment registers
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-04 00:17:07 +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
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
404f2f85c6 Cleanup the Interrupt Stack Table
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-01 23:47:57 +01:00
7fc1f04cd0 TSS entry is already put into GDT table, just initialize it
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-02-01 23:37:12 +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
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
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
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
d3376ce33b This is no longer an idea
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-29 22:33:12 +01:00