Unfortunately Dave is both ill and stuck in the snow and cannot make it
into the square today. Since none the other TFs are available to teach at
that time, his section today is cancelled.
For those of you in his section, please try to attend a different section
(Ian - Tues 7-8, Amos - Wed 4-5, Jay - Thurs 3-4). If you absolutely
cannot and really feel you need a section this week, email cs161@fas, and
we'll try to figure something out.
-the staff
Hi all,
According to Margo, there will be class today, so brave the snow and come
on down to MD.
Jay
==
== Jay Moorthi * 617.584.2537 (cell) * moorthi(a)fas.harvard.edu ==
== ==
== "Happiness consists in getting enough sleep." RAH, Starship Troopers ==
==
So being an idiot, I have forgotten the answer to this despite having asked
it to probably over 25 people in my life: what's the best way to flush a
printf statement without giving it a \n, or do we not have to worry about
this in os161?
Nick
He's having problems with posting to the mailing list, but he does get the
digest.
--arvin
*******************************************
On reflecting at dinner that he had done nothing to help anybody
all day, he uttered these memorable and praiseworthy words.
"Friends, I have lost a day."
-Suetonius
---------- Forwarded message ----------
Date: Mon, 5 Mar 2001 20:50:11 -0500
From: Francis Richards <frichard(a)fas.harvard.edu>
To: Arvin Chang <atchang(a)fas.harvard.edu>
Subject: (forw) gdb
----- Forwarded message from Francis Richards <frichard(a)is03.fas.harvard.edu> -----
To: cs161-list(a)is03.fas.harvard.edu
From: Francis Richards <frichard(a)is03.fas.harvard.edu>
Date: Mon, 5 Mar 2001 20:47:55 -0500
Subject: gdb
this isn't really directly related to the class, more a shining example of my
own ineptitude. gdb won't stop where i want it to (or at all).
-- begin example --
% which gcc
/usr/local/bin/gcc
% which gdb
/usr/local/bin/gdb
% gcc -g -Wall sh.c
% gdb a.out
GNU gdb 4.17
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "alphaev56-dec-osf4.0d"...
(gdb) break main
Breakpoint 1 at 0x120001178: file sh.c, line 6.
(gdb) run
Starting program: /home05/f/r/frichard/courses/cs161/src/bin/sh/a.out
1024, 1024
Program exited normally.
-- end --
any ideas about what stupid thing i'm leaving out?
----- End forwarded message -----
this isn't really directly related to the class, more a shining example of my
own ineptitude. gdb won't stop where i want it to (or at all).
-- begin example --
% which gcc
/usr/local/bin/gcc
% which gdb
/usr/local/bin/gdb
% gcc -g -Wall sh.c
% gdb a.out
GNU gdb 4.17
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "alphaev56-dec-osf4.0d"...
(gdb) break main
Breakpoint 1 at 0x120001178: file sh.c, line 6.
(gdb) run
Starting program: /home05/f/r/frichard/courses/cs161/src/bin/sh/a.out
1024, 1024
Program exited normally.
-- end --
any ideas about what stupid thing i'm leaving out?
hey all:
anyone found any good ways of debugging execv problems? cs161-gdb doesn't
like to look into userspace, so i have no way of seeing what is going on
in there... and i'm getting random errors right in the transition period.
ack. irritating.
-gwa-
Hi,
Anybody know which functions we're supposed to be calling in the
filesystem when handling the filesystem calls? Like for open(), we need
to call something like VOP_OPEN() or vfs_open(), but which one?
Thanks,
Stephen
due to some miscommunication amongst the TFs, the synchronization solution
set wasn't posted until just now.
it comes in three forms -- an entire tree, the four files (synch.{h,c} and
thread.{h,c}), and a cvs rdiff patch.
it's on the assignments page:
http://www.courses.fas.harvard.edu/~cs161/assignments/
-amos
In C, the declaration syntax goes from right to left. So if you write
volatile struct thread *foo;
you have declared foo to be a pointer to (a struct thread which is
volatile).
If what you want, as is the case when implementing locks, is the
*pointer* to be volatile, not the stuff pointed to, the syntax you
want is
struct thread *volatile foo;
which declares foo, which is volatile, to be a pointer to struct
thread.
(const works the same way.)
Many of you will want to change your lock implementations accordingly.
--
- David A. Holland | VINO project home page:
dholland(a)eecs.harvard.edu | http://www.eecs.harvard.edu/vino
Last night I was feeling sick and lightheaded and so I went home; it
completely escaped my mind to tell anyone I wasn't going to make
terminal room hours. If anyone was there looking for me, I apologize
for not being there; please feel free to e-mail me or send a talk
request or drop by my office.
:-|
--
- David A. Holland | VINO project home page:
dholland(a)eecs.harvard.edu | http://www.eecs.harvard.edu/vino