1be7668537fix bugs in indirect-file code clean up test program
kaashoek
2006-08-24 17:28:01 +0000
ea2909b6b5user-level malloc (untested) nit in sbrk indirect block fix dup to share fd struct
kaashoek
2006-08-24 02:44:41 +0000
8b58e81077i/o redirection in sh better parsing of sh commands (copied from jos sh) cat: read from 1 if no args sbrk system call, but untested getpid system call moved locks in keyboard intr, but why do we get intr w. null characters from keyboard?
kaashoek
2006-08-23 01:09:24 +0000
f18ab5c04ecompiling, but untested dup
kaashoek
2006-08-20 03:33:01 +0000
16083d4462removed block system call renumber system calls (run gmake clean!) skeleton for dup system call
kaashoek
2006-08-20 03:08:54 +0000
8787cd01dfchdir cd in shell nits in mkdir, ls, etc.
kaashoek
2006-08-19 23:41:34 +0000
ceb0e42796proc[0] can sleep(), at least after it gets to main00() proc[0] calls iget(rootdev, 1) before forking init
rtm
2006-08-16 01:56:00 +0000
350e63f7a9no more proc[] entry per cpu for idle loop each cpu[] has its own gdt and tss no per-proc gdt or tss, re-write cpu's in scheduler (you win, cliff) main0() switches to cpu[0].mpstack
rtm
2006-08-15 22:18:20 +0000
e958c538facommented out code for cwd
kaashoek
2006-08-15 15:53:46 +0000
d7b3b802f4user-level programs: mkdir and rm shell parses arguments (very simplistic) readme version of README (sh doesn't deal with capital characters) printf recognizes %c nicer output format for ls
kaashoek
2006-08-14 21:22:13 +0000
bdb6643303set size for directories correctly in wdir and mkfs mkdir ls shows stat info for each dir entry
kaashoek
2006-08-14 14:13:52 +0000
d15f0d1033start on mkdir stat
kaashoek
2006-08-14 03:00:13 +0000
e4bcd2a3a9wdir now uses readi/writei
rtm
2006-08-13 20:06:42 +0000
8abe2bcf15don't print unallocated dir entries
kaashoek
2006-08-13 15:05:58 +0000
211ff0c67enamei returns locked parent dir inode for create / unlink don't hold fd table lock across idecref() (latter does block i/o) idecref calls iput() in case last ref -> freeing inode dir size is 512 * # blocks, so readi/writei &c work unlink deletes dirent even if ip->nlink > 0
rtm
2006-08-13 12:22:44 +0000
c372e8dc34zero freed blocks multi-block directories track size of directory (size = number entries in use) should namei (and other code that scans through directories) scan through all blocks of a directory and not use size?
kaashoek
2006-08-13 05:28:04 +0000
7ce01cf9bemknod set nlink = 1 usertests for concurrent create/delete, and read() after unlink()
rtm
2006-08-12 16:47:48 +0000
4357207237fix getblk to actually lock the block no more cons_put system calls usertests tests two processes writing files
rtm
2006-08-12 11:38:57 +0000
1f544842cefstat primitive ls
kaashoek
2006-08-12 04:33:50 +0000
0633b9715eunlink,mknod,create with multi-component pathnames should work now remove console init code from userfs
kaashoek
2006-08-12 01:25:45 +0000
24437cd554fix deadlock---iput(dp) asap working unlink, but doesn't free dir blocks that become empty remove out-of-date comment in ioapic
kaashoek
2006-08-11 18:18:38 +0000
17a856577finit creates console, opens 0/1/2, runs sh sh accepts 0-argument commands (like userfs) reads from console
rtm
2006-08-11 13:55:18 +0000
5be0039ce9interrupts could be recursive since lapic_eoi() called before rti so fast interrupts overflow the kernel stack fix: cli() before lapic_eoi()
rtm
2006-08-10 22:08:14 +0000
8a8be1b8c3low-level keyboard input (not hooked up to /dev yet) fix acquire() to cli() *before* incrementing nlock make T_SYSCALL a trap gate, not an interrupt gate sadly, various crashes if you hold down a keyboard key...
rtm
2006-08-10 02:07:10 +0000
28d9ef04ddprintf convert userfs to use printf bfree ifree writei start on unlink
kaashoek
2006-08-10 01:28:57 +0000
939f9edeaciread for T_DEV O_RDWR, etc. create file
kaashoek
2006-08-09 19:25:20 +0000
2601de0032fix test program: don't close before writing set fd to writeable on open for write
kaashoek
2006-08-09 17:25:10 +0000
6fa5ffb56fdevsw checkpoint: write(fd,"hello\n",6) where fd is a console dev almost works
kaashoek
2006-08-09 16:04:04 +0000
6c0e444fcdoops, update directory inode too
kaashoek
2006-08-09 01:19:48 +0000
0e84a0ec6efix race in holding() check in acquire() give cpu1 a TSS and gdt for when it enters scheduler() and a pseudo proc[] entry for each cpu cpu0 waits for each other cpu to start up read() for files
rtm
2006-08-08 19:58:06 +0000
11a9947f1abread iget mkfs makes a file system image put this in your .bochsrc: ata0-slave: type=disk, mode=flat, path="fs.img", cylinders=1024, heads=1, spt=1
rtm
2006-07-21 13:18:04 +0000
51716a869cRename fd_reference to more suggestive fd_incref. (Fd_reference sounds like it might just return the ref count.)
rsc
2006-07-16 01:49:03 +0000
856e1fc1adAttempt to clean up newproc somewhat.
rsc
2006-07-16 01:47:40 +0000
67a9314ad1Add void for ANSI C
rsc
2006-07-15 17:17:00 +0000
7f419a0d29Change fetchint, fetcharg, and putint to return -1 on error, 0 on success. They had been returning 0 on error, 1 on success, but all the callers were checking for return value < 0.
rsc
2006-07-15 17:13:56 +0000
46bbd72f3eno more recursive locks wakeup1() assumes you hold proc_table_lock sleep(chan, lock) provides atomic sleep-and-release to wait for condition ugly code in swtch/scheduler to implement new sleep fix lots of bugs in pipes, wait, and exit fix bugs if timer interrupt goes off in schedule() console locks per line, not per byte
rtm
2006-07-15 12:03:57 +0000
d9872ffa95and the file
kaashoek
2006-07-12 17:19:24 +0000
f27a68a24aextract lapic code from mp.c
kaashoek
2006-07-12 17:00:54 +0000
6eb6f10c56passes both usertests exit had acquire where I meant release swtch now checks that you hold no locks
rtm
2006-07-12 15:35:33 +0000
8148b6ee53i think my cmpxchg use was wrong in acquire nesting cli/sti: release shouldn't always enable interrupts separate setup of lapic from starting of other cpus, so cpu() works earlier flag to disable locking in console output make locks work even when curproc==0 (still crashes in clock interrupt)
rtm
2006-07-12 11:15:38 +0000
4e8f237be8no more big kernel lock succeeds at usertests.c pipe test
rtm
2006-07-12 01:48:35 +0000
b41b38d0dagive each cpu its own clock, so that preemption works on cpu 1
rtm
2006-07-11 18:45:27 +0000
b548df152bpre-empt both user and kernel, in clock interrupt usertest.c tests pre-emption kill()
rtm
2006-07-11 17:39:45 +0000
5ce9751cabChanges to allow use of native x86 ELF compilers, which on my Linux 2.4 box using gcc 3.4.6 don't seem to follow the same conventions as the i386-jos-elf-gcc compilers. Can run make 'TOOLPREFIX=' or edit the Makefile.
rsc
2006-07-11 01:07:40 +0000
7ea6c9d197queue with disk requests
kaashoek
2006-07-10 19:06:48 +0000