Kevin Lange
ccc86c4dc3
Fix multiple modules, make procfs a module
2014-03-15 17:51:33 -07:00
Kevin Lange
1655cfc600
Suggested cleanups from sortie
2014-02-26 21:10:56 -08:00
Kevin Lange
d42617020f
random rtl network stuff, not working yet
2014-02-26 21:00:16 -08:00
Kevin Lange
010a461d65
Minor cleanup
2014-02-26 20:59:10 -08:00
Kevin Lange
f5be45a2c9
lots of legacy cleanup
2013-12-15 21:33:46 -08:00
Kevin Lange
ed3c578e64
clean up some legacy util stuff
2013-12-13 20:50:04 -08:00
Kevin Lange
3c9a717429
Tasklet cleanups, make kttydebug useful
2013-11-27 21:21:39 -08:00
Kevin Lange
e95c9eb40b
Fix procfs when no cmdline is present
2013-11-27 21:21:09 -08:00
Kevin Lange
8dfd4ff20a
Make serial devices more useful
...
They now use interrupts and thus can be blocked on without sitting in a
busy loop. Not sure if they still work perfectly, need to debug. Works
fine with the console "serial" stuff in qemu.
Todo: Investigate further.
2013-11-27 19:10:38 -08:00
Kevin Lange
922fdd5f38
None of this actually works, but whatever
2013-08-19 19:38:15 -07:00
Kevin Lange
948813d0be
Fix buffer clearing and dumping when switching modes
2013-07-27 22:21:04 -07:00
Kevin Lange
720a62d6aa
ICANON support (still a bit rough)
...
This is a massive hack and I admit it.
2013-07-27 22:01:08 -07:00
Kevin Lange
40f0c41932
Preliminary termios support
...
This is some initial work on support real PTYs.
Canonical mode is not supported at the moment.
2013-07-27 00:18:29 -07:00
Kevin Lange
4c2801beeb
Even more strict ext2fs write disabling
2013-06-12 22:24:02 -07:00
Kevin Lange
e70ebf8857
Big fat cleanup and GCC fix batch
2013-06-05 23:10:36 -07:00
Kevin Lange
ff8fd63e62
Fix bad assignment in tmpfs (thx clang)
2013-05-22 16:26:37 -07:00
Kevin Lange
0a064bf3da
Remove an unused thing
2013-05-22 01:47:43 -07:00
Kevin Lange
ad19c5eb01
change comment in randomdev
2013-05-21 15:34:18 -06:00
Kevin Lange
4868960364
Build ALL the things!
2013-05-12 00:38:56 -07:00
Kevin Lange
edccf2927b
Unbreak ramdisks
2013-04-27 22:04:20 -07:00
Kevin Lange
fde9c6d652
New ioctl commands and userspace improvements
2013-04-27 01:16:36 -07:00
Kevin Lange
5d71eeb013
Kernel stacks are big enough for those...
2013-04-27 01:13:47 -07:00
Kevin Lange
fdc442714a
Disable EXT2 with a #define
2013-04-25 23:06:51 -07:00
Kevin Lange
16da56ea9b
General support for open() flags
...
Includes truncation support in tmpfs, and changes the signure of the VFS
open() method. Also tweaked some comment style in the VFS.
2013-04-24 00:19:08 -07:00
Kevin Lange
8c16a86206
Directory support in tmpfs
2013-04-23 23:21:16 -07:00
Kevin Lange
a2a890e1a8
Fresh new VFS syscalls: unlink, chmod, umask
2013-04-23 01:14:33 -07:00
Kevin Lange
6f096454cd
Some additions to the VFS
2013-04-22 22:36:47 -07:00
Kevin Lange
7c8d34d1b6
Disable EXT2 writes; add experimental tmpfs
...
This is still a work in progress. ext2 writes are quite broken, so they
have been completely disabled, but there's a new tmpfs mounted to /tmp
that you can try to poke at. I'm still fixing up quirks in the VFS that
make it incompatible with a bunch of stuff, but I did manage to write
some files with vim, and swap files appear to be working at least
somewhat. It's all still broken as fuck.
2013-04-21 23:17:26 -07:00
Kevin Lange
3871cfcf31
Fix up the serial console so it works again
2013-04-15 01:26:03 -07:00
Kevin Lange
bc51b20380
Generic ringbuffer ds for kernel
2013-04-02 23:02:43 -07:00
Kevin Lange
7303be0eee
Also verify those aren't null
2013-04-02 18:06:06 -07:00
Kevin Lange
3ddb877b32
[grok.org.uk advisory] validate more syscall pointers
2013-04-02 15:23:40 -07:00
Kevin Lange
7c4cd8dd51
fix nulldev, add zerodev
2013-03-31 13:01:05 -07:00
Kevin Lange
a55a652e0e
new fs node device pointer
2013-03-25 21:48:16 -07:00
Kevin Lange
afac5cd955
fix derp in dev FSes, add /dev/random
2013-03-22 22:38:10 -07:00
Kevin Lange
bc2e4741c7
Random bits and pieces
2013-03-22 15:11:19 -07:00
Kevin Lange
fa79c89e54
Some fixes and cleanup
2013-03-22 11:58:22 -07:00
Kevin Lange
ef459bdaad
More rough stubs and fixes
2013-03-20 21:24:55 -07:00
Kevin Lange
21aeb34ea4
Rough ioctl with support for winsize
2013-03-18 23:57:40 -07:00
Kevin Lange
6f94ce2296
procfs extensions and ps command
2013-03-18 21:52:45 -07:00
Kevin Lange
71342f842d
procfs, and more pty cleanup
2013-03-18 00:52:12 -07:00
Kevin Lange
e02cf79e2a
Rough PTY support (needs work)
2013-03-17 16:34:23 -07:00
Kevin Lange
cef1d359a1
Blocking serial reads
2013-03-17 16:34:01 -07:00
Kevin Lange
eb92cccecd
Cleanup
2013-03-15 00:52:09 -07:00
Kevin Lange
8dd2686b40
Really hack VFS implementation
2013-03-15 00:20:55 -07:00
Kevin Lange
e83f88bacb
Add time support to vfs
2012-12-09 16:59:55 -08:00
Kevin Lange
3cdb7b8748
make most of ext2fs use debug_print
2012-12-09 16:19:25 -08:00
Kevin Lange
a9d895a923
unify logging
2012-12-07 18:33:07 -08:00
Kevin Lange
50ea1462c3
Fix IDE on new qemu, virtualbox
2012-12-02 21:43:54 -08:00
Kevin Lange
193158079d
Bunch of kernel cleanup
2012-11-30 18:26:47 -08:00
Kevin Lange
ed5b9543fb
Big commit: Serial console
...
* fix some terminal bugs (some, not all)
* add a serial device to the VFS
* fix up serial so it works better
* add a serial-console application
* fix a bug in some other stuff relating to allocations
* change size of the terminal described by toaru.terminfo
* adds a new system call
2012-11-28 23:05:19 -08:00
Kevin Lange
05728b0e2f
Fix large files on modern ext2 configurations
2012-10-16 22:30:57 -07:00
Kevin Lange
2eb953f1f1
Massive fixes to the EXT2 driver.
...
* Works with different block sizes
* Works with different inode sizes
* Tested on a real EXT2 file system made with mkfs.ext2
* MBR reading is available
* You can specify a partition with hdd=0 or hdd=1 etc.
* If you make a "real" disk image, you can get GRUB installed in
its MBR, toss in a suitable config file, and boot right off the
disk rather than having to use QEMU to boot the kernel or using
some silly CDROM ramdisk nonsense.
2012-09-29 00:39:01 -07:00
Kevin Lange
f79f345956
Giant ramdisks (works on my desktop)
...
But not on my laptop...
2012-09-18 22:20:04 -07:00
Kevin Lange
ba358a51ff
Bump kernel version
...
* Panel now displays actual kernel version using the uname hack
2012-09-12 20:08:30 -07:00
Kevin Lange
03181de68b
One line fix to a big bug in the ext2 driver
...
[ci skip]
2012-09-11 00:26:39 -07:00
Kevin Lange
8ed06789ed
New debug printing facilities.
...
- Can now register a userspace file descriptor as the output for kernel
print statements through kprintf()
- Can set logging levels for debug print messages, which are separate
from kernel log events and meant to be more readily visible. Log
events are recorded in a buffer to be viewed later, though nothing
actually using logging at the moment.
- Serial output is disabled by default now. You can enable it yourself
by appending the logtoserial argument to the kernel on boot.
2012-09-03 22:35:11 -07:00
Kevin Lange
84ccf49990
Delayed writes [use sysfunc 3
to sync disc]
...
Please note that 'reboot' will not call sync yet, so make sure you do it
yourself.
2012-05-31 20:52:47 +09:00
Kevin Lange
0242e8aa11
[hopefully] Fix the EXT2 write support
2012-05-31 20:37:38 +09:00
Kevin Lange
5a1a45bc09
Faster mouse response
...
- Discard lots of packets
- Don't yield?
2012-04-12 23:21:38 -05:00
Kevin Lange
85b958b2cd
This is what happens when we don't maintain legacy stuff.
2012-04-10 23:49:22 -05:00
Kevin Lange
639881f931
Make things faster, better, stronger, etc.
2012-03-27 19:09:11 -05:00
Kevin Lange
9fd73be686
Trying a few fixes... We're still doing some things very, very wrong.
2012-03-27 16:52:46 -05:00
Kevin Lange
fb6e5d59e3
Completely rewrite rendering model for compositor.
...
We know longer accept DAMAGE and REDRAW commands. Instead, we just loop
and redraw everything anyway (efficiently, mind you). Pipes still have
issues when closed and various other different things.
2012-03-27 13:58:21 -05:00
Kevin Lange
29e031e6f6
[docs] Clean up some fixed XXXs and TODOs
2012-03-15 13:15:57 -05:00
Kevin Lange
816ddc8f3e
Lots of process cleanup implemented; improved cursor rendering
2012-03-14 22:03:55 -05:00
Kevin Lange
e335a2970a
[glogin] Working on the graphical login application
2012-02-19 21:29:40 -06:00
Kevin Lange
e5ed5cdca0
Disable line buffering in pipes. Totally not our job.
2012-02-17 15:01:09 -06:00
Kevin Lange
de0bbe739b
Fix a bunch of system calls...
2012-02-12 18:47:01 -06:00
Kevin Lange
aa73f6fc6e
Fix a task 0 exit bug
2012-02-08 19:30:35 -06:00
Kevin Lange
c4e33117c0
mkdir and creat testing
2012-02-05 16:04:41 -06:00
Kevin Lange
89d9265c73
Actually deschedule processes when they are waiting
2012-01-31 19:27:38 -06:00
Kevin Lange
71298a5c83
Relatively broken local echo support
2012-01-31 00:16:09 -06:00
Kevin Lange
a8cc561cce
Try to write good documentation for the vfs module
2012-01-30 16:48:54 -06:00
Kevin Lange
9061f91e74
stat(), fstat(), /bin/stat
2012-01-27 03:12:29 -06:00
Tianyi Wang
35ce150bb0
Fixes where the block number of inode is incorrectly changed.
2012-01-25 23:30:41 -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
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
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
e05515844d
Null device
2012-01-23 23:01:23 -06:00
Kevin Lange
edebb12573
[misc] Boot logging to screen
2011-12-26 19:23:58 -06:00
Kevin Lange
8c548c0db0
Restructure directory tree for kernel modules
2011-12-14 22:15:47 -06:00