Commit Graph

294 Commits

Author SHA1 Message Date
Mark 071c37fce9 Remove .access() vnode operation as UID:GID/mode are stored directly in
the vnode itself
2020-01-26 21:06:43 +02:00
Mark 0e66f05cad ext2 opendir()/readdir() 2020-01-26 21:04:46 +02:00
Mark 49a2f60c24 Add AHCI SATA write and ext2 file reading 2020-01-26 19:50:46 +02:00
Mark 5f9e6a3774 Add a bunch of stuff to sysfs 2020-01-26 00:32:23 +02:00
Mark 84d02993d4 Add a simple sysfs implementation 2020-01-25 23:04:55 +02:00
Mark cefa6455ad Dump more info about devices 2020-01-25 19:02:12 +02:00
Mark 6a8f09a9d9 Organize source files, make USB stuff optional 2020-01-25 02:32:44 +02:00
Mark 5ff24ec6df Fix PS/2 keyboard input 2020-01-25 01:37:45 +02:00
Mark 0ab205579f Fix queue handling in UHCI driver, add USB keyboard support 2020-01-25 01:27:00 +02:00
Mark 016037659a USB: Add device enumeration and UHCI (ugly) support
Most of the idea for UHCI controller queue handling is
shamelessly stolen from https://github.com/pdoane/osdev, except
the way of handling queue heads and allocating them is very
simplified.
2020-01-24 17:40:28 +02:00
Mark e5b1674748 New AHCI driver, SATA/SATAPI support for reading (+ SATA writing) 2020-01-23 16:27:20 +02:00
Mark 28aa749956 Get rid of old AHCI/IDE drivers 2020-01-22 15:38:56 +02:00
Mark f648cd2b94 Get rid of old ext2 2020-01-22 15:36:58 +02:00
Mark 92fe570c38 Make kernel debug levels configurable 2020-01-22 15:31:57 +02:00
Mark dad41847e3 Add ttyS0 2020-01-22 15:01:37 +02:00
Mark 89b7b86fbb Add options to configure kernel cmdline 2020-01-22 13:35:50 +02:00
Mark 89330bddd1 Fix console not compiling without VESA 2020-01-22 12:28:56 +02:00
Mark b65bf12eb1 Sketchy mmap() and ioctl()s for fbdev, allow mapping VESA fbdev 2020-01-21 19:17:27 +02:00
Mark 0105aa8002 Proper line discipline for TTYs and simple line discipline for chardevs 2020-01-21 17:08:31 +02:00
Mark beecf5e2b3 Add an option for controlling debugging cycles 2020-01-21 00:09:22 +02:00
Mark 5f5f315a4b PS/2 Mouse support (3-button), testing chardev 2020-01-20 23:24:16 +02:00
Mark 5d316c0691 Add caps lock handling (ps/2) 2020-01-20 17:08:58 +02:00
Mark 7d962ff208 Remove __isatty() system call 2020-01-20 16:58:14 +02:00
Mark f6c8c2b941 Add ^D (broken a bit, but kind of works) and TIOCGWINSZ 2020-01-20 16:57:05 +02:00
Mark 5d3e884b66 Basic job control with process groups. setuid bit support 2020-01-20 15:39:57 +02:00
Mark 6bd26ca5b6 Fix minor allocations problems with ext2, add PS/2 keys 2020-01-20 00:53:59 +02:00
Mark 27442d612f Add shebang parsing 2020-01-19 17:54:01 +02:00
Mark f8937685cd Update demo0.png 2020-01-17 22:58:08 +02:00
Mark a58859aad1 Automatically assign thread names when running execve() 2020-01-17 22:57:06 +02:00
Mark 940d678575 Fix blinking space (should've been a character underneath cursor) 2020-01-17 22:52:25 +02:00
Mark 020eb544a9 Automatic filesystem guessing when mounting 2020-01-17 16:02:57 +02:00
Mark 1bfe68946e Fix cursor character remaining at old position after moving in VESA
console
2020-01-17 14:04:03 +02:00
Mark 9626452ef7 Add mtime/ctime/atime support with system time 2020-01-17 13:58:41 +02:00
Mark 2d6b461d0f Disallow opening dirs without O_DIRECTORY and vice versa 2020-01-17 13:24:41 +02:00
Mark fdde790665 Add some escape sequences to ps2 keyboard translation 2020-01-17 13:20:13 +02:00
Mark c1bd980264 select() syscall for character device reads 2020-01-17 12:53:56 +02:00
Mark 4584b22585 Add timer value in debug console output 2020-01-17 12:15:23 +02:00
Mark 45877916c9 Fix leaking directory file descriptors 2020-01-16 17:04:27 +02:00
Mark 100fc00e18 Fix VESA framebuffer scrolling 2020-01-16 16:55:39 +02:00
Mark 6374b0b231 Make tarfs writable in-memory 2020-01-16 16:19:41 +02:00
Mark 97db4331b4 Add a way to handle illegal system call and segmentation faults in
signal handlers
2020-01-16 14:04:14 +02:00
Mark 1e597e0ac4 umount() system call 2020-01-15 22:36:29 +02:00
Mark f2ad1e69eb Fixed broken signal handling 2020-01-15 22:07:11 +02:00
Mark 05e10db0e2 Add "uname" system call 2020-01-15 17:16:03 +02:00
Mark 86cd5446cd Set system boot time properly, fix gettimeofday 2020-01-15 17:00:24 +02:00
Mark bf9bef247a Better support for L1 indirection in ext2 driver 2020-01-15 14:03:45 +02:00
Mark b7c8ce1d2b Clean comments up, merge ext2 inode block index code 2020-01-15 13:05:53 +02:00
Mark 8682e51c66 Add version reporting when booting 2020-01-15 11:46:26 +02:00
Mark 12b2df3570 Fix header a bit for POSIX compat 2020-01-14 17:38:03 +02:00
Mark c1e98f4590 Add script to install necessary kernel headers 2020-01-14 17:18:38 +02:00