Commit Graph

351 Commits

Author SHA1 Message Date
Matheus 30851d4971 ports: tar and xz 2023-08-02 21:27:24 -03:00
Matheus 245da66fc3 vmm: make fork use copy-on-write 2023-08-02 19:55:53 -03:00
Matheus 5fad76e39e pipefs: fix wrong vnode type 2023-08-02 19:52:49 -03:00
Matheus 7e1443d032 vmm: copy on write and changes to how page faults are handled 2023-08-02 01:18:35 -03:00
Matheus 55fc1b7026 pmm: full rewrite
I've decided to do a rewrite on it due to some plans that would make refcounting physical pages nescessary among other things. now instead of a bitmap it uses a list of pages with each physical page having a page_t associated with it
2023-07-29 17:14:41 -03:00
Matheus 8ca2360991 vmm: add a pflock mutex to synchronize pagefaults 2023-07-26 22:47:00 -03:00
Matheus f5c5b01d85 vmm: use mutexes 2023-07-26 21:39:06 -03:00
Matheus 49eef0e04c vfs: use mutexes for locking 2023-07-26 20:29:40 -03:00
Matheus d77d7b9b3e gcc: add binutils dep 2023-07-26 00:21:24 -03:00
Matheus ab129f6596 init: run /etc/rc on boot 2023-07-26 00:21:07 -03:00
Matheus dcaa20ae9c mount syscall and simple mount program 2023-07-26 00:20:45 -03:00
Matheus 755fd1a8d1 scheduler: don't depend on devfs being mounted 2023-07-26 00:17:29 -03:00
Matheus c4bdf020f4 kernel: mount root using commandline arguments 2023-07-26 00:17:14 -03:00
Matheus ddaf8b2efd kernel: cmdline parsing 2023-07-26 00:15:40 -03:00
Matheus 294e12b360 ext2: ASSERT_UNCLEAN macro and do some TODOs 2023-07-25 19:35:48 -03:00
Matheus c1aa09eade kernel: misc fixes 2023-07-25 19:02:59 -03:00
Matheus 6653b01e23 devfs: getbyname() 2023-07-25 18:45:10 -03:00
Matheus 9d1beb2807 ext2: mmap, munmap, unlink and inactive 2023-07-25 18:44:38 -03:00
Matheus d59b7c40aa syscalllog: fix unlinkat parameters 2023-07-25 18:42:59 -03:00
Matheus a1d9259ed9 init: fix possible dereference of null pointer 2023-07-25 18:42:43 -03:00
Matheus cb235ae3cc mmap: fix file mappings 2023-07-25 18:42:12 -03:00
Matheus 06e0c9634e ext2: link and create 2023-07-24 22:34:01 -03:00
Matheus 49682e2bf4 ext2: inode set block, inode resize, ext2_write and ext2_resize 2023-07-24 19:43:44 -03:00
Matheus 98c642c6ec ext2: change allocateblock to work with inodes and add freestructure 2023-07-23 23:44:25 -03:00
Matheus 29b5af0d52 ext2: block allocation 2023-07-23 23:09:09 -03:00
Matheus 28247888c5 ext2: readonly support 2023-07-23 14:13:02 -03:00
Matheus 568962929b kernel: barebones ext2 implementation (setattr, getattr, lookup and getdents) 2023-07-23 01:09:44 -03:00
Matheus a3da864de8 memory management: add more protection against corruption 2023-07-23 01:06:22 -03:00
Matheus 6c3164c958 nvme: fix submission queue size 2023-07-23 01:01:33 -03:00
Matheus df89cc1c63 open: fix no out of memory check 2023-07-23 00:58:10 -03:00
Matheus c1e7ef84ce block: ioctl, read and write 2023-07-20 20:42:02 -03:00
Matheus 09ad42eb04 nvme: register block and fix insert semaphore 2023-07-20 14:27:39 -03:00
Matheus f30f41a28c kernel: block abstraction and partition table parsing 2023-07-20 14:27:23 -03:00
Matheus ac8cdfb2f3 scheduler: add yield after halt in cpuidlethread 2023-07-20 14:24:52 -03:00
Matheus b0f12deff8 nvme: basic read/write 2023-07-19 20:20:41 -03:00
Matheus 9321e236b1 util: fix log2 2023-07-19 20:20:12 -03:00
Matheus 5c9ff26b90 nvme: command submission and creation of I/O queues 2023-07-19 15:12:25 -03:00
Matheus 8f0b318238 CPU: EOI macro 2023-07-19 15:10:24 -03:00
Matheus 6ff6f3c8b4 util: min 2023-07-19 15:10:14 -03:00
Matheus 92e43787b8 interrupt: disk IPL and INTERRUPT_IDTOVECTOR macro 2023-07-19 15:09:12 -03:00
Matheus 1879bfcc20 pci: msi-x support 2023-07-19 15:08:51 -03:00
Matheus 5e85429c5e nvme: controller initialization 2023-07-16 21:44:30 -03:00
Matheus f31071371b pci: pci_setcommand and pci_mapbar 2023-07-16 21:44:02 -03:00
Matheus cf858a87fc util: ilog2 2023-07-16 21:43:22 -03:00
Matheus f3714b83c8 x86_64 mmu: cache flags 2023-07-16 21:43:07 -03:00
Matheus 6491d1bd52 pci: pci_getenum, pci_getcapoffset and finding msi and msix on function enumeration 2023-07-15 18:02:17 -03:00
Matheus d202e152db tmpfs: fix use of nonzero'd memory 2023-07-15 14:22:16 -03:00
Matheus 14d6b4249d pci: device enumeration with MCFG and legacy access 2023-07-13 22:52:44 -03:00
Matheus 854eaf4b1c acpi: mcfg table 2023-07-13 22:52:17 -03:00
Matheus fe0b2c7b7f distro files: fix etc profile 2023-07-11 23:22:10 -03:00