I'm not actually sure how well I did on this paper yet, hence another Phoenix post-mortem to stop me trying to work it out in my head all the way home. It was a bit frustrating; all of the questions I could answer ended up having last parts which I could probably explain to someone in a handwavy fashion but couldn't actually get right whilst writing down.
Question One: As I didn't recognise the names of the algorithms I was meant to be outlining for ten marks of this question, and wasn't entirely sure about the last part, I dismissed this question out of hand.
Question Two: 14-20 marks
Control hazards and data hazards. I had to guess an awful lot for how exactly the pipelines of the architectures did backfeeding and introducing bubbles, but I generally sounded fairly convincing.
Question Three: For some reason I just can't wrap my brain around ARQ, so I wasn't likely to do this question.
Question Four: 9 - 16 marks
Fairly straightforward concurrency stuff, although I unfortunately had no idea what re-entrant meant or what kind of properties 'four properties which hold when deadlock exist' were looking for.
Question Five: 15 - 18 marks
Yay for clipping algorithms. Not yay for matrix multiplication. I'm still convinced I got (c) as right as I could, even though none of the numbers worked when I plugged them in. Then I showed how I would do (d) without actually doing the arithmatic because it was dull and I spent the time on more interesting questions.
Question Six: Mm, a tasty twelve marks on the bit of the course I skimmed over because it was dull and complicated. This question, surprisingly enough, did not get done. (It was about code generation: converting from parse trees to stack code and then register-oriented assembler.) I didn't even look at the second part.
Question Seven: Not yay for Comparative Programming Languages; too many marks for too ill-defined a set of waffle.
Question Eight: The databases course introduced too many weird symbols too late in the day. Oh, and was mostly about lots of Set Theory, which is Maths. Bad subject, no biscuit.
Question Nine: I very nearly did this question, except I'd forgetten how to skolemize. Doh. I could probably have got thirteen marks out of it, but not being able to do the first part at all demoralised me somewhat.
Question Ten: 10 - 17 marks
Unfortunately when I waded into this question going 'yay, the one bit of complexity theory I know!' I didn't notice that it said 3-SAT rather than SAT. I don't know the reduction from (to?) SAT to (from?) 3-SAT, so I kind of lost, especially at the last part.
Question Eleven: This had the word 'prove' in it, in combination with the word 'lemma'. Any proof that requires lemmas, especially standard ones I'm meant to know and don't, is not a proof I am interested in struggling with.
Question Twelve: 10 - 18 marks
I almost lost it while fumbling around in the final bit, and I think I have just produced one rather than explaning how it is possible to produce one (where one is a predecessor function in the lambda calculus), but otherwise this was a nice question about numbers in the lambda calculus. Also my explanation of stuff about (m n) is lousy.
Overall: 58 - 89 marks, so not quite as lousy as I thought. It seems that the small parts of the questions, which I did quite well at, add up eventually.
Conclusion: Not quite as lousy as I thought, and still right on the border between 2.1 and 2.2 in general.
Question One: As I didn't recognise the names of the algorithms I was meant to be outlining for ten marks of this question, and wasn't entirely sure about the last part, I dismissed this question out of hand.
Question Two: 14-20 marks
Control hazards and data hazards. I had to guess an awful lot for how exactly the pipelines of the architectures did backfeeding and introducing bubbles, but I generally sounded fairly convincing.
Question Three: For some reason I just can't wrap my brain around ARQ, so I wasn't likely to do this question.
Question Four: 9 - 16 marks
Fairly straightforward concurrency stuff, although I unfortunately had no idea what re-entrant meant or what kind of properties 'four properties which hold when deadlock exist' were looking for.
Question Five: 15 - 18 marks
Yay for clipping algorithms. Not yay for matrix multiplication. I'm still convinced I got (c) as right as I could, even though none of the numbers worked when I plugged them in. Then I showed how I would do (d) without actually doing the arithmatic because it was dull and I spent the time on more interesting questions.
Question Six: Mm, a tasty twelve marks on the bit of the course I skimmed over because it was dull and complicated. This question, surprisingly enough, did not get done. (It was about code generation: converting from parse trees to stack code and then register-oriented assembler.) I didn't even look at the second part.
Question Seven: Not yay for Comparative Programming Languages; too many marks for too ill-defined a set of waffle.
Question Eight: The databases course introduced too many weird symbols too late in the day. Oh, and was mostly about lots of Set Theory, which is Maths. Bad subject, no biscuit.
Question Nine: I very nearly did this question, except I'd forgetten how to skolemize. Doh. I could probably have got thirteen marks out of it, but not being able to do the first part at all demoralised me somewhat.
Question Ten: 10 - 17 marks
Unfortunately when I waded into this question going 'yay, the one bit of complexity theory I know!' I didn't notice that it said 3-SAT rather than SAT. I don't know the reduction from (to?) SAT to (from?) 3-SAT, so I kind of lost, especially at the last part.
Question Eleven: This had the word 'prove' in it, in combination with the word 'lemma'. Any proof that requires lemmas, especially standard ones I'm meant to know and don't, is not a proof I am interested in struggling with.
Question Twelve: 10 - 18 marks
I almost lost it while fumbling around in the final bit, and I think I have just produced one rather than explaning how it is possible to produce one (where one is a predecessor function in the lambda calculus), but otherwise this was a nice question about numbers in the lambda calculus. Also my explanation of stuff about (m n) is lousy.
Overall: 58 - 89 marks, so not quite as lousy as I thought. It seems that the small parts of the questions, which I did quite well at, add up eventually.
Conclusion: Not quite as lousy as I thought, and still right on the border between 2.1 and 2.2 in general.
no subject
Date: 2005-06-08 06:16 pm (UTC)From:Re-entrant: can be accessed from any thread (or even multiple threads at once) safely.
The properties are: lock requests can be refused (when held by something else), locks are held while waiting, locks cannot be pre-empted and a circular dependency exists. Can't really be derived because the first three are too obvious to be conditions.
Good luck tomorrow!