Wykres commitów

100 Commity

Autor SHA1 Wiadomość Data
156cb7bcac Refactor system resources to be able to distinguish if requested resource does not exist or if it is locked and cannot be reused
Niektóre etapy nie powiodły się
Builds / ExectOS (amd64) (push) Failing after 28s
Builds / ExectOS (i686) (push) Failing after 28s
2024-06-22 18:54:34 +02:00
c2db94125d Add appropriate crediting for Minoca authors for the System Resources component
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 37s
Builds / ExectOS (i686) (push) Successful in 37s
2024-06-21 17:00:20 +02:00
330d3fa72e Fix routines order for better maintainability
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 40s
Builds / ExectOS (i686) (push) Successful in 39s
2024-06-21 16:50:05 +02:00
91e8a86ee2 Implement kernel undefined behavior sanitizer support
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 34s
2024-06-12 16:19:24 +02:00
76e1fc6099 Enable hardware layer initialization code
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 34s
2024-06-04 21:36:09 +02:00
c289dab514 Add ACPI resource type
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 35s
2024-06-02 21:36:59 +02:00
4a275b3dec Just skip unsupported system resources
Wszystkie etapy powiodły się
Builds / ExectOS (i686) (push) Successful in 50s
Builds / ExectOS (amd64) (push) Successful in 52s
2024-05-26 00:09:31 +02:00
b4588d5b4c Make ExectOS only run on processors which support PAE
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 55s
Builds / ExectOS (i686) (push) Successful in 53s
2024-05-24 16:30:39 +02:00
edbc2cc045 Initialize architecture specific hardware extensions
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 47s
Builds / ExectOS (i686) (push) Successful in 45s
2024-05-22 22:53:29 +02:00
811b173387 Re-enable interrupts only if they were enabled previously
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 42s
Builds / ExectOS (i686) (push) Successful in 40s
2024-05-17 23:24:04 +02:00
8a15d46198 Initialize system resource as soon as possible
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 48s
Builds / ExectOS (i686) (push) Successful in 46s
2024-05-17 22:31:29 +02:00
74c1b03a6b Implement a system resources management routines
Niektóre etapy nie powiodły się
Builds / ExectOS (amd64) (push) Failing after 10m17s
Builds / ExectOS (i686) (push) Failing after 10m15s
2024-05-16 23:08:59 +02:00
3d08be4fac Refactor kernel startup code
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 1m7s
Builds / ExectOS (i686) (push) Successful in 1m4s
2024-05-12 09:06:24 +02:00
c34b6ff6c1 Take CPU number from processor block
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 50s
Builds / ExectOS (i686) (push) Successful in 48s
2024-05-08 21:59:18 +02:00
38b0b2ac7d Use correct stack when using preallocated processor structures
Wszystkie etapy powiodły się
Builds / ExectOS (i686) (push) Successful in 49s
Builds / ExectOS (amd64) (push) Successful in 50s
2024-05-08 15:57:24 +02:00
3c3a756771 Allow to initialize CPU with allocated processor structures
Wszystkie etapy powiodły się
Builds / ExectOS (i686) (push) Successful in 35s
Builds / ExectOS (amd64) (push) Successful in 36s
2024-05-08 00:02:47 +02:00
8d6d27651c Implement KeGetCurrentProcessorNumber() routine
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 34s
2024-05-07 18:52:43 +02:00
ac0b8ab36a Allow to specify CPU number when initializing (A)PIC
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 42s
Builds / ExectOS (i686) (push) Successful in 41s
2024-05-07 16:16:49 +02:00
243aacc9c1 Cleanup thread context initialization code
Wszystkie etapy powiodły się
Builds / ExectOS (i686) (push) Successful in 38s
Builds / ExectOS (amd64) (push) Successful in 40s
2024-05-06 16:57:29 +02:00
e4155ee008 Lower runlevel to APC before initializing idle process
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 41s
Builds / ExectOS (i686) (push) Successful in 39s
2024-05-05 21:48:58 +02:00
c98ad3862b Use kernel boot stack for the idle thread
Wszystkie etapy powiodły się
Builds / ExectOS (i686) (push) Successful in 43s
Builds / ExectOS (amd64) (push) Successful in 46s
2024-05-05 21:47:48 +02:00
a6b8f97fbb Remove empty line
Wszystkie etapy powiodły się
Builds / ExectOS (i686) (push) Successful in 34s
Builds / ExectOS (amd64) (push) Successful in 35s
2024-04-29 08:40:07 +02:00
30a2cb9849 Update timers support
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 47s
Builds / ExectOS (i686) (push) Successful in 46s
2024-04-21 13:57:55 +02:00
331c5bfeda Rework initial timer support
Wszystkie etapy powiodły się
Builds / ExectOS (i686) (push) Successful in 34s
Builds / ExectOS (amd64) (push) Successful in 36s
2024-04-20 23:15:57 +02:00
12ce7aae3f Correct formatting
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 33s
2024-04-19 23:59:21 +02:00
5539d98572 Raise to HIGH runlevel before switching the stack
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 34s
Builds / ExectOS (i686) (push) Successful in 33s
2024-04-19 23:55:26 +02:00
b30d15719c Temporarily comment out thread code related to trap frame
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 34s
2024-04-19 16:59:57 +02:00
3a86ab1424 Remove duplicated code
Wszystkie etapy powiodły się
Builds / ExectOS (i686) (push) Successful in 42s
Builds / ExectOS (amd64) (push) Successful in 44s
2024-03-10 22:51:34 +01:00
77bc796769 Implement HlClearApicErrors() and HlSendEoi() routines, change HlDisableLegacyPic() calling convention
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 45s
Builds / ExectOS (i686) (push) Successful in 20s
2024-02-09 15:11:14 +01:00
99abcd63d1 Implement basic kernel spinlock mechanism
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 27s
2024-02-05 22:07:39 +01:00
1e696258c2 Initialize framebuffer and processor
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 27s
2023-11-29 22:49:15 +01:00
Jozef Nagy
c8a54e602b Disable legacy 8259 PIC before enabling APIC
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 26s
Reviewed-on: #5
Reviewed-by: Rafal Kupiec <belliash@noreply.codingworkshop.git>
Co-authored-by: Jozef Nagy <schkwve@gmail.com>
Co-committed-by: Jozef Nagy <schkwve@gmail.com>
2023-11-29 20:07:16 +01:00
669b84a826 Add architecture related information to kernel startup string
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 25s
Builds / ExectOS (i686) (push) Successful in 26s
2023-11-29 18:32:03 +01:00
d17b06a180 Register interrupt handlers once the APIC initialization is done
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 24s
2023-11-28 14:20:23 +01:00
0e6844e2fa Fix page fault on accessing initial thread frame
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 24s
2023-11-26 14:14:54 +01:00
bed49fa0ac Fix function prototypes using fastcall and stdcall calling convensions
Niektóre etapy nie powiodły się
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Failing after 16s
2023-11-25 23:25:44 +01:00
e245754d95 Add running level management support
Niektóre etapy nie powiodły się
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Failing after 14s
2023-11-25 23:14:15 +01:00
55cc62f5a0 Rename KIRQL to KRUNLEVEL type
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 27s
2023-11-25 00:32:55 +01:00
f28c870192 Implement KeHaltSystem() routine
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 44s
2023-11-22 19:24:14 +01:00
d8403d01f5 Verify kernel and boot loader compatibility
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 31s
2023-11-22 17:22:57 +01:00
1a932468a2 Add some DPC related stubs
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 29s
2023-11-16 14:53:54 +01:00
5b6f3b0244 Mark user mode threads as not yet supported
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 31s
Builds / ExectOS (i686) (push) Successful in 29s
2023-11-15 20:41:28 +01:00
5d27473bb0 Fix i686 build
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 30s
2023-11-15 15:34:04 +01:00
d35dd4fce3 Save processor state during kernel initialization
Niektóre etapy nie powiodły się
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Failing after 16s
2023-11-15 15:00:38 +01:00
fc85e0674b Let KeGetCurrentProcessorControlBlock() use CurrentPrcb field and correct comments
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 31s
Builds / ExectOS (i686) (push) Successful in 28s
2023-11-13 15:36:50 +01:00
1d9a79736a Allow to postpone thread startup
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 30s
2023-11-11 16:30:53 +01:00
641b34b119 Fixes in i686 version of KepInitializeThreadContext()
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 27s
2023-11-08 16:06:01 +01:00
362eefc2b3 Fixes in AMD64 version of KepInitializeThreadContext() to get rid of PageFault exception
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 58s
Builds / ExectOS (i686) (push) Successful in 31s
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
Wszystkie etapy powiodły się
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 28s
2023-11-05 20:07:13 +01:00
02f35dbd8c Try to allocate new stack for a thread if needed
Wszystkie etapy powiodły się
Builds / ExectOS (amd64) (push) Successful in 31s
Builds / ExectOS (i686) (push) Successful in 28s
2023-11-03 16:04:10 +01:00