Ben Pfaff [Sun, 29 Aug 2004 21:35:45 +0000 (21:35 +0000)]
Prototype hex_dump().
Add various is*() functions.
Ben Pfaff [Sun, 29 Aug 2004 21:35:33 +0000 (21:35 +0000)]
Fix snprintf() return value.
Add grouping support to printf.
Add a function for hex dumps.
Ben Pfaff [Sun, 29 Aug 2004 21:34:16 +0000 (21:34 +0000)]
Implement read/write support.
Ben Pfaff [Sun, 29 Aug 2004 21:33:26 +0000 (21:33 +0000)]
Move "include" command to end, so that the first target is "all".
Ben Pfaff [Sun, 29 Aug 2004 19:18:25 +0000 (19:18 +0000)]
Basic disk detection stuff.
Ben Pfaff [Sun, 29 Aug 2004 19:18:10 +0000 (19:18 +0000)]
Make thread_root() enable interrupts, otherwise kernel threads will
run with interrupts off, which is really bad...
Ben Pfaff [Sun, 29 Aug 2004 19:17:21 +0000 (19:17 +0000)]
Formatting.
Ben Pfaff [Sun, 29 Aug 2004 19:17:14 +0000 (19:17 +0000)]
Make yield_on_return only usable in an external interrupt context: (1)
it's a global variable so it must be in use only in one context at
once, which is okay because we don't nest external interrupts and (2)
if we're not in an external interrupt context then we might as well
just call thread_yield() and not screw around with "yield on return".
Also, enforce interrupts being off in external interrupt contexts.
Ben Pfaff [Sun, 29 Aug 2004 19:13:35 +0000 (19:13 +0000)]
Add snprintf(), vsnprintf().
Ben Pfaff [Sun, 29 Aug 2004 19:13:08 +0000 (19:13 +0000)]
Add timer_msleep, timer_usleep, timer_nsleep().
Ben Pfaff [Sun, 29 Aug 2004 07:09:57 +0000 (07:09 +0000)]
Initial un-working code.
Ben Pfaff [Sun, 29 Aug 2004 07:09:30 +0000 (07:09 +0000)]
thread_schedule() now static.
Ben Pfaff [Sun, 29 Aug 2004 07:09:17 +0000 (07:09 +0000)]
Adjust rules for the interrupt level during scheduling.
Ben Pfaff [Sun, 29 Aug 2004 07:08:21 +0000 (07:08 +0000)]
Adjust indentation for .globl directives.
Ben Pfaff [Sun, 29 Aug 2004 07:02:56 +0000 (07:02 +0000)]
Add .data, .text to output.
Pop intr_handler arg inside intr_entry, not intr_exit.
Ben Pfaff [Sun, 29 Aug 2004 06:54:21 +0000 (06:54 +0000)]
Make intr_stubs const.
Ben Pfaff [Sun, 29 Aug 2004 06:54:14 +0000 (06:54 +0000)]
Fix wild bit in interrupt gate addresses. Make some things static.
Ben Pfaff [Sun, 29 Aug 2004 06:53:30 +0000 (06:53 +0000)]
(printf_integer) Fix handling of precision. Improve comments.
Ben Pfaff [Sun, 29 Aug 2004 05:24:57 +0000 (05:24 +0000)]
Improve comments.
Ben Pfaff [Sat, 28 Aug 2004 07:08:54 +0000 (07:08 +0000)]
Work on loader to prepare for passing in a command line.
Ben Pfaff [Fri, 27 Aug 2004 07:18:38 +0000 (07:18 +0000)]
Make userspace actually work.
Ben Pfaff [Fri, 27 Aug 2004 07:17:37 +0000 (07:17 +0000)]
printk() disables interrupts.
Ben Pfaff [Fri, 27 Aug 2004 05:45:02 +0000 (05:45 +0000)]
(printf_integer) Fix handling of # flag. This time for sure!
Ben Pfaff [Fri, 27 Aug 2004 02:27:33 +0000 (02:27 +0000)]
Fix TSS descriptor.
Ben Pfaff [Fri, 27 Aug 2004 00:06:16 +0000 (00:06 +0000)]
Set RPL=3 for user selectors.
Ben Pfaff [Fri, 27 Aug 2004 00:05:55 +0000 (00:05 +0000)]
Userspace almost (?) working.
Ben Pfaff [Fri, 27 Aug 2004 00:05:15 +0000 (00:05 +0000)]
Clean up interrupt handling.
Ben Pfaff [Fri, 27 Aug 2004 00:04:02 +0000 (00:04 +0000)]
Fix formatting.
Ben Pfaff [Thu, 26 Aug 2004 21:53:33 +0000 (21:53 +0000)]
More clean up stack frame handling.
Ben Pfaff [Thu, 26 Aug 2004 21:44:12 +0000 (21:44 +0000)]
intr_args => intr_frame.
Ben Pfaff [Thu, 26 Aug 2004 21:41:41 +0000 (21:41 +0000)]
Clean up handling of stack frames.
Ben Pfaff [Thu, 26 Aug 2004 19:52:36 +0000 (19:52 +0000)]
Improve mmu.h.
Ben Pfaff [Thu, 26 Aug 2004 19:06:27 +0000 (19:06 +0000)]
Start work on program loading.
Ben Pfaff [Thu, 26 Aug 2004 19:04:25 +0000 (19:04 +0000)]
Header for init.c.
Ben Pfaff [Thu, 26 Aug 2004 19:03:43 +0000 (19:03 +0000)]
Ignore build directory.
Ben Pfaff [Thu, 26 Aug 2004 19:02:33 +0000 (19:02 +0000)]
Add PGOFS macro.
Add assertions.
Ben Pfaff [Thu, 26 Aug 2004 19:01:59 +0000 (19:01 +0000)]
Change list_elem from a struct to a typedef to make the hash table
implementation more straightforward.
Ben Pfaff [Thu, 26 Aug 2004 19:01:18 +0000 (19:01 +0000)]
Add ROUND_DOWN macro.
Ben Pfaff [Thu, 26 Aug 2004 19:01:02 +0000 (19:01 +0000)]
Optimize filesys_stub_get_bytes().
Ben Pfaff [Thu, 26 Aug 2004 18:58:41 +0000 (18:58 +0000)]
Initial hash table implementation.
Ben Pfaff [Wed, 18 Aug 2004 16:03:26 +0000 (16:03 +0000)]
Beginnings of userspace.
Ben Pfaff [Wed, 18 Aug 2004 00:15:14 +0000 (00:15 +0000)]
Remove call to sema_self_test() from main().
Ben Pfaff [Wed, 18 Aug 2004 00:12:54 +0000 (00:12 +0000)]
Working backdoor filesystem implementation.
Ben Pfaff [Wed, 18 Aug 2004 00:11:22 +0000 (00:11 +0000)]
Add memcmp().
Use unsigned char instead of uint8_t for string functions.
Ben Pfaff [Wed, 18 Aug 2004 00:10:57 +0000 (00:10 +0000)]
Make debug.h non-idempotent, like <assert.h>.
Add backtrace() function.
Ben Pfaff [Wed, 18 Aug 2004 00:10:09 +0000 (00:10 +0000)]
Add .cvsignore files.
Ben Pfaff [Wed, 18 Aug 2004 00:08:36 +0000 (00:08 +0000)]
Remove.
Ben Pfaff [Wed, 18 Aug 2004 00:05:30 +0000 (00:05 +0000)]
Files to ignore.
Ben Pfaff [Tue, 17 Aug 2004 06:36:18 +0000 (06:36 +0000)]
Clean more files.
Ben Pfaff [Tue, 17 Aug 2004 06:35:16 +0000 (06:35 +0000)]
Wait for DRQ in status register to transition low before reading
sector.
Ben Pfaff [Tue, 17 Aug 2004 06:33:26 +0000 (06:33 +0000)]
Pad out kernel image to multiple of 4 kB to make Bochs happier.
Ben Pfaff [Tue, 17 Aug 2004 03:06:47 +0000 (03:06 +0000)]
Initial filesystem stub code.
Ben Pfaff [Tue, 17 Aug 2004 03:06:24 +0000 (03:06 +0000)]
Add filesys dir.
Ben Pfaff [Mon, 16 Aug 2004 21:45:04 +0000 (21:45 +0000)]
Initial revision