Commit Graph

299 Commits

Author SHA1 Message Date
Matheus cc59678fc4 keyboard: fix poll missing an argument 2023-01-01 12:20:19 -03:00
Matheus a7aa6fbdfd syscalls: syscall_threadexit 2023-01-01 10:49:15 -03:00
Matheus d5c65a749f scheduler: fix thread array stuff and fix stupid thing 2023-01-01 10:37:24 -03:00
Matheus 76435ad9a1 waitpid: remake the thread deallocation loop and fix a few stupid mistakes 2023-01-01 10:30:15 -03:00
Matheus 814ee1f69a scheduler: dequeue takes a state argument and releases a threadexit lock 2022-12-31 19:52:19 -03:00
Matheus bbcda47dcd syscalls: new thread syscall 2022-12-31 18:17:20 -03:00
Matheus 2a5fdd86f5 scheduler: getnextpid() and fix tid not being assigned properly to new threads 2022-12-31 18:16:52 -03:00
Matheus 5d62629d6f futex: fix issues that prevented it from working properly 2022-12-31 18:15:46 -03:00
Matheus 2f28713dae scheduler: lock proc when adding a new thread 2022-12-31 12:56:32 -03:00
Matheus 5ea50fee28 sched: use THREAD_DEFAULT_KSTACK_SIZE rather than hardcoding 10*PAGE_SIZE 2022-12-31 01:12:13 -03:00
Matheus 6d073b850e kernel: commandline support 2022-12-30 03:28:30 -03:00
Matheus 23f2ef05b9 kernel: env support 2022-12-30 03:28:06 -03:00
Matheus bc7906bde4 hashtables: isset() 2022-12-30 03:26:57 -03:00
Matheus 7e975a3837 add a function that gets called after every system call and make all threads quit on program exit 2022-12-25 15:46:37 -03:00
Matheus 0cf4287719 syscalls: fix issue with poll 2022-12-24 13:21:40 -03:00
Matheus f882b1ad10 syscalls: make more system calls use ustring functions 2022-12-23 21:37:14 -03:00
Matheus 1ead72d897 syscalls: make a bunch of system calls use the new user memory operations 2022-12-15 10:19:58 -03:00
Matheus 30dd3d6ca3 ustring: more functions 2022-12-15 09:22:32 -03:00
Matheus caa87bff4e u_strlen: fix it not looping 2022-12-15 08:00:54 -03:00
Matheus ce474c670b vmm: dealwithrequest returns an errno rather than a bool 2022-12-13 23:43:26 -03:00
Matheus 881acb984d x86_64 interrupts: gpf isr and add support for the user safe memops 2022-12-13 23:42:50 -03:00
Matheus c17a2f4c6c kernel: user safe strlen 2022-12-13 23:41:40 -03:00
Matheus 9fc62579ea pci: msi stuff 2022-11-24 19:16:37 -03:00
Matheus 8e481f5d91 pci: legacy_write and pci_setcommand 2022-11-24 18:43:02 -03:00
Matheus a0b0217856 nvme: controller initialization 2022-11-24 18:28:00 -03:00
Matheus b64edd7765 math.h: intpow 2022-11-24 18:27:37 -03:00
Matheus 05439a4e3b nvme: detection 2022-11-22 13:38:02 -03:00
Matheus a7b5a775fa pci: helper functions and a fix in get_devicecs() 2022-11-22 13:37:42 -03:00
Matheus 715ecb7140 Makefiles: fix several bad OBJPATHs 2022-11-21 20:20:43 -03:00
Matheus 8d8b319319 sched: handle thread death in a less hacky way 2022-11-21 20:12:47 -03:00
Matheus e550d94c91 vmm: fix request edge case in multithreaded applications 2022-11-21 20:02:01 -03:00
Matheus 33f5a3d674 pci: fix allocating enumerations and add a way to get enumerations 2022-11-21 19:59:02 -03:00
Matheus 51c6aebf35 x86_64 regs: func to get stack pointer 2022-11-20 20:13:26 -03:00
Matheus d2c89f01e6 scheduler: sched_die() and new thread state 2022-11-20 20:13:07 -03:00
Matheus fcbce08dd2 x86_64 syscall: fix comment 2022-11-20 20:12:39 -03:00
Matheus 75491f602f x86_64 interrupts: push interrupt numbers and also add an isr for #NM 2022-11-20 20:12:06 -03:00
Matheus cf3c200863 Makefile: add USE_E9 to the preprocessor flags and make the relevant files understand it 2022-11-04 16:02:29 -03:00
Matheus 62f51d638f x86_64: e9out device 2022-11-04 15:48:17 -03:00
Matheus f85f79f223 keyboard: poll 2022-10-27 18:21:46 -03:00
Matheus d64dc8f5b6 syscalls: open: fix create not being in relation to dirfd 2022-10-26 21:44:09 -03:00
Matheus 1d28e68aa2 syscalls: waitpid: fix possible null pointer dereference 2022-10-26 21:43:46 -03:00
Matheus 9dd308599b devman and vfs: check if a function is not implemented before calling 2022-10-25 19:27:47 -03:00
Matheus 8356c27239 syscalls: recvmsg and futex system calls 2022-10-24 15:44:01 -03:00
Matheus a9a15e04bf fd: have iovec be inside fd.h 2022-10-24 15:42:21 -03:00
Matheus 91a314a298 socket: add msghdr to header and fix backlog issue 2022-10-24 15:41:48 -03:00
Matheus 763ea89e83 vfs: expect fd argument to a few calls 2022-10-24 15:40:55 -03:00
Matheus 72504f3598 vmm: vmm_tophyical() 2022-10-24 15:37:37 -03:00
Matheus 6db1cfe81d sockets: expect fd argument 2022-10-24 15:36:46 -03:00
Matheus 9815b8b06d fcntl: properly handle F_SETFL now 2022-10-24 15:35:33 -03:00
Matheus d8fedecc8f fork: fix new thread's tid not being set 2022-10-24 15:35:13 -03:00