I hope you all had a good Thanksgiving weekend.
Two weeks left : memory & malloc this week, a whirlwind of client/server coding next week.
Questions about anything before we jump in?
We just finished the shell lab. I've posted a link to someone else's solution, and a description of the first few tests.
Last class I walked through slides describing virtual memory, and today's assignment is a few practice problems to see if that makes sense.
Any discussion or questions about any of this?
Today ... malloc.
The CMU lecture notes to go over are :
Along the way I'll give some context, discussing in Python the notions of
Try for example, check out pointers.py or similar code, perhaps with visualization tool pythontutor.com or the memory analysis tools mentioned in the articles above.
On the other hand, C has the strength of its convictions ... explicit malloc() and free(), none of that automatic garbage collection stuff here.
So ... the malloc lab is due Friday.
I've posted it on the assignments page, along with a .tar file consistent with what's on jupyter, and a "getting started" blurb. I'll walk through all that.
After the due date I'll post several different sample versions of mm.c , all from the CMU folks , using several different algorithms.
Next week we'll be looking at one more chapter, on network coding.
I'll have the assignment for Tuesday posted by Friday, and go over some of that in class on Friday. There will be one more lab, a client/server proxy, due the last day of classes, Dec 11.
Sometime during the next week, please choose three of the labs to do writeups, and tell me which three you would like me to treat as gradeable. For those three, do some sort of short writeup explaining what you did, as if to someone else taking this course, including a bibliography of sources. Tell me on the last "three labs" assignment page which are your three, and submit the writeups either there or on the original lab page. It may be that what you have done already for a lab is suitable. If you have any questions about any of this, ask on an assignment page, via email, or in slack.