Day of endings

Today was my last day of work at Viz. It was good… got the testing infrastructure started. Did as much as I could given I only had 8 hours to work on it. Managed to get it done after 5.5 (Wednesday plus some of today) and did some final bug fixing and integrating afterwards. Bid farewell to everyone.

Today was our P3 interview, which marked the end of our kernel project. His main criticism was that we used 5 locking primitives in our kernel (mutex, cond [condition variable], icond [internal condition variable], ENTER_CRIT/EXIT_CRIT, and disable_interrupts/enable_interrupts). He said this was indicative of “running away” from problems by creating more locking primitives than figuring out those problems. Yeah, sounds about right. He also found a potential deadlock in our kernel (that, at least, is very very unlikely) and a few problems with the scheduler. Also, one part of our kernel (a function that either copies to/from userspace/kernel space or vice versa depending on where the pointer you pass to it is) was called a 1337 hax and we were told that 1337 hax should be very well documented (whereas ours was lacking any documentation… oops). Also, we generally had bad quality/missing documentation in our kernel. Not surprising, given how we mostly did the documentation in the last 2 days.

Today was our pen-based computing presentation, which marks the end of the pen-based class and also of our adventure game mapping tool project. That went pretty well… we managed to implement all desired features and Carl and Edmund got saving/scrolling working at the last minute. Woo.

Also, today was our P4 late day. We went into it rather confused on why free was causing page faults left and right and wondering if it was a kernel issue. After about 5 hours of debugging (in addition to the debugging yesterday), as I read through the code because I was completely stumped, I discovered the lines:
file_desc* fd_struct;
...
fd_struct = (file_desc*)malloc(sizeof(fd_struct));
...

Oops.
So yeah, the end of OS projects (and our ~7 hour debug issue) and of the semester of workdeath was a stupid typo bug. Whee.

Overall, it’s been a good semester. I think I’ve decided on a job (the one I kinda decided I wanted since the beginning), and I’ll send out the acceptance letter tomorrow (along side my last rejection letter).

Happy Belated Thanksgiving

Went to Greg’s house for Thanksgiving this year, and generally had a lot of fun. There was turkey, stuffing, mashed potatoes, corn, green bean casserole, cranberry sauce, and two (later three) kinds of pie. Tasty.
I guess when it rains it pours, because this was the first year I actually had somewhere to go for Thanksgiving, and Mark also invited all the seniors to his house for Thanksgiving (because he’s just that awesome).

We also went and did some Black Friday shopping because there was some stuff we wanted… I got a 500 GB hard drive (to use for backing up my existing drive) for $85 and a copy of 300, which I had been wanting to see. Great movie, and the visuals (once you get over the blood and gore) are amazing.

Tomorrow OS P4 comes out and I am busy with work again. Busy busy busy. Also, the deadlines for deciding on jobs is coming up soon. I’ve eliminated two of the five for sure, so I should probably send out rejection letters tomorrow. I still have Endeca to go (cancelled the Yahoo interview), so we’ll see how that turns out before I make a decision on the other 3.

I should work on Student Wars v2 and stuff.


Delays

So I’ve had delayed flights before… but I think this is the first time I’ve had a flight that didn’t take off until after its scheduled arrival time.

Thank you US Airways.

Now I sleep because I haven’t slept in almost 2 days and I have an interview tomorrow morning.

Also, <3 the bed has 5 huge fluffy pillows!

OS death x 2

if((argv = loader_copy_argv(filename, page)) == NULL)
{
lprintf_kern("argv is null %p", argv);
return ERROR;
}

outputs
argv is null 0x1ffe00

Don’t you love it when you override your program’s execution code and cause weird things like this?

Also, you get funness like getting odd addresses like 0xacfffffe because something does a INC %esp assembly instruction.

-_-
It is 2:30 AM, and we’re almost back to the point where we were logical yesterday morning before this horribleness with VM began.
*sighs*

Tonight is likely going to be another all-nighter (after which, with luck, we will be back at the point where we were at the beginning of the week). Tomorrow is more OS followed by a flight to Connecticut in the evening (yay sleeping on the plane). Death.

Edit: 8 is amazing… as I sat around uselessly throughout the night, he fixed our VM/PM bugs and got us back to a working state. Then, as I sat there and zoned out and then dozed off, he wrote the vanish() syscall and most of wait(). Bleh, why am I so useless?
My throat hurts…. I should go find some cough drops or something.

Hotel

Oracle put me in a suite for tonight, before my interview with them tomorrow.
A goddamn suite.
It has two bedrooms with king sized beds. Each has its own TV and its own full bathroom. The beds have 4 huge fluffy pillows and a nice side pillow.
The suite has a huge living room area with nice couches and armchairs, a big-screen TV, and a DVD player.
The suite also has a full kitchen, complete with stove, microwave, fridge, toaster, and sink… and fully stocked with cookware and dishes.

Seriously, WTF.
This is either the most amazing thing ever, or the most wasteful thing ever. I mean, I’m going to be in the room for all of 9 hours before I leave for the interview tomorrow morning… but holy crap is it nice. I’m half tempted to switch bedrooms halfway through the night just because they’ll end up changing both sets of sheets anyway tomorrow after I check out… but meh.
Also, from the airport, there was this huge, awesome sedan car waiting for me to drive me here. So comfy.

On the plus side, this is a whole lot less stressful now that I have a job offer that I actually want and would be totally happy with. I no longer feel like the upcoming interview is do-or-die, so I suppose that’s a good thing.

I should sleep soon. Tomorrow is a full all-you-can-eat buffet breakfast. Oh how they spoil us candidates.