Commit graph

50 commits

Author SHA1 Message Date
033d85bd2f cpu: move apic to x86_64 2025-06-02 21:05:51 +02:00
edbb5d106d kernel: whatever changes i didn't keep track of lol 2025-06-01 22:45:43 +02:00
RaphProductions
b2cf9b4710 kernel: Implemented various features
+ lapic: Start implementation
+ ioapic: Start implementation
+ apic: Now properly working
+ madt: Start implementation
+ pit: Start implementation
+ smp: Start implementation (only grabs the bootstrap processor's LAPIC ID)
2025-05-20 08:29:23 +02:00
RaphProductions
dcea7360d2 vma: Implement VMA.
+ acpi: Start implementation of table lookup
+ cpu: Remove useless argument to "cpu_invalidate_page"
+ cpu (x86_64): Removed "read_cr3"
+ arch/x86_64: Replace debug with trace for GDT & IDT initialization.
2025-05-19 17:56:29 +02:00
RaphProductions
16246cc167 mm: Changes
+ vmm: Rename to "paging"
+ vma: Start implementation
2025-05-19 07:25:31 +02:00
RaphProductions
c658f738e4 vmm: Use the kernel's ELF file to map the sections (and now works!) 2025-05-18 21:45:14 +02:00
RaphProductions
875dc2685b vmm: broken vmm 2025-05-18 19:36:49 +02:00
RaphProductions
33f88512d4 vmm: brokie paging :) 2025-05-18 18:58:22 +02:00
RaphProductions
9c21f343ba pmm: implement a new form of allocator 2025-05-18 17:24:30 +02:00
RaphProductions
89bb8c8a4b kernel: add some basic features
+ feat list:
+ * gdt/idt
+ * brokie pmm
2025-05-18 15:54:12 +02:00
RaphProductions
a1e27c2730 kernel: Rewrite from scratch since the current thing is held by duct tape (lmao) 2025-05-18 09:04:25 +02:00
RaphProductions
d017412af5 kmod: prepare for kernel module loading 2025-05-17 11:51:28 +02:00
RaphProductions
30017592ad sched, interrupts: Now recovers from a userspace exception. 2025-05-17 11:36:36 +02:00
RaphProductions
0652010b1c kernel: Various changes
+ elf: Prevent dynamically linked programs from running on Soaplin.
+ sched: Support creating a process from a program_t structure.
+ syscall: Fix a bug where using syscall number 1024 would crash the OS.
+ syscall: Added a write syscall. It can only be used for writing to the standard output (FD: 1)
2025-05-17 01:26:38 +02:00
RaphProductions
1e84bcedc9 vfs - kinda good vfs implementation 2025-05-16 20:53:35 +02:00
RaphProductions
cfc9159ad9 kernel: try some shit to get the compiler to put a backtrace 2025-05-16 15:58:51 +02:00
RaphProductions
ca489e986a gdt - swap usermode CS & SS 2025-05-16 08:48:15 +02:00
RaphProductions
b2ec036055 kernel - various changes
+ vmm: higher half should not be identify-mapped
+ panic: now displays current process
+ kernel: fix physical addresses (ḑ̷̩̜̦̥̰͔̻͔̖͎̳̗̫̓̓͊́̒͜ơ̸͙͎̠͎̩̤̭̬̙͚̬̣͇̤̼̑̐̿̿͆͠͝ ̷̗̟̘͎̥̤̭̂͛͆́͂͝͠ͅN̴̨̛̥̩̺͚̺̠͙̼̙̯̱͚̫̊̐̅̀̌̏͆̋̕͜͝͠ͅö̵̪͚̞̞̜͎͉̦́́̍̀̃̋̇̄̓͊̎͝t̶̡͍̩̤̹̤̂̑̓͌͂̾̑̈́͒̾̾́͐͆͊͂ ̴̨̫̺̦̊̍̒͛͌̌͂͘̚̚͘͘͝I̶̥͚̯̖̙̩͂́͜d̸̢̡̗͉̠̹̒͠e̸̡̪̺͎͖͚̗̟̟̥͍͑̈̋̉̋̓̐̊̚͘͜n̸̡̍͐͗̈͌̀̓̃́́͠t̶̢͈͈̦̻̰͎̪̰̒̄͒̃̐͜ĩ̴͕̼̻͓͚͕̲̬̤͈̜̣̐̍́̾̀̏̏̑͒̚ͅf̷̡̨̼̻̠̠͔̪͍͛y̴͉͓̓͒̆̎̚ ̶̟͙͖̙̟͍̟͕̞̥̹͇̌̉́̑͗͋̀̕ͅͅM̷͙̬̲̓a̶̫̰̞̺̖̍̀p̶̡̨̡̗̖̹̩̫̯̞̬͋͂̏̍̾̽͜ͅ ̶̧̨̧̫͉̝̮̳͎͍̱̟̪̝̀̽͑̂̿̄̈̇̓͘Ḫ̶̨̨̗̣̪͓̺͙͈͙̀ḭ̶̧̡͇̹͙̩͍͎̮̤̦̜̻͎̞̔̐̇̉̓͒͛̅̿͊̍͆͘̕g̷͖͙͍͓̯̪̩̑̑͋̈́͌͐̊̀͝͠͝ĥ̴̢̡̫̪̟̞̭̟͕̖͎͊͑͛̆͝e̴̡̨̗̱̱͙͔̻̤͎͆̒̾̾̓̈͊̓ͅr̵̛͈̩͍̔̌̃̇͊̽̀̉̽̊͌̿́ ̷̨̡̛̩̹̹̇̇̈́̑̍̊͒̄́͛H̷̨̪̜̤͍̻͎̲̜͋́̆͋̂̚͘͘͜͠ą̷̠͓̫̲́́̽̉̒͌́̓ͅl̴̢̛͈̤̺̱̙̬̆̎̄̊̈́̐̾̏̿̕f̸̢̰͓̦̺̰̯͚̣̙͔̺̂͜͜)
2025-05-16 08:01:37 +02:00
RaphProductions
a8e919b033 kernel - v0.7 beta
+ acpi: add acpi support
+ lapic: add lapic support
+ ioapic: add ioapic support
+ arch/x86_64: add support for "syscall"/"sysret"
2025-05-15 18:49:09 +02:00
RaphProductions
4d52bac946 acpi - start implementing acpi 2025-05-14 20:32:26 +02:00
RaphProductions
31e53e88b9 kernel - whatever 2025-05-14 18:15:15 +02:00
RaphProductions
0772a48c29 kmain - fix a missing include 2025-05-13 11:24:20 +02:00
RaphProductions
6a77b066e8 vfs - start making the VFS 2025-05-12 22:26:19 +02:00
RaphProductions
8b75d8d5e6 readme: Add some basic building instructions 2025-05-12 13:33:52 +02:00
RaphProductions
8fb363f831 gitignore - added "compile_commands.json" 2025-05-12 10:31:26 +02:00
RaphProductions
3461dcb1ed rtc - try implementing RTC / kernel: removed rt from the codebase (released separately) 2025-05-12 10:24:48 +02:00
RaphProductions
6af9752e24 kernel: now panics since there's no init 2025-05-12 08:53:17 +02:00
RaphProductions
a838d99a5a kernel: various changes.
+ kernel: replace sk-hello test executable with a test initramfs
+ panic: start implementing a proper kernel panic screen
+ lib: added a new string.h library for string manipulation.
+ kernel: replace all the strlen implementations with the strlen() function
2025-05-11 23:54:14 +02:00
RaphProductions
7fb04f134b repo: Added contributing guidelines. 2025-05-11 18:43:28 +02:00
RaphProductions
3bbc916ffd kernel: Prepare for v0.1-pre 2025-05-11 18:37:15 +02:00
RaphProductions
6e77fbc323 sched: fix a dumb stack bug inside the scheduler 2025-05-11 17:29:59 +02:00
RaphProductions
5168cfa4e1 vmm: debug user code page fault 2025-05-11 15:35:45 +02:00
RaphProductions
a379d66784 makefile: introduce a format command to run clang-format all over the kernel source. 2025-05-11 11:45:04 +02:00
RaphProductions
c4e98f5ef2 repo: delete gnu ELF header (used as a reference to build the elf.h header) 2025-05-09 21:08:53 +02:00
RaphProductions
287a7fb312 ugh 2025-05-09 17:20:58 +02:00
RaphProductions
f27e0a240c fixing pf, again 2025-05-09 16:01:25 +02:00
RaphProductions
4309b666a4 try to fix page fault 2025-05-09 15:07:22 +02:00
RaphProductions
105a10aba3 readme: update to reflect repo changes 2025-05-09 12:20:52 +02:00
RaphProductions
5afe37a798 elf: working loader / syscall: introduce the syscall api. 2025-05-09 12:19:32 +02:00
RaphProductions
2d4031eacc kernel: add support for running without any framebuffer 2025-05-08 22:12:56 +02:00
RaphProductions
17e6219f24 log, printf: fix missing "rt.h" include 2025-05-08 21:58:31 +02:00
RaphProductions
621f268f5b term: depreciate rt, and switch to flanterm 2025-05-08 21:57:31 +02:00
Raphaël
020d4f092f
Merge pull request #1 from KevinAlavik/main
vmm: Fixed some issues regarding creating new page map levels
2025-05-08 19:25:38 +02:00
6488abfcba
fix: Fixed some issues regarding creating new page map levels 2025-05-08 19:22:40 +02:00
RaphProductions
442b26df09 ssfn: try making normal renderer work (i hope google won't dmca this for adding noto inside lol) 2025-05-08 19:01:37 +02:00
RaphProductions
a6f371b4ad elf: start writing elf loader 2025-05-08 15:17:13 +02:00
RaphProductions
175805604e kernel: some random modifications 2025-05-07 22:12:35 +02:00
RaphProductions
e6a2c1e240 kernel: Patches to run processes in Ring 3. 2025-05-07 13:14:18 +02:00
RaphProductions
8f6399e309 delete leftovers 2025-05-06 20:21:28 +02:00
RaphProductions
cab7a75780 first commit 2025-05-06 20:19:48 +02:00