March 24, 2026 Journal Entry Week 3

 March 24, 2026

Journal Entry Week 3

This week we focused on memory management. we covered virtual addresses, physical addresses, how the system translates between them, and uses things like base and bounds registers. We did some calculations on physical addresses and how how to determine if a physical address is valid or not. I guess in my own words, virtual memory makes each program think it has its own memory. Base and bounds helps control where a process can read or write by defining a starting point (the base) and the limit of the size (the bounds). If a program tried to access something outside that range it would be invalid. Translating to a physical address is done adding the base to the virtual address, literally adding it. I liked that part because I do a lot of binary to hex to base ten at work and my students are doing binary to hexadecimal conversions this week. The part I struggled with most of all was keeping track if the address was valid or invalid. It is worse when code, heap, and stack get involved. I get the basic idea but the numbers mess me up when I get so many stacked together. Does that make sense? I tackle them one by one because my brain is in a thousand places at once and it gets hard to track sometimes. It's more of a me problem, but I just buttoned up a project at my second job and will have 20-40 hours extra to focus on other things for the next few months. My aha moment was figuring out that two different processes can use the same virtual address without conflicting because they will map to different physical addresses. I'm really curious what comes next week. I'd like to learn how the basic base and bounds evolves into a more complex system. I do see similarities to other courses, maybe not here, but in networking we use a lot of addressing. I guess this will bridge into the networking course we do next. This also meshes well with C language because I'm learning there is a whole system underneath that manages where pointers go in memory. It was cool to see how much the OS acts as middle man for program and hardware this week. It is starting to all get tied together. 




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