Matheus
c33078b9c2
kernel: misc stuff
2023-08-08 21:21:06 -03:00
Matheus
b26ed0bb18
Makefile: add mount to minimal sysroot and do changes for limine 5.0
2023-08-07 23:56:36 -03:00
Matheus
81c6897523
block: fix typo in comment
2023-08-07 21:56:24 -03:00
Matheus
536db45418
x86_64 pci: properly map ECAM and fix access to it
2023-08-07 21:30:24 -03:00
Matheus
8793ed48b8
pci: iterate over all buses
2023-08-07 20:38:08 -03:00
Matheus
bd715ac5e9
nvme: properly support versions older than 1.4
2023-08-07 20:36:01 -03:00
Matheus
ff52baf4f4
kernel: move fnv1a hash from hashtable.c to util.h
2023-08-07 20:28:07 -03:00
Matheus
c42c1d2e24
elf: add buffer at the top of stack
2023-08-07 20:01:53 -03:00
Matheus
739ce33c60
ports: update limine
2023-08-07 19:48:01 -03:00
Matheus
68be5b2e88
ports: e2fsprogs
2023-08-07 02:12:47 -03:00
Matheus
2bd2b998af
mlibc: emulate sbrk
2023-08-07 02:12:18 -03:00
Matheus
5ea1479601
ps2: mix fixes
2023-08-06 00:45:19 -03:00
Matheus
25828c17c6
x86_64 acpi: map rsdp
2023-08-06 00:44:52 -03:00
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