Commit Graph

582 Commits

Author SHA1 Message Date
Kevin Lange
2a1b0d3dcf [process] Massive commit: New process model 2011-12-08 15:25:48 -06:00
Kevin Lange
3f513579e1 initial work on new process model 2011-12-07 20:59:08 -06:00
Kevin Lange
9f165800b7 [tree] Add some new functions 2011-12-07 20:58:47 -06:00
Kevin Lange
3d916ea911 [kbd/mouse] Clean up 2011-12-07 20:58:25 -06:00
Kevin Lange
c54de06083 [esh] Support &, search path 2011-12-07 15:08:40 -06:00
Kevin Lange
c4fe97af6d [kbd] Cleanup 2011-12-07 15:01:31 -06:00
Kevin Lange
fa09f76582 [esh] Handle bad execs 2011-12-06 20:36:40 -06:00
Kevin Lange
04a5f4a833 [sys] Pass on values for failed executions 2011-12-06 20:36:25 -06:00
Kevin Lange
dca46fffc4 [sys] wait(pid) 2011-12-06 20:13:20 -06:00
Kevin Lange
d52e73e71e [esh] Esh, the experimental shell 2011-12-06 19:46:35 -06:00
Kevin Lange
8d0ebc5042 Fix forking? 2011-12-06 19:46:22 -06:00
Kevin Lange
fb2759e01a [mem] Add some new page fault special things 2011-12-06 19:43:45 -06:00
Kevin Lange
abcbefece3 [ext2] *Should* be a working inode writer 2011-12-06 18:04:42 -06:00
Kevin Lange
cf6b4081b2 [ext2] remove STOP from inode allocator 2011-12-05 00:27:25 -06:00
Kevin Lange
a9555e28ce [ext2] Bitmap allocation, we can (almost) allocate inodes 2011-12-05 00:21:56 -06:00
Kevin Lange
d7e5cb2556 [build] That entire rule was unused... 2011-12-01 01:09:12 -06:00
Kevin Lange
942d10d923 [docs] Forgot to note that genext2fs is a build requirement for the ramdisks 2011-11-30 23:24:17 -06:00
Kevin Lange
8f6d345039 [userspace] Nyancat!
Also works on a standard xterm:
    gcc -o nyancat nyancat.c
    ./nyancat
(Be sure to set your terminal to at least 128 wide and 64 tall)
2011-11-29 23:41:02 -06:00
Kevin Lange
a9661400e2 [fs] Use the path canonicalization function for opening and cd'ing 2011-11-29 20:19:30 -06:00
Kevin Lange
7ecd1bd440 [shell] Various testing functions 2011-11-29 13:33:25 -06:00
Kevin Lange
80db0f331d [vfs] Proper path canonicalization available 2011-11-29 13:28:36 -06:00
Kevin Lange
05860ee7c7 [list] Fix remove and pop 2011-11-29 13:07:59 -06:00
Kevin Lange
30326e5dd3 [ext2] Fix bad allocations for block objects 2011-11-29 13:06:41 -06:00
Kevin Lange
dd6aaf1a9d [main] Fix vim hints 2011-11-29 13:06:17 -06:00
Kevin Lange
1f1009106a [tree] Some comments couldn't hurt 2011-11-29 07:10:35 -06:00
Kevin Lange
8f07b1a417 [mem/task] Fix broken handling of page faults
The method I was using resulted in a loop of halts attempting
to remove process 0 from the thread queue if the kernel itself
was doing the faulting. This should fix that. Once there are
no more processes available, we bail out and call STOP.
2011-11-29 07:02:05 -06:00
Kevin Lange
9bd14b5a24 [tree] Fix branch removal 2011-11-29 07:01:36 -06:00
Kevin Lange
63ae277053 [tree/list] Some additional functions 2011-11-29 06:52:26 -06:00
Kevin Lange
47a6832606 [tree] Simple tree implementation for processes 2011-11-29 02:49:19 -06:00
Kevin Lange
f5d1d411cf [list] Lists only got bigger... 2011-11-29 01:55:11 -06:00
Kevin Lange
05b59d366f [list] Fix some bugs in that. It never works on the first push anyway, right? 2011-11-28 23:45:33 -06:00
Kevin Lange
ea7ddfe61d [list] Simple doubly-linked list implementation 2011-11-28 23:28:55 -06:00
Kevin Lange
bb606f948d [shell] Line editing. 2011-11-26 17:18:35 -06:00
Kevin Lange
010475b6ee [bochs] Add a function to force a redraw of the cursor 2011-11-26 17:18:20 -06:00
Kevin Lange
94fe43a45e [vfs] Fix an allocation bug 2011-11-26 17:18:00 -06:00
Kevin Lange
fe9b54c35c [clear] Clear properly for an xterm 2011-11-26 16:18:34 -06:00
Kevin Lange
1b1cad3f4a [shell] Scroll through history 2011-11-26 16:14:35 -06:00
Kevin Lange
0be609c334 [shell] Simple command history 2011-11-26 15:52:24 -06:00
Kevin Lange
d8c15cb0b1 [shell] Fix tab completion, I was an idiot 2011-11-26 15:26:12 -06:00
Kevin Lange
75329eed95 [misc] strstr, startswith 2011-11-26 15:25:59 -06:00
Kevin Lange
1ca8e24fe0 [docs] Update README 2011-11-25 11:46:33 -06:00
Kevin Lange
062e6fcd43 [shell] Tab completion, basic work on writing files 2011-11-24 18:59:23 -06:00
Kevin Lange
149225e097 [fs] Code cleanup 2011-11-24 12:33:20 -06:00
Kevin Lange
2efc98d5a6 [fs] Unify all read calls, add a write_block function 2011-11-24 12:28:21 -06:00
Kevin Lange
b8b48cfc65 [fs] Print some debug information on mount 2011-11-23 22:27:18 -06:00
Kevin Lange
450a8784e2 [misc] Prepare for the inevitable support for file writes 2011-11-23 21:38:51 -06:00
Kevin Lange
65e6b0e800 [shell] Redraw prompt on ^L 2011-11-23 21:22:25 -06:00
Kevin Lange
63f57855bf [shell] Complete rewrite (sort of) 2011-11-23 21:18:48 -06:00
Kevin Lange
d8e7198473 [shell] Highlight executables in green. Add info command. 2011-11-23 13:45:08 -06:00
Kevin Lange
8aee786497 [sys] This seems to help fork() a small bit 2011-11-18 22:14:00 -06:00