Commit Graph

  • 94aee57638 Better permission handling, add chmod/chown Mark 2020-01-14 14:07:57 +02:00
  • b47a465770 Keyboard shift Mark 2020-01-14 13:10:43 +02:00
  • 7e9fad9dd0 Add mkdir/rmdir Mark 2020-01-14 13:04:14 +02:00
  • 6e93a07f2b stat() Mark 2020-01-14 12:44:13 +02:00
  • dad9667f75 Add unlink and fix file positions when writing/reading Mark 2020-01-14 12:33:32 +02:00
  • 7cb823b8f0 Properly implement vnode -> path Mark 2020-01-14 12:08:35 +02:00
  • 0970c61a5d Pass arguments from execve() Mark 2020-01-14 11:49:49 +02:00
  • 0067f1bc74 Colorful errors Mark 2020-01-14 11:32:06 +02:00
  • 6586383849 Fix invalid free in binfmt_elf, don't panic when load fails Mark 2020-01-14 11:18:41 +02:00
  • fe9c7ea9a2 Optimize ELF loading with lseek Mark 2020-01-14 11:13:01 +02:00
  • 38ae0eb4bf More memory leak fixes Mark 2020-01-13 23:30:56 +02:00
  • 8fc51317e3 Fix memory leak in file reading in execve() Mark 2020-01-13 22:41:28 +02:00
  • 60ea4efb10 Add devfs stat() Mark 2020-01-13 22:40:34 +02:00
  • f00a4a2eac Added setXid/getXid, chdir Mark 2020-01-13 17:30:09 +02:00
  • 7100c0ff07 Add current directory and execve Mark 2020-01-13 16:14:19 +02:00
  • c6e51c73d2 fork() work Mark 2020-01-13 15:44:38 +02:00
  • cfd0267927 Add opendir/readdir Mark 2020-01-13 15:28:14 +02:00
  • 63bd9a2b35 Add open/truncate/read/write operations + file access Mark 2020-01-13 14:38:16 +02:00
  • 8b0fe62240 Add read/write syscalls again Mark 2020-01-12 22:59:13 +02:00
  • d0784e5f4b Userspace init executes again, fixed missing FXSAVE zone in threads Mark 2020-01-12 22:17:15 +02:00
  • 7ddb53c7a0 Don't run init task longer than needed, remove ethq handler for now Mark 2020-01-12 17:42:48 +02:00
  • 2aeca31778 Kernel tasks have negative pids Mark 2020-01-12 17:32:12 +02:00
  • bada9ed786 Rework thread init function a bit Mark 2020-01-12 14:57:06 +02:00
  • ca1a4d505b Better device node name generation Mark 2020-01-12 13:05:25 +02:00
  • fa399280fd Add find() and link resolution to VFS Mark 2020-01-12 12:57:31 +02:00
  • 2e795d2ebf Minimal working vfs refactor Mark 2020-01-10 15:37:54 +02:00
  • 7272b762c0 Remove comments too Mark 2020-01-10 14:21:44 +02:00
  • 565f67188a Remove old VFS implementation Mark 2020-01-10 14:09:45 +02:00
  • f134a72dff Proper FPU initialization, SSE support Mark 2020-01-09 19:55:55 +02:00
  • a44012cb08 Store FPU context properly with FXSAVE/FXRSTOR Mark 2020-01-09 19:38:20 +02:00
  • 8d316f3c8b Fix FIFO overflow in rs232 driver Mark 2020-01-09 16:40:28 +02:00
  • a8d6ad94c8 Add IDE device enumeration, but the driver is focked up Mark 2020-01-09 15:51:46 +02:00
  • e9e3d323f7 Fix undefined behavior in thread forking Mark 2020-01-09 15:37:47 +02:00
  • ecf8fe5d46 Add basic urandom device Mark 2020-01-09 15:28:02 +02:00
  • 9da01f0d46 Merge devfs into dev.c, add stat() Mark 2020-01-09 15:10:22 +02:00
  • c39c4dca2a Add creat()/unlink()/mkdir() Mark 2020-01-09 13:20:52 +02:00
  • 9ca8d033a4 AHCI write support Mark 2020-01-09 13:06:21 +02:00
  • 23dde222fb Moved userspace outside the kernel tree Mark 2020-01-07 16:10:26 +02:00
  • 22fd70a4aa Refactor: split syscall definitions into separate source files Mark 2020-01-07 02:37:36 +02:00
  • b323e8c29d Syscall jump table, fix invalid 4th argument handling in libc Mark 2020-01-07 02:15:46 +02:00
  • 484d177c33 Display working directory in shell Mark 2020-01-06 01:09:46 +02:00
  • 08d7392046 Detailed ls Mark 2020-01-05 16:06:30 +02:00
  • aca450c99f Better argument handling Mark 2020-01-05 15:33:27 +02:00
  • 0ba17d057b Moved reboot outside init sh, fix warnings Mark 2020-01-05 15:05:53 +02:00
  • cbb1873cbe Move initrd binaries to $(STAGE)/bin Mark 2020-01-05 15:00:34 +02:00
  • bc1ab6776c Add waitpid syscall Mark 2020-01-05 14:44:07 +02:00
  • a83f7ddb45 Collect debug information about thread queues Mark 2020-01-05 02:41:31 +02:00
  • 30078e18e6 Faster CVGA console Mark 2020-01-05 02:32:22 +02:00
  • 17b8c50931 Start init on any processor instead of 0 Mark 2020-01-05 02:13:19 +02:00
  • 820bb095d9 Fix stack size for idle tasks Mark 2020-01-05 02:12:14 +02:00
  • 2495d2e705 Process hierarchy + fixed a retarded bug with whole queue reset when removing a thread Mark 2020-01-05 01:46:29 +02:00
  • bc26eabff5 Made SMP great again Mark 2020-01-04 20:46:50 +02:00
  • 1e3b890115 Fix a problem with root vnode in tarfs Mark 2020-01-04 20:26:12 +02:00
  • 35b93e247f Add support for GPT partitions Mark 2020-01-04 20:11:40 +02:00
  • 7df7f9cbe4 Added reboot syscall (linux-like) Mark 2020-01-04 19:09:49 +02:00
  • 091975dd1c Make init execute files from / Mark 2020-01-04 18:41:43 +02:00
  • c5875c4639 Scheduler optimization, console optimization (still slow as hell) Mark 2020-01-04 15:29:44 +02:00
  • b8c4917745 30% performance improve by removing idle thread from queue when not really idle Mark 2020-01-03 23:46:15 +02:00
  • dd8564a134 Added a kind-of-working openpty() Mark 2020-01-03 22:13:38 +02:00
  • ce81c6fa9e Output vendor:device for unknown drivers Mark 2020-01-03 02:30:51 +02:00
  • 90353d19e9 Add config options to control VESA Mark 2020-01-02 22:49:50 +02:00
  • 5dc3bf9f34 PSF, VESA fbcon support Mark 2020-01-02 19:48:37 +02:00
  • a47c5f6b9f Remove "extern" declaration in code block Mark 2020-01-02 15:37:46 +02:00
  • b50781ed2a Changed signal queue to bitmap Mark 2020-01-02 15:19:30 +02:00
  • bf21f00550 Add clear command Mark 2019-12-31 13:18:17 +02:00
  • f8b30fee62 Add help Mark 2019-12-31 13:13:38 +02:00
  • 6a03d92882 Added global timer (PIT-backed now) and nanosleep() syscall Mark 2019-12-31 13:01:47 +02:00
  • 4b9d6e3303 Rewrite init demos Mark 2019-12-31 00:30:03 +02:00
  • f9782965fc Change how console scrolling works Mark 2019-12-30 22:32:41 +02:00
  • 8380cd3155 Crude argument passing, added hex dump as demo program Mark 2019-12-30 17:26:33 +02:00
  • 582507c17f Actually implement getcwd syscall Mark 2019-12-30 04:37:23 +02:00
  • d005f86b17 Add chdir (working) and getcwd (stub) Mark 2019-12-30 04:26:16 +02:00
  • 689d0d9534 Fix readdir for ext2 Mark 2019-12-30 04:06:16 +02:00
  • 3d807708cf Add "config" mention to readme Mark 2019-12-30 03:33:18 +02:00
  • db2738d37f Update README.md Mark 2019-12-30 02:30:19 +02:00
  • 86b45f4f95 Make ttyX not implement a vnode struct for itself Mark 2019-12-30 02:02:27 +02:00
  • 164022b8d1 Add pseudo devices Mark 2019-12-30 01:43:40 +02:00
  • 6545e05462 Fix undefined behavior in thread struct initialization Mark 2019-12-30 01:24:07 +02:00
  • 822aa2c3f0 Add basic devfs Mark 2019-12-30 01:23:29 +02:00
  • 7c8e11a3ef Better colors Mark 2019-12-29 23:39:52 +02:00
  • b51783a40d Added some VT100 compat (messing around) Mark 2019-12-29 21:34:02 +02:00
  • 5bd97b432a Add "cat" for file demo Mark 2019-12-29 20:18:41 +02:00
  • 802642b50a Make non-SMP version work again Mark 2019-12-29 20:10:00 +02:00
  • 294b6a06e9 Add getpid() syscall. Add abort()/raise() to libc Mark 2019-12-29 16:43:21 +02:00
  • 2cbd3e65c4 Signals kinda work! Mark 2019-12-29 16:29:16 +02:00
  • ccc13ef0d5 Add thread cleanup after termination Mark 2019-12-29 14:15:09 +02:00
  • 2681fec924 Dump more information about page faults in userspace Mark 2019-12-29 02:11:11 +02:00
  • 563b3023bb Can handle process page faults by killing them Mark 2019-12-29 01:54:46 +02:00
  • bb03b868d2 Add panic when PID 1 dies Mark 2019-12-29 01:46:20 +02:00
  • eae21dc70b Remove acpica compat for __linux__-compilers Mark 2019-12-28 21:51:45 +02:00
  • 5d8556a317 Add opendir/readdir/closedir (libc), add readdir syscall Mark 2019-12-28 16:57:48 +02:00
  • feaf9bfea0 Update README.md, guess I'm taking on this again Mark 2019-12-24 16:27:08 +02:00
  • 28d094a167 Update debug level for console Mark 2019-11-16 20:13:20 +02:00
  • 26e3528cc3 Remove debug line Mark 2019-11-05 16:51:24 +02:00
  • d17c1ba115 Added execve() system call Mark 2019-11-05 16:49:18 +02:00
  • 78c2ee90c7 Fix sched_ncpus setting order Mark 2019-11-04 14:14:34 +02:00
  • 0f2404cb00 Fix problem with sched_add to nonexistent CPU queues Mark 2019-11-04 13:40:26 +02:00
  • 76fa7de8e8 Clean up sys_fork() a bit Mark 2019-11-04 13:40:15 +02:00
  • 0772681210 fork() works Mark 2019-11-04 13:25:33 +02:00
  • 4ded684f92 Add in_send and ICMP echo request/reply Mark 2019-11-03 14:50:15 +02:00