Commit Graph

  • 0fa750223d makefile: fix initrd not being built Matheus 2022-09-15 18:09:39 -03:00
  • fa37e32ed9 build: use jinx in the build system Matheus 2022-09-15 17:47:05 -03:00
  • 9e1ae1ff36 smp: use alloc instead of pmm_hhdmalloc to allocate ap cls Matheus 2022-09-13 20:31:20 -03:00
  • c8dc4ae76b ps2kbd: assume it exists Matheus 2022-09-13 20:30:29 -03:00
  • 5e92b8cabd mmu: add pause instruction while waiting for other cpus to invalidate page Matheus 2022-09-13 20:28:28 -03:00
  • e7517468c7 syscalls: fstat Matheus 2022-09-12 10:48:19 -03:00
  • 4111cf8489 mmu: fix page invalidation on flag change Matheus 2022-09-12 10:22:25 -03:00
  • c04fd71e1e Revert last commit Matheus 2022-09-12 09:57:45 -03:00
  • 625eab5526 scheduler: fix to an extremely weird bug Matheus 2022-09-11 22:25:32 -03:00
  • 81f414f7c0 elf: fixed silly issues Matheus 2022-09-11 22:23:26 -03:00
  • 3e539b83f9 mmu: make sure a few constants are 64 bit Matheus 2022-09-11 22:23:04 -03:00
  • f423acaedd x86_64 isr: don't rely on the value of rbp Matheus 2022-09-11 14:41:02 -03:00
  • 1000482a7e Makefile: more ways to run astral Matheus 2022-09-11 14:40:31 -03:00
  • 0e70f0a7fa scheduler: remove debugging code Matheus 2022-09-11 12:54:08 -03:00
  • b3f0ca7cd6 vmm: properly release lock on request failure Matheus 2022-09-11 12:53:41 -03:00
  • 6c681a71d6 mmu: invalidate on flags change Matheus 2022-09-11 12:52:59 -03:00
  • 51a36c6c12 syscalls: libclog: made it use the console interface Matheus 2022-09-09 18:19:43 -03:00
  • 42b119d624 consoledev: keyboard input and better sync Matheus 2022-09-09 18:19:23 -03:00
  • 001f387363 vmm: update thread ctx on context change Matheus 2022-09-09 18:18:47 -03:00
  • 2848544ff0 scheduler: a bunch of fixes and a few changes Matheus 2022-09-09 18:18:22 -03:00
  • 511c249b13 ps2kbd: fix arguments to keyboard_packet Matheus 2022-09-09 18:14:44 -03:00
  • 417c46c040 spinlock: try and acquire func Matheus 2022-09-09 18:14:14 -03:00
  • b8c3a7aebc interrupts: halt Matheus 2022-09-09 18:13:57 -03:00
  • 72bc0fabc1 x86_64 context: fix gs not being swapped properly Matheus 2022-09-09 18:13:45 -03:00
  • c91e3cd12d ps2kbd: initial implementation Matheus 2022-09-08 17:58:19 -03:00
  • d63b9512e7 apic: add option to mask or not legacy irqs Matheus 2022-09-08 17:57:23 -03:00
  • a319c1ebcc IO: fix missing headers Matheus 2022-09-08 17:14:14 -03:00
  • f643cddd05 APIC: legacy irq stuff Matheus 2022-09-08 17:13:51 -03:00
  • 2586acc14f keyboard: stub Matheus 2022-09-07 16:11:24 -03:00
  • 2f691d8051 ringbuffers: initial implementation Matheus 2022-09-07 15:00:45 -03:00
  • ad182d3872 events: finish implementation Matheus 2022-09-04 18:01:09 -03:00
  • 4c0ee7179e scheduler: yield Matheus 2022-09-04 17:40:53 -03:00
  • 20249b07b2 Events: stub Matheus 2022-09-04 14:44:12 -03:00
  • 2f8c8fc8e3 ELF: don't change the cpu context Matheus 2022-09-04 14:42:59 -03:00
  • 5127ce9217 x86_64 syscalls: enable interrupts after loading sane state Matheus 2022-09-03 13:13:07 -03:00
  • 33e6f26415 interrupts: disable and enable abstraction Matheus 2022-09-02 12:06:41 -03:00
  • e99142e3ea Makefile: make sure iso folder exists Matheus 2022-08-29 00:25:54 -03:00
  • 1bef1e3dee syscalls: stat: make return values sane and fix check Matheus 2022-08-29 00:22:22 -03:00
  • cd8b9ae1e6 vfs: break traversal at separator only filename Matheus 2022-08-29 00:21:56 -03:00
  • 13a6618041 ELF: make sure stack is always 16 byte aligned Matheus 2022-08-28 23:52:17 -03:00
  • 3066fdbb4f syscalls: stat: add another case that returns EFAULT Matheus 2022-08-28 22:44:37 -03:00
  • 56bee8be77 VFS: dot entries Matheus 2022-08-28 16:28:11 -03:00
  • 54d9c3d809 vfs: very basic locking Matheus 2022-08-27 21:12:50 -03:00
  • a40cda2b50 idt: have interrupts be disabled before swapgs Matheus 2022-08-27 21:05:03 -03:00
  • 06e91be62e syscalls: read: seek on read Matheus 2022-08-27 20:29:25 -03:00
  • 6d4439ee2f tmpfs: set error to 0 on read Matheus 2022-08-27 20:28:09 -03:00
  • edba446ba4 ELF: refactor loader Matheus 2022-08-27 20:27:14 -03:00
  • 023937809d bugfixes, change types.h to be linux abi, stat system call Matheus 2022-08-23 19:44:18 -03:00
  • 9c6ce452f8 /dev/console Matheus 2022-08-20 15:15:10 -03:00
  • f7e5b5ba67 proper limine terminal interface Matheus 2022-08-20 14:16:26 -03:00
  • df9977b7db make pagealloc zero memory Matheus 2022-08-20 13:26:31 -03:00
  • bd94ce8134 write system call Matheus 2022-08-20 13:01:26 -03:00
  • b3b5981f7a isatty syscall Matheus 2022-08-20 12:18:54 -03:00
  • fce640c0f9 sse support Matheus 2022-08-20 11:58:05 -03:00
  • 1ed7aafa46 properly zero memory on demand paging and mmap Matheus 2022-08-20 00:01:54 -03:00
  • c9762db4cc fix errorless exception handling Matheus 2022-08-19 22:54:22 -03:00
  • fc7986e5be close syscall Matheus 2022-08-19 22:54:07 -03:00
  • 9e3f0b5c3f arch_ctl fsbase Matheus 2022-08-19 22:53:08 -03:00
  • f04d4b5a31 page allocator for alloc() Matheus 2022-08-19 22:11:06 -03:00
  • af3e62d37c syscall_mmap() bugfix Matheus 2022-08-19 20:33:44 -03:00
  • d8d5f44d8e lseek syscall Matheus 2022-08-19 20:26:37 -03:00
  • 6350621f7d read syscall Matheus 2022-08-19 20:04:01 -03:00
  • 098b2f5691 open syscall Matheus 2022-08-19 19:01:59 -03:00
  • 1d3405ba10 file decriptors Matheus 2022-08-19 18:01:32 -03:00
  • 4de0ff2556 gettid syscall, fix issues with vmm and mmap syscall Matheus 2022-08-18 22:12:51 -03:00
  • da99da2b36 arch_ctl syscall Matheus 2022-08-18 20:42:03 -03:00
  • 0984a6458d fix several issues relating to elf and registers and add mmap Matheus 2022-08-18 17:50:34 -03:00
  • fc6d0000c5 added auxv to elf stack setup Matheus 2022-08-16 22:06:18 -03:00
  • df2e7b1c34 fix stupid bugs Matheus 2022-08-16 20:37:45 -03:00
  • 7a540ca1e1 fix elf stack issues and interrupt gsbase stuff Matheus 2022-08-16 19:12:16 -03:00
  • 432e85b837 system calls Matheus 2022-08-15 21:52:57 -03:00
  • 21e6a0ad1a enable syscall instructions Matheus 2022-08-15 13:50:46 -03:00
  • 261d7d3743 elf loading and userland Matheus 2022-08-14 20:19:38 -03:00
  • 33a516a611 user thread/process and elf loader stub Matheus 2022-08-13 23:16:34 -03:00
  • e7f4245c6d kernel threads Matheus 2022-08-13 14:00:26 -03:00
  • ac5339453b per cpu timer queue Matheus 2022-08-12 22:11:59 -03:00
  • ab2bd69481 semaphores Matheus 2022-08-12 16:35:27 -03:00
  • c565bc006f apic ipis, scheduler stub, crappy and slow tlb shootdown Matheus 2022-08-09 23:53:39 -03:00
  • b2d8e5a166 devman initial implementation Matheus 2022-08-07 17:53:31 -03:00
  • 7ec69a219c devfs initial implementation Matheus 2022-08-07 16:38:08 -03:00
  • bdc19f90ef vfs and tmpfs read Matheus 2022-08-07 13:13:42 -03:00
  • 1a2486cadd scheduler timer Matheus 2022-08-07 12:50:17 -03:00
  • 50243cc540 fix stupid pmm glitch and compilation failure Matheus 2022-08-07 00:36:50 -03:00
  • c94368bbc9 initial hpet support Matheus 2022-08-06 23:51:10 -03:00
  • a69310a03c PCI enumeration Matheus 2022-08-06 21:34:52 -03:00
  • dee3fe16db initialise the APs Matheus 2022-08-06 14:56:31 -03:00
  • fa1b35bf18 basic apic + fix some stupid issues Matheus 2022-08-05 23:33:54 -03:00
  • 592133af39 ACPI tables support Matheus 2022-08-05 17:27:01 -03:00
  • ea8f21fb71 add tmpfs writing, vfs node tree dumping and fix some stupid issues Matheus 2022-08-04 20:18:57 -03:00
  • 479c51ec52 Initrd parsing and more VFS funcs. Matheus 2022-08-04 19:31:10 -03:00
  • 28710b6aa8 Fix a few issues Matheus 2022-08-04 19:28:20 -03:00
  • 947f4b4a06 initrd stub Matheus 2022-08-03 23:38:56 -03:00
  • 6ae75a9e99 create and mkdir funcs Matheus 2022-08-03 22:05:11 -03:00
  • 2419b2e9e0 vfs filesystem mounting Matheus 2022-08-02 22:14:32 -03:00
  • 8d90e27f15 hashtable entrycount Matheus 2022-08-02 21:44:27 -03:00
  • 3653e01505 hashtable_set() Matheus 2022-07-31 14:18:13 -03:00
  • 151235694d VFS stub Matheus 2022-07-30 22:51:07 -03:00
  • 0fcb602574 hashtable_destroy() Matheus 2022-07-29 20:57:08 -03:00
  • f8d0c13520 hashtables Matheus 2022-07-29 18:27:50 -03:00
  • a398c0b523 fix weird git bug Matheus 2022-07-29 17:05:36 -03:00