Mark
ba92882f6c
***: throw away disasm again
2020-11-09 13:18:11 +02:00
Mark
a971e0f15e
***: import code from audasm repo
2020-10-20 10:42:12 +03:00
Mark
c2db4e94a6
proc: fix gs/fs-related bug in exception handler
...
1. %rip -> %rsp (misspelt a register name, damn)
2. Rename swapgs_if_needed to iret_swapgs_if_needed for clarification
3. Add iret_swapgs_if_needed before iret from exception handler
2020-10-18 23:48:27 +03:00
Mark
f263bfb63f
boot: use yboot2-proto instead of yboot2 itself
2020-09-27 12:31:21 +03:00
Mark
1dea3c9e43
video: ugly hack to vastly speedup the console
2020-09-19 17:19:53 +03:00
Mark
bb5ff71a79
con: Add early vesa fbcon
2020-09-18 13:22:38 +03:00
Mark
7438ee768f
Use yboot2 (My new rust-based EFI loader)
2020-09-17 23:53:56 +03:00
Mark
53625fce71
boot: move yboot data to C struct
2020-09-08 23:54:58 +03:00
Mark
7d3a0d58dc
boot: add support for yboot protocol
2020-09-04 01:36:04 +03:00
Mark
2ff4dca8c4
acpi: add a way to early define RSDP location
2020-09-01 23:46:18 +03:00
Mark
e0f0087ccc
mman: rewrite physical memory manager
...
Better protection of reserved memory regions,
merged "pool" allocation functions into main
memory manager
2020-08-23 22:59:29 +03:00
Mark
d7f6fcec69
Add serial ttys
2020-07-29 18:54:00 +03:00
Mark
f22591ad93
Move to cmake build system
2020-07-11 22:41:23 +03:00
Mark
cdc61fc168
Increase heap size for thinkpad ACPI
2020-07-05 18:55:35 +03:00
Mark
137604d84f
Add support for text-mode console
2020-06-25 16:53:08 +03:00
Mark
dd36f0decf
(Maybe) better console subsystem
2020-06-18 16:32:01 +03:00
Mark
1f10370b87
Add (hacky) environ handling
2020-06-14 23:31:40 +03:00
Mark
6d7a3c9756
Re-enable VESA driver
2020-06-11 19:58:01 +03:00
Mark
92d2e572ae
Full support for Multiboot2 booting, remove legacy loader
2020-05-26 22:24:15 +03:00
Mark
8f3f600fa4
Add slab allocator for objects < 512B
2020-04-08 12:45:03 +03:00
Mark
3621a567a8
Move amd64_* memory functions to mm_ namespace
2020-04-07 15:13:37 +03:00
Mark
b40d495e4e
Add non-MSI IRQ functionality to PCI
2020-03-19 15:31:58 +02:00
Mark
98ac8c8379
Fix optimization issues - improperly clobbered registers and
...
optimized-out regions
2020-02-07 16:52:13 +02:00
Mark
4878a0b06e
Proper FPU init, fxsave/fxrstor for threads
2020-02-07 15:02:06 +02:00
Mark
41ae3d7aab
Fix ring reader ignoring signals and unqueuing threads twice
2020-02-05 13:28:11 +02:00
Mark
33ad8e3ee3
Fix scheduler lock not being released when handling signals
2020-02-04 23:37:57 +02:00
Mark
d9595c7f62
Change project structure
2020-02-04 12:45:15 +02:00
Mark
789a3ee1a3
[amd64] Move arch/amd64 -> sys/amd64
2019-09-23 11:40:44 +03:00
Mark
f6c29e3414
[amd64] Implement kernelspace mm_space_t cloning
2019-09-22 12:06:59 +03:00
Mark
5c7e918460
Proper kernel [kidle] thread
2019-09-20 23:07:20 +03:00
Mark
edfac823c7
[amd64] Userspace TSS/multithreading
2019-09-20 21:12:13 +03:00
Mark
b097abd8c2
[amd64] Kernelspace thread preemption
2019-09-20 13:43:58 +03:00
Mark
becf1ccc54
[amd64] amd64 vmalloc/vmfree, slight changes to map.c
2019-09-19 18:52:15 +03:00
Mark
61f9ebbdae
Add sys/types.h impl
2019-09-18 23:26:47 +03:00
Mark
fe71e36814
[amd64] Use cross-compiler toolchain instead
2019-09-18 23:22:09 +03:00
Mark
07d158f2a6
[doc] Docs on heap
2019-09-18 16:23:11 +03:00
Mark
b24297d248
[amd64] Add kernel heap
2019-09-18 15:34:59 +03:00
Mark
a5c71af69c
[amd64] Get memory map/GRUB info from loader
2019-09-17 16:37:03 +03:00
Mark
ec6005054d
[amd64] added HPET implementation
2019-09-17 14:38:17 +03:00
Mark
c659189a76
[acpi] Add support for ACPI FADT/HPET location
2019-09-16 16:10:09 +03:00
Mark
51e0ac1374
[amd64] timer configuration
2019-09-16 13:57:53 +03:00
Mark
fb396e0010
Added mm_describe
2019-09-16 13:20:59 +03:00
Mark
256171f69a
Restructure source files
2019-09-16 12:40:00 +03:00