Commit Graph

170 Commits

Author SHA1 Message Date
25cb309105 Implement an ATA driver, Add vfsmount/vfsunmount syscalls 2025-10-14 00:39:59 +02:00
cb9e15330e Increate kernel stack size 2025-10-12 19:02:41 +02:00
ee93463c64 Add rand() syscall 2025-10-11 21:54:06 +02:00
d92a652024 Make uniqids truly random 2025-10-11 21:36:50 +02:00
b717387adb Implement random number generation with x86 rdrand 2025-10-11 21:36:33 +02:00
02a5d8b418 Move printf to root of project 2025-10-11 20:37:42 +02:00
6b0e05e506 Expose storedevs to the outside world via dev interface 2025-10-11 02:35:15 +02:00
3996f71316 Initialize devices before storedev_init() 2025-10-08 19:34:15 +02:00
0ac80c76b0 devctl commands for getting device info 2025-10-08 19:32:37 +02:00
49cebd277c back to old default colors 2025-10-08 19:03:30 +02:00
a1ec132d09 PS2KB fix mapping KB_HOME 2025-10-06 23:07:34 +02:00
cdfb1e39c0 Move serial driver code to kernel/dev 2025-10-05 19:50:42 +02:00
e9838d530f Rearchitecture PS2KB driver using event buffers 2025-10-05 19:48:15 +02:00
247ef1bbd1 Add fbdev for getting framebuffer information 2025-10-05 15:56:16 +02:00
933083ffeb HAL clean up, remove uACPI 2025-10-05 00:13:38 +02:00
70d6931e3b Use shared macros for dev function IDs 2025-10-04 21:34:48 +02:00
acbf051dbc New rewritten serial driver + dev interface 2025-10-04 21:31:45 +02:00
0117080b61 Remove bcast pipes 2025-10-04 14:43:24 +02:00
26517e8e28 ioctl() IOCTL_MKDIR command, vfs_mkdir() 2025-10-04 01:38:41 +02:00
b72f3ee00d fix schedrelease() syscall 2025-10-04 01:12:03 +02:00
04a4b1395c Store devices as a hashtable 2025-10-03 23:47:58 +02:00
18d646ff8b Rewrite the kernel hashtable struct 2025-10-03 23:22:22 +02:00
20b4545cae Fix minor warnings 2025-10-03 22:41:38 +02:00
fc47ff581e littlefs_fetchdirent() fix missing return statement 2025-10-03 22:34:32 +02:00
57ba9ff126 Store device structs in a dynamic list 2025-10-03 22:25:16 +02:00
c30d2d2ea6 Remove conversions between VfsStat struct and IoctlStat struct 2025-10-03 19:55:14 +02:00
443cf0e4ff Fetching directory entries 2025-10-03 19:50:10 +02:00
de20efa0f3 vfs Rewrite IOCTL_STAT so that it doesnt require an already open handle 2025-10-03 01:00:09 +02:00
2cfd3ee2fa ioctl() IOCTL_STAT use path instead of already open io handle 2025-10-02 23:57:38 +02:00
0e4a35eb86 ipcpipe Add pipe ownership guards 2025-10-01 19:57:09 +02:00
4e8afae5fb all procs are user procs 2025-09-29 21:32:07 +02:00
20a89502c0 Remove kernel procs 2025-09-29 21:27:46 +02:00
8db585f581 new terminal theme 2025-09-28 23:51:17 +02:00
d7562b98c1 Rewrite PS2KB using the new devctl interface 2025-09-28 23:25:43 +02:00
3b1bb9d531 WIP 2 2025-09-27 15:16:26 +02:00
5af7c5276a kernel Use canonical addresses for proc mmap base and stack top 2025-09-22 16:19:16 +02:00
397379bca3 Rework requesting process arguments 2025-09-21 22:50:39 +02:00
475f77d30f Rewrite LL_* (link list) macros 2025-09-21 18:32:22 +02:00
83a28bd25b Clean up HAL VMM 2025-09-21 13:26:05 +02:00
3f2c35f4cb Fix dlmalloc pointer port _last ptr alignment 2025-09-20 20:48:08 +02:00
0c65bd9891 Rewrite ps2kbproc, rbuf (kernel ring buffer) and pipe read/write, Change to -O0 in kernel code 2025-09-20 16:50:40 +02:00
3f0231be3f tb Don't schedrelease() when reading in-pipe 2025-09-20 10:38:36 +02:00
a1b3d4efa4 TODO figure out why schedrelease() messes with terminal proc's ring buffer 2025-09-20 01:19:20 +02:00
8269e097d6 spinlock only restore RFLAGS IF flag 2025-09-20 00:55:18 +02:00
dcc68154b2 Make syscalls accept their interrupt frame, remove useless intr_eoi() param 2025-09-20 00:28:28 +02:00
81dc694a23 schedrelease() don't schedule if current interrupt frame is NULL 2025-09-19 23:48:30 +02:00
1b5701a659 schedrelease() syscall for more efficient spinning 2025-09-19 23:38:08 +02:00
2c0d50a401 pctl Display memory usage and process state 2025-09-19 22:38:39 +02:00
1af0d1f5bc Use uint8_t for keyboard chars 2025-09-19 21:00:33 +02:00
c364dca5e5 Change terminal font and colors 2025-09-19 20:40:17 +02:00