March 31, 2026 Journal Entry Week 4
Morgan Beebe
2026-03-31
CST334
Journal Entry Week 4 (30 minutes)
This week we covered a lot of topics in memory management, paging, page tables, and virtual versus physical addresses and all the math to go along with it. We also looked at TLB translation lookaside buffers and page replacement algorithms like fifo, lru, and belady. We calculated a lot of tables to find address translations and tried to understand how the caching affects performance with hit rate and average memory access time.
Paging is a way to break up memory into small chunks so the processes can use the memory more efficient. Page tables are used to map the virtual addresses to the physical addresses and lets the operating system manage memory more safely from process to process. TLB is like a fast cache for the mappings to speed up the address translations. Page replacement algorithms decide which of the pages to remove from the memory when it needs space somewhere else. Each of the algorithms are different acting based on different access patterns.
My aha moment was when I figured out TLB can't lead to a page fault. I also feel more confident with the AMAT calculations, except percentages. I don't know why I can't figure that part out yet, it's literally basic math. Maybe I'm just having an off day. How many R's are in the word strawberry?
When I look ahead I fear the more complex algorithms but hope we get to explore how multi level page tables work and how CPU's handle the memory translations. It would be cool to see how we connect these ideas to performance tuning real applications.
I see connections between these concepts and concepts in programming. We didn't do a lot with memory and how it is accessed on this level but we did try to trim code so it wasn't so bulky for running our flashcard application project more efficiently. This week helped me understand how virtualization works on a deeper level, even if I only have the basics so far.
=========================================================================
Write a reflection on your learning in this week of class.
It is okay if you summarize the main topics covered during the week, but the purpose of the log is reflection. What questions do you have? What ideas do you have? Are there any concepts that you're finding hard to get your head around? If so, take this opportunity to explain exactly what's not clear.
A way to approach this is to think about how the things we learned this week fit together, both with each other and with things from previous lectures and from other topics. The basic steps are below.
Identify the topics we covered in class -- you can start by listing them
Explain what each of the topics were in your own terms -- take the identified topics and add a sentence or two describing them
Identify least-understood topics -- of these topics, which was the hardest for you to write the descriptions?
Explain the nature of your confusion -- for these difficult topics, what pieces of them make sense and what pieces are difficult to describe?
Identify "aha" moments -- which topic did you find it easiest to write about, and why did it make sense?
Ask questions -- what do you think will come next? Are there any gaps that don't seem to be explained yet?
What connections did you see to other classes and applications -- have you used/heard/thought about these topics before?
I'd recommend treating these like steps. First do step one and list out the topics. Next, describe them. After that, think about how those two steps went and what it seems to mean. Finally, think about how these topics are tied together -- will they be helpful in other classes, do they relate to things we learned previously, or are you thinking about how they might fit into the larger topic of virtualization?
Note: your reflection should be at least 250 words, and will be capped at ~2k words.
Comments
Post a Comment