Commit Graph

85 Commits

Author SHA1 Message Date
Matheus 94057abfaf kernel: print syscall 2023-05-07 20:36:58 -03:00
Matheus 2a0103fc46 kernel: basic elf loading 2023-05-07 20:26:21 -03:00
Matheus 8c3b2f4947 kernel: syscalls 2023-05-07 20:22:51 -03:00
Matheus ca80c22f50 x86_64 cpu: syscall instruction 2023-05-07 19:31:36 -03:00
Matheus 9c1e92831d x86-64: switch order of user code and data segments for syscall instruction 2023-05-07 17:46:26 -03:00
Matheus c1fbfe9de7 x86-64: fix user context init 2023-05-07 16:49:17 -03:00
Matheus 9ce8bd25f5 vmm: fix getting free range at edge of spaces 2023-05-07 15:08:33 -03:00
Matheus 46bbf60ce8 vmm: file mapping 2023-05-06 19:28:09 -03:00
Matheus 87313086a4 tmpfs: mmap and munmap 2023-05-06 17:51:10 -03:00
Matheus a1919e1d36 vfs: mmap and munmap 2023-05-06 17:49:50 -03:00
Matheus eed3b390e3 kernel: console 2023-05-04 22:50:53 -03:00
Matheus 0840a0c8f1 kernel: mutexes 2023-05-04 22:46:31 -03:00
Matheus ef2d8ed00c kernel: ps2kbd 2023-05-04 19:58:24 -03:00
Matheus fc64ccb7a4 apic: ioapic set irq 2023-05-04 19:57:43 -03:00
Matheus 5ddc944b29 keyboard: fix function prototype 2023-05-04 18:57:34 -03:00
Matheus 92c39645e5 kernel: initial keyboard abstraction 2023-05-04 13:55:43 -03:00
Matheus 3987e7bca6 interrupt: split setipl into raiseipl and loweripl 2023-05-04 13:52:35 -03:00
Matheus 12ee7b5e31 semaphore: fix init macro 2023-05-04 13:44:11 -03:00
Matheus 26621aeac6 kernel: ps2 initialisation 2023-05-03 22:41:16 -03:00
Matheus fc9b0f37f2 time: timespec_diffms 2023-05-03 22:41:04 -03:00
Matheus 17d4200cd4 util: abs 2023-05-03 22:40:37 -03:00
Matheus c1c84cffbb kernel: semaphores 2023-05-03 21:07:43 -03:00
Matheus 433155bb74 scheduler: sleeping support 2023-05-03 20:19:05 -03:00
Matheus b5d4fc07e2 scheduler: have a separate stack for yield 2023-05-03 19:11:40 -03:00
Matheus 393e34a04e kernel: ringbuffer 2023-05-02 21:19:44 -03:00
Matheus 768ee865a0 kernel: pseudodevices (null, full and zero) 2023-05-01 22:05:41 -03:00
Matheus b4d0d45702 tmpfs: handle devices on open 2023-05-01 21:33:02 -03:00
Matheus c80f3db385 kernel: devfs 2023-05-01 21:25:34 -03:00
Matheus 9ab2ad5095 vfs: change how the vfs_create return argument works and split the rdev vattr member 2023-05-01 19:21:39 -03:00
Matheus a30a0b1d19 cpu: remove unused header include 2023-05-01 14:14:26 -03:00
Matheus 13982e15b7 hashtable: keep track of entry count 2023-05-01 01:01:10 -03:00
Matheus ade8aa4e2b kernel: initrd unpacking 2023-05-01 00:47:01 -03:00
Matheus d90f8d0950 vfs: fix trailing slashes on lookup 2023-05-01 00:44:56 -03:00
Matheus 6d42a6f91c tmpfs: initial implementation 2023-04-30 21:14:59 -03:00
Matheus b4c98c4a47 vfs: initial implementation 2023-04-30 21:13:59 -03:00
Matheus 610fdae5e7 kernel: abi header 2023-04-30 20:55:08 -03:00
Matheus 694dcdc91e hashtable: fix FOREACH macro 2023-04-30 20:54:53 -03:00
Matheus 5a856a6b22 kernel: vfs skeleton 2023-04-29 18:56:26 -03:00
Matheus a7545ef040 kernel: hashtables 2023-04-29 18:50:35 -03:00
Matheus bdf5cfd0d5 kernel: errno abi 2023-04-29 18:49:51 -03:00
Matheus 86fdfd114f string: memcmp() 2023-04-29 18:48:41 -03:00
Matheus 1bcf8dfcf3 interrupt: set proper intstatus on isr return 2023-04-28 22:28:13 -03:00
Matheus 5d33fe828f scheduler: initial implementation 2023-04-27 23:34:57 -03:00
Matheus 16f1823897 timer: repeat support and running status 2023-04-27 23:33:55 -03:00
Matheus 06e755e36a context: misc useful macros and functions 2023-04-27 23:32:25 -03:00
Matheus 47ff33982e vmm: export vmm_kernelctx 2023-04-24 22:17:59 -03:00
Matheus 72744c19b1 timer: resume and stop 2023-04-24 22:17:35 -03:00
Matheus 0394165361 kernel: spinlocks 2023-04-23 17:12:05 -03:00
Matheus d18e0e332f kernel: initial timer abstraction 2023-04-23 16:48:58 -03:00
Matheus 5f84cdec3c interrupt: basic ipl handling 2023-04-23 15:42:39 -03:00