Kenn's journal for 2001/11

2001-11-02

The kernel works. Well, sort of. It does weird stuff in a fair number of circumstances (for example, there's some weird timing issue in the terminals that I'm having a lot of trouble finding), and some things still aren't implemented at all (the semaphores and user-space threads package). But still, it's infinitely better to have it doing something so that we can actually start testing some of the stuff we'd written.

I've already flushed out a whole bunch of bugs. The nastiest was returning the head of the free page list rather than the page we had just allocated, which completely fucked up context switching. Between Mark and I, we probably spent about 6 man-hours trying to figure out why it didn't work, and then went to Kesden and received no more advice than "look over your code as if you were doing a DoD-style code review" - and then I found it within half an hour. :-)

I haven't had a whole lot of time to think about much besides the kernel lately, and don't expect to for at least another few days. The kernel is due at midnight tonight, but we have four late days left. Ideally we wouldn't have to use all of them on this one project, but realistically if we can do that and have a reasonably functioning kernel by the end of that point in time, then we'll just have to remember to actually start the filesystem project early. :-) Still, Mark and I are both a lot more confident in not getting totally screwed over.

2001-11-05

Ah, CMU, where a break from OS for me and from ECE for a friend means sitting up until 9 in the morning discussing pictures found on Google's Image Search (with the adult content filter on, no less!) and downloading MP3s. And that limit of 9 A.M. was set arbitrarily by me just to force us to stop at some point...

It's hard to believe we've gone from the barest outline and a few scraps of code to a kernel with only one known outstanding bug in a matter of about a week. I'm starting to suffer from code burnout - actually, I have been for a few days now - but it's definitely been worth it. The user-space threads library is done (written 100% by me) and seems to essentially work. Semaphores work. (Without them, the user-space threads would have serious issues. :-) The one time we can still get it to crash is when doing a shared fork over and over again. I'm going to let Mark try to find this bug, both because it's going to be very hard to locate and because it's probably in his code.

I'd still like to do copy-on-write, and don't think it should have much of a chance of breaking anything, but we do have to flush out that one last bug and do some more testing first, and ideally we'd turn the project in tonight and retain one late day in case we need it next project. So we'll see how it goes. Sorry my updates have been so technical lately, but the kernel's been on my mind more than anything else lately... I'll post one final update about it when we turn it in and then shut up about it, at least until we demo. :-)

2001-11-08

Over the last two hours, as I printed out and turned in my Minds, Machines, and Knowledge midterm, a great wave of calm happiness slowly washed over me. Yes, I turned it in without answering significant parts of two questions, and I probably won't get an A on it. But you have to understand what the past two weeks have been for me - constant work on a kernel with a deadline that was tight but that I just knew we could reach, and then not starting to write my midterm (it was a take-home) until 11 hours before it's due. There's a certain joy in being under absolute stress and finding that you really are as capable as you want to believe yourself to be. While I know that doing this repeatedly would rapidly wear me down, and I wouldn't wish this heavy of a workload on anyone (which, sadly, far too many people seem to have), it's nice to know that you can.

So, as you probably guessed, we turned in our kernel. It works, at least on the cases we tested it on. There was one last bug in my threads package which I didn't catch until late enough that we were forced to use up all of our late days. So we can't afford to slack off on the filesystem project like we did this time. We didn't do copy-on-write, opting instead for more debugging time. I would post my kernel to my webpage, as I'm honestly proud of it, but I don't own full copyright to it, since Mark wrote roughly half; more seriously, I don't want to give future OS students anything to cheat off of (I wish everyone were trustworthy, because at this level it's really not worth being in it if you're just faking it, but I know that some just don't understand this simple concept).

The philosophy midterm written in the 11 hours before it was due, mostly the wee hours of the morning, I might add? Well, that one was fueled by chemicals :-) More specifically, a Raspberry Chai Tea (real brewed tea, so it probably had some caffeine), a SoBe Adrenaline Rush (taurine-based, like Red Bull, but I think it tastes better and more importantly our local grocery store actually stocks them), and Penguins. I do try to avoid mind-altering substances (I've never had an alcoholic beverage in my life), but sometimes you have to do what you have to do, and I don't really mind what these things do to me when I need them - although I'm very careful not to let myself become dependent.

So, now I have nothing left to worry about. Well, nothing except the OS homework assignment that's due tomorrow evening, the fact that I've been eating one meal a day pretty regularly for the past two weeks, I'm still mildly sick, trying to make plans (even a class schedule) for next semester, and those of the Big Questions that I haven't yet solved... but still, there's this great sense of calm. I think the definition of "no worries" needs revision. :-)

2001-11-09

Last night I finally managed to get to kung fu again. I really needed to. Although I had good reason not to go for the past two weeks - first being sick, then having a massive OS assignment that absolutely had to get finished - if I'd let myself not go this week, it would have pretty much been an admission that I wasn't doing it anymore. I'm not going to let that happen to myself if I can avoid it.

I've had Kiroro's Nagai Aida stuck in my head for the past several days. It's not an amazing song, but it's sweet. I got it from Marcus (along with the rest of his music).

I just turned in my OS homework, and now I'm taking what I consider a well-deserved break. There are still many things to do, but none that it's pressing to get done right now. (At least, I hope not...)

2001-11-14

My sleep schedule is totally screwed up right now. I've been taking a nap in the evening, waking up between 11 and 1, and then not going back to sleep until some time in the day. I think I've actually been getting by with less sleep than normal, although this schedule is too weird to be sure.

I registered for classes yesterday. I had a very early OLR time, so I was actually able to get into Networks. But Mark wasn't, and when I asked the professor, he told me that the projects pretty much had to be done in pairs. So I dropped the course and added Graphics instead. I'll take Networks senior year. Other than that I'm in Computer Vision, Metaphysics, Algorithms, and Experimental Physics (damn science lab requirement...) Overall I'm pretty happy with my progress academically, and Mark Stehlik (the undergrad advisor for all SCS students) agrees. And it looks like I'll have a pretty good schedule next semester, possibly augmented by something outside of class. (Wait a bit to find out more about that, after I do. :-)

Revco

Tell me my cats aren't cute... go ahead, I dare you :-) I've been trying to update the gallery of cat pictures, but I got sidetracked trying to learn Style Sheets so that I can put captions on them and stuff. CSS is complicated, but very powerful if you can figure out how to work it.

Clyde and my
father

Anyway, when I figure out how to make it look right in Konqueror (the web browser I use) and Mozilla (the other browser I have handy on Linux), I'll post it. They're separate, quite compliant implementations of CSS, so if I get it to work in those two browsers and IE doesn't render it correctly, too bad for IE.

2001-11-16

Sorry, not a very long update this time. I feel like I'm finally starting to learn something in kung fu, although my physical strength is still very lacking. I suppose it should come in time, but it's hard to keep up my effort. It takes force of will to even go each week... but I know it's worth it.

The Cat Pictures page is updated. Specifically, I posted a few new pictures and made it actually work again. Unfortunately, the pictures are currently uncaptioned because I can't figure out a decent way to do captioning in current HTML.

2001-11-19

Well, another week, another take-home philosophy midterm (this one in Ancient Philosophy) not started until less than a day before it's due, another assignment completed solely by virtue of a SoBe energy drink. I probably shouldn't let this become a habit... oh well. My sleep schedule is still messy (well, even messier now.) But it still feels good to get this much done in this little time.

I'm leaving for home in less than a day and a half. Thanksgiving should be interesting; I think it'll be the first time I haven't spent it with my family. My mom will be in North Carolina with our relatives there and my dad will be at his girlfriend's place. I'll be at Ed's house. I was glad to receive the invitation; I don't really know what I'd be doing otherwise. My dad is coming out here to pick me up tomorrow.

I've had a couple of music kicks since I last wrote about music. First it was an unstoppable craving for the Brave Fencer Musashi soundtrack, which actually took some effort to find. Then it was the Final Fantasy Tactics soundtrack, which I got from Marcus a while ago (among all the rest of his music) but hadn't actually had a chance to listen to. Both have some very good songs (as well as some that are merely okay, and some that are irritating to listen to).

Aristotle is a lot better than Socrates/Plato. I found about 10 major flaws in Aristotle's Nichomachean Ethics. Now, that might sound bad, but with Plato it was a stretch to find anything right. Aristotle has several advantages over Plato: he divides up his material much more usefully, into "books" and "chapters" rather than using a dialogue format; his axioms are different and a lot more applicable to my life; and he thought of at least a few things that I was quite impressed he came up with that long ago. I'm considering going through the book again picking out the specific points I disagree with and those I thought were impressive, if I have the time.

Oh, and the filesystem project is due a week later than I had been thinking. That alleviates the mental pressure I have to deal with a little bit...

2001-11-23

Another update (being written at the same time as the last one, actually) to record actual happenings, since it's been a while since I updated and I don't want to lose track. On Tuesday my dad came out to CMU and picked me up, and we drove home. I drove the last 6 hours or so. I like driving, in a mindless way (sort of like Tetris), and Robert's battery somehow managed to hold out for almost 4 hours of music playing (of course, his screen was off). I was getting somewhat tired, but that's okay.

Yesterday (well, two days ago now), Clyde slept on me for several hours. I love my cats. I don't know how much more can be said about that except that I get teary when I think of them and I dearly wish I didn't have to be away from them so much. I often choose what to do over my vacations based on my cats. This time, I could have been in North Carolina with my mom, sister, and two sets of aunt, uncle and cousins, but I chose to come back to Albany mainly to see my cats.

Yesterday (the real yesterday this time) I went to Ed's for Thanksgiving. There were a ton of people there (16, I think), which isn't really my style. Nevertheless, the food was good and I mostly stuck together with Ed, and had interesting conversations with him on the drive over and the one back as well. I showed him that I was one of the contributors to gtk-gnutella and he was suitably impressed. Seeing Ed and thinking about how we've drifted apart triggered my current state of anger and sadness, although I don't blame him in any way for it.

VNC is an impressive piece of software. Now, I don't care what you tell me about X being able to do the same thing for years. The fact of the matter is, I'm typing this page from my mom's computer right now, but on my desktop. VNC is a tiny download involving no configuration, runs on commodity hardware and software, and has one very nice feature X doesn't: detaching. I can leave my desktop and it will be in the same state when I come back to it. And with ubiquitous broadband (which, to be fair, will still be a few more years, but it's here now for plenty of people, including my mom), we move ever closer to the model of just sitting down at a computer and using it as your computer. (I also like that with VNC, the software still runs on a system I trust - Laura.) Okay, enough of a rant about the life-changing effects of an executable of a few hundred kilobytes.

2001-11-23

I don't usually use this page to vent. It's basically meant as a record of my life, so I can remember what the heck was going on at various points, and so that other people can see it if they want to. But I'm going to break that convention this time.

I'm depressed and angry. No one reads this page. Now, in and of itself, that's just a bare fact, with not much emotional import. It's as part of a bigger picture that it matters, because what's really trying to come out when I keep obsessing over the sentence "no one visits this page" is "no one cares about me". That's both untrue and not useful, and I'm aware of both of those facts. It's not the literal truth or falsity of those statements that has such emotional import to me.

Furthermore, it's not even literally true that no one reads this webpage. In fact, it's not even true that I think getting more hits would make me feel better, except maybe in the cheapest of senses. After all, it doesn't take much care to read someone's webpage. I've read any number of personal webpages, and I don't even remember all of them, even the touching ones.

What I really want is... I don't know. I can think of plenty of things that make me feel good at the time - coding, watching movies, listening to music, holding my cats - and some things even give me a sense of accomplishment afterwards. But my happiness is always qualified, never absolute. In asking to TA OS, I'm starting to push a lot harder for something to really get me involved in life than I have in the past.

Throughout the years, there were many times when I felt that my life was unlikely to be worth living any more, but I kept from killing myself on a dogmatic rule. I'm not sure that I need that dogmatic rule any more, because even as I sit here frustrated with my apparent lack of ability to give my life meaning, I can immediately come up with ten good reasons why killing myself would be foolish. It's a lie for me to say I have no idea what I want, though. I want to be cured of the emotional hollowness I've felt for about two years now, I think. But that's a result, not a process, and if there is a process for achieving that result, it seems to currently be outside the scope of my expertise to find it.

This is getting a bit long, so see here if you really want more ranting.

2001-11-26

Synchronicity. You've heard the expression that luck is a combination of opportunity and preparedness, right? Well, this time I think it was more on the opportunity side, although some preparedness was involved. Allow me to explain:

So I get off the train in Pittsburgh. Silly person that I am, I don't take my father's advice and get a taxi, even though there are several people asking whether I need a ride. I half-change my mind right after they've all left. So I wander off in a semi-random direction. I have no hope of getting home before midnight, right? But I'm walking along Fifth Avenue and I see a sign saying 501 - 500, indicating that the numbers are increasing in the opposite direction from the way I'm walking. Hmm, if the numbers increase in the same order as Forbes, then I'm going the wrong way...

Suddenly, I see a bus on the other side of the street (hence heading the other way). I squint at the label. It's a 61C - part of the 61{A,B,C} series which not only goes to CMU, but which I know goes to CMU. I boldly dash across the street, ignoring the green light (don't worry, I looked both ways). I get on the bus, but then I'm nervous as to whether it's really the right one, so I ask a fellow passenger. At first he mentions that it's going to Homestead, which doesn't ring a bell, but then he mentions Squirrel Hill. Sigh. So I ended up getting home as quickly as if I'd taken a cab, saving 8 or 9 bucks, and feeling good about the whole process. :-)

Oh, in case you haven't noticed - I'm back at CMU. More updates to come later.

2001-11-27

I added a little essay on weakness of the will. It's nothing special, just that I felt the urge to write it and now, having done so, I feel the urge to publish it. :-)

My next semester looks to be potentially very, very busy. On top of three CS classes - the first time I've ever taken that many - I'll also be TAing Operating Systems (my first time TAing as well) if there's an open spot, which looks likely. If necessary, though, I already have picked out which class I'll drop. (Although it really shouldn't be necessary. I've never truly pushed myself, and it will be interesting to find out what it's like.)

In what some might consider mixed news, I've discovered that Entropy happens to carry the first taurine-based drink which I've tried and of which I've liked the flavor and not just the kick...

2001-11-29

Events planned by RAs and such usually suck, right? They're pointless and frankly a waste of time. This event, however, kicked ass. It was "Dinner with the Deans". Basically, a bunch of professors and staff (selected by students) were invited over to Mudge for dinner. I talked with Mark Stehlik about lots of cool stuff during dinner, and then I got a free one-on-three lecture from Steven Rudich about quantum computing. It had been way too long since I'd seen him, and I was the one who decided he should be invited. We talked about teaching techniques and policies and a bunch of other stuff as well.

From Mark Stehlik, I found out that at this point there are three people who've expressed interest in TAing OS, including me, so it looks like I'm in. I'm gonna need that three and a half day weekend next semester... I'm thinking I'm going to hold office hours some time on Fridays (when I have no classes.)

Older news


Kenn Hamm
For copyright and other information, click here.
Last modified: Thu Nov 29 23:34:54 2001