Mark
02136a28b5
boot: use multiboot2 symbol table
2020-09-20 13:49:18 +03:00
Mark
1dea3c9e43
video: ugly hack to vastly speedup the console
2020-09-19 17:19:53 +03:00
Mark
f9eb40dbfb
cpu: properly reload segment registers after lgdt
2020-09-19 17:18:39 +03:00
Mark
5f7b6e2cee
debug: Revert to old debug method
2020-09-18 14:23:20 +03:00
Mark
f3ab428d86
boot: remove unnecessary while(1);
2020-09-18 14:22:55 +03:00
Mark
0227400824
io/ahci: disable AHCI driver (broken on Ryzen build)
2020-09-18 14:22:26 +03:00
Mark
90e5d243be
irq: fix I/O APIC problem for Ryzen systems
2020-09-18 14:21:55 +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
fa743391a4
Remove old yboot
2020-09-17 23:43:24 +03:00
Mark
e91101d79e
Bump yboot version
2020-09-08 23:56:36 +03:00
Mark
53625fce71
boot: move yboot data to C struct
2020-09-08 23:54:58 +03:00
Mark
ab3b3afcc5
boot: fix (?) memory corruption problems with EFI
2020-09-06 20:46:27 +03:00
Mark
559e1156f1
boot: extract yboot initrd pointer
2020-09-05 02:19:39 +03:00
Mark
c3f23032f0
boot: yboot protocol change: memory map
...
Memory map is now a part of boot protocol structure.
The change was caused by UEFI placing this boot structure
(as part of yboot's data section) very high in physical memory,
above kernel's mapped 4GiB range, so kernel had no way of
accessing it. It's not the best solution, but will work for sure.
2020-09-05 02:08:52 +03:00
Mark
fb7e385a05
mman: (fixme?) hack to prevent memory corruption
2020-09-05 00:56:28 +03:00
Mark
7d3a0d58dc
boot: add support for yboot protocol
2020-09-04 01:36:04 +03:00
Mark
0d39253c1e
boot: get RSDP address from multiboot2
2020-09-01 23:47:55 +03:00
Mark
158c181c54
mman: allow CoW to fork pages when accessing from kernel
2020-09-01 23:47:03 +03:00
Mark
2ff4dca8c4
acpi: add a way to early define RSDP location
2020-09-01 23:46:18 +03:00
Mark
d91a9114c7
fs: add readlink() feature to per-process links
2020-09-01 19:19:26 +03:00
Mark
d83b93075c
fs: add umask to vfs_ioctx
2020-09-01 18:07:19 +03:00
Mark
074862b9ee
api/io: readlinkat
2020-08-30 12:44:22 +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
76ee873cb4
ext2: add lseek and L2 read support
2020-08-23 13:26:24 +03:00
Mark
b6e47c5154
Use off_t for struct stat st_size
2020-08-23 13:23:53 +03:00
Mark
d6f40d482a
Reenable MSI handler
2020-08-23 13:22:56 +03:00
Mark
4f1ff91e17
Add dumb module unloading
2020-08-20 17:29:43 +03:00
Mark
8ced5eb98d
Simplify headers a bit
2020-08-11 17:00:14 +03:00
Mark
887ffb7e53
Symbol tables, references to other mods, dependency checks
2020-08-11 01:32:03 +03:00
Mark
4ae2adb6df
(Proof-of-concept) module support
2020-08-10 23:56:45 +03:00
Mark
b40a1692ba
Remove old module loading code
2020-08-10 01:31:07 +03:00
Mark
66bb54d8cd
Fix user headers (time_t)
2020-08-09 15:32:08 +03:00
Mark
44a3dc21b4
ext2: add (kind of) unlink() for ext2
...
"kind of" == directories aren't resized and overall
space handling is crappy
2020-08-09 01:53:22 +03:00
Mark
ffc05b30c4
ext2: use slab cache for inode structs
2020-08-08 01:06:06 +03:00
Mark
d032356a89
ext2: node creation, mkdir()/creat()
2020-08-08 00:59:27 +03:00
Mark
68727654d0
ext2: block alloc/free, write up to L1 size
2020-08-07 17:24:05 +03:00
Mark
658cbf2609
Update defconfig
2020-08-07 13:02:29 +03:00
Mark
d0af6bbee5
Move confign to defconfig
2020-08-07 13:01:24 +03:00
Mark
236f4e5bf5
Cleanup kernel options a bit
2020-08-07 12:53:58 +03:00
Mark
8a21e8bf75
Add (pretty PoC) shared memory primitives
2020-08-07 12:05:58 +03:00
Mark
d25e672139
Change debug_trace signature for more safety
2020-08-07 12:04:03 +03:00
Mark
2b095c9b76
ICANON is a lflag!
2020-08-05 01:58:52 +03:00
Mark
9b4d3b2f7a
Add atoi()
2020-08-05 01:58:40 +03:00
Mark
894c2de44c
Support for select() on Unix sockets
2020-08-05 01:58:21 +03:00
Mark
3cea8101fd
Add mknod to ramfs
2020-08-05 01:57:50 +03:00
Mark
029e25dbbe
(For now) enable unix sockets/net/display
2020-08-05 01:57:24 +03:00
Mark
415fd613a2
Add framebuffer devices to /dev and mmap() for them
2020-08-05 01:54:13 +03:00
Mark
25f0a0987f
Add ability to set debug levels from sysfs
2020-08-05 00:41:32 +03:00
Mark
dcc09d00c2
Allow use of MAP_FIXED flag to specify mem ranges
2020-08-02 00:44:48 +03:00