Commit Graph

781 Commits

Author SHA1 Message Date
Kevin Lange
fd77e36013 Add bin/uname, fix disk buidling
Disk will now rebuild when userspace/*.c are updated.
Make sure you build in userspace/ first!
2012-01-28 17:10:03 -06:00
Kevin Lange
c9d5e735ed Getting ready for thread support 2012-01-28 17:06:07 -06:00
Kevin Lange
c65e458c50 Stop building binaries out of loader/
This is what userspace/ is for; consequentally, all userspace
applications now depend on the full toolchain and will build using the C
library.
2012-01-28 16:19:57 -06:00
Kevin Lange
023f506960 [docs] Updated readme 2012-01-28 13:12:11 -06:00
Kevin Lange
6eb0045419 Add a target to update version.o 2012-01-27 18:47:59 -06:00
Kevin Lange
db7020cbce [security] Shadow Passwords, whoami, and more
This update includes support for shadow passwords, stored in
/etc/master.passwd, as well as support for an /etc/passwd file
containing user/uid/full name/shell associations, which are used by the
shell to get your username for display purposes, as well as by whoami
for the same reason. The login tool does not yet select the right shell
though this is planned.

* root's password is `toor` (a throwback to older times)
* local's password is `local` (because it's obvious)
2012-01-27 18:04:39 -06:00
Kevin Lange
00d0eb8fac Simple line editing (backspace support) 2012-01-27 13:16:23 -06:00
Kevin Lange
a47fe02224 Directory switching 2012-01-27 13:10:58 -06:00
Markus Schober
405868ac8a First commit of readdir/ls support. 2012-01-27 04:04:04 -06:00
Kevin Lange
9061f91e74 stat(), fstat(), /bin/stat 2012-01-27 03:12:29 -06:00
Kevin Lange
41fb7c0f9f ctags 2012-01-27 01:38:08 -06:00
Kevin Lange
71f5a8e3e4 New MOTD, bump version number (0.0.2-testing uiharu) 2012-01-27 00:25:28 -06:00
Kevin Lange
d112f6fedb Reboot [and fix user/group permissions in fork()] 2012-01-26 23:11:43 -06:00
Kevin Lange
8edb567279 oops 2012-01-26 22:55:22 -06:00
Kevin Lange
ac8354d805 Add some system calls, plus a fakish /bin/login 2012-01-26 22:46:18 -06:00
Tianyi Wang
35ce150bb0 Fixes where the block number of inode is incorrectly changed. 2012-01-25 23:30:41 -06:00
Kevin Lange
c7afd7b941 HACF should return non-zero. 2012-01-25 20:08:22 -06:00
Tianyi Wang
cbb739e14b [fix merge conflict] 2012-01-25 19:30:45 -06:00
Tianyi Wang
023865913c fs stuffs 2012-01-25 19:25:59 -06:00
Kevin Lange
b4c8d7a3ff Fix nyancat height to work on new terminal 2012-01-25 19:04:39 -06:00
Kevin Lange
8b1b0453f8 [userspace] Update build scripts 2012-01-25 17:07:42 -06:00
Kevin Lange
e52ca55db1 [userspace] Fix multitasking-test
Without flushing, this doesn't work properly with the terminal pipe.
Technically, this is an issue in the pipe implementation, but as that's
not technically what we're testing there's no sense having it be broken.

For the record, everything works wonderfully.
2012-01-25 16:59:44 -06:00
Kevin Lange
3b7d737a13 Fix slow terminal by loading fonts into memory 2012-01-25 16:12:56 -06:00
Kevin Lange
7682eb6cdf Change error number format in esh 2012-01-25 14:57:27 -06:00
Kevin Lange
a0139691dd Fix the loader/ apps to use fds 2012-01-25 14:41:11 -06:00
Kevin Lange
d73d2e2361 [cmos] Fix userspace clock 2012-01-25 13:50:30 -06:00
Kevin Lange
1a2cb28fc1 [pipe] Fix write overrun and other issues 2012-01-25 00:54:59 -06:00
Kevin Lange
339b82e10c [massive commit] Userspace terminal.
Completely removes:
* The kernel terminal (both VGA and graphical)
* The kernel ANSI parser (obviously)
* kgets() function
* Dozens of other functions that were made useless

Adds:
* Userspace terminal that should work (relatively) well
* Keyboard device driver (implemented with a "pipe" object)
* Stabalized interrupt interface
* `clear` uses the c library
* All panic screens and kprintf() output goes to the serial line ONLY
* The kernel boots directly into /bin/terminal (no arguments, unless you
  want to add them (such as -f))
2012-01-25 00:19:52 -06:00
Kevin Lange
d9c0c8efb6 Pipes, dup2, and an almost-kinda-working terminal 2012-01-24 19:06:07 -06:00
Kevin Lange
6c042aba53 Pipes 2012-01-24 18:40:25 -06:00
Kevin Lange
9147549bd5 oops 2012-01-24 17:58:19 -06:00
Kevin Lange
9ba44c73bc [pipe] Pipe (ring buffer) device? 2012-01-24 17:56:35 -06:00
Kevin Lange
fb200db703 Herp 2012-01-24 12:10:57 -06:00
Kevin Lange
6203bc0063 Fix default output colors 2012-01-24 11:56:42 -06:00
Kevin Lange
b4856c563c Italic, Underline, X-Out support 2012-01-24 11:53:03 -06:00
Kevin Lange
4817d74c1c Add Oblique DejaVu fonts 2012-01-24 11:50:55 -06:00
Kevin Lange
dc353cd954 Update cursor style 2012-01-24 11:15:15 -06:00
Kevin Lange
436435589a Adjusted font settings, bold support 2012-01-24 11:01:31 -06:00
Kevin Lange
e05515844d Null device 2012-01-23 23:01:23 -06:00
Kevin Lange
9be2f43935 [term] Change sample output a bit 2012-01-23 22:37:09 -06:00
Kevin Lange
ce51204fe4 Use DejaVu with same sizings and hintings as my xterm 2012-01-23 22:26:13 -06:00
Kevin Lange
c256642d09 Include Deja Vu Sans Mono font (with license) 2012-01-23 22:25:55 -06:00
Kevin Lange
c2af881b89 Merge branch 'master' of github.com:klange/osdev 2012-01-23 19:09:27 -06:00
Kevin Lange
0b6cc503af [isrs] Increment the IRQ semaphore before...
... handling any interrupt service routines.

This was causing crashes while running /userspace/ apps without any
syscalls being triggered, presumably due to switching at awkward times.
2012-01-23 19:04:10 -06:00
Kevin Lange
ee1ade379f [cat] handle load failure without seg faulting 2012-01-23 14:24:23 -06:00
Kevin Lange
ed31c2cbea Drop serial output from standard terminal 2012-01-23 12:36:59 -06:00
Kevin Lange
7e716019ec Freetype, why are you so slow? 2012-01-23 00:13:50 -06:00
Kevin Lange
2174cfb59e Rough test: Userspace port of the terminal.
Need to replace the bitfont with freetype, get the thing attached to a
pipe, start getting other stuff to run under it, and then we can remove
the kernel's graphical terminal.
2012-01-22 23:36:49 -06:00
Kevin Lange
e3dc6b002d [bochs] (still broken) fix fb detection for qemu 1.0 2012-01-19 17:44:50 -06:00
Kevin Lange
e5330b1df0 Started work on the full ELF loader and C++ support 2012-01-18 20:12:04 -06:00