March 17, 2026 CST334 Journal Entry Week 2
March 17, 2026
CST334
Journal Entry Week 2 (30 minutes)
This week I learned a lot about foundational topics in operating systems and scheduling. The focus seemed to be on different ways to schedule processes and how memory is laid out and how resources are managed by the operating system. Some of the main topics were the difference between processes and programs, process scheduling, memory layout, file permissions, and more debugging tools using GDB. I also learned about how an operating system can manage resources and control them using traps and system calls. It turned a dull course into something that sparked interest in me.
A program is static code and a process is the instance of that program running. Process scheduling is how the operating system decides which one to run and in what order is more efficient. Memory layout is how data is stored during execution. I still have an issue with stack and heap, but I'm trying to fill in my spare time listening to more lectures on it. File permissions are a way to control read/write, execution,. and other access. And more GDB for debugging beyond testing in print statements.
My most difficult subject is stack and heap and how it is managed at low levels. I get the basics but am still confused on data being stored in each and how buffer overflow actually works. I get the code and can read it, but it just working doesn't click in my head on why.
My aha moment was when I figured out the real deep concepts of the difference between a program and process. I knew what a program and process were beforehand but the thought of a process as a live version of the program using resources made it make more sense, I don't know if that makes sense to my three avid readers.
My questions going forward are few, but here we go..... How do modern operating systems prevent memory errors like buffer overflows in the real world? How does scheduling scale to a large size like when Windows has hundreds of processes running? Or a server with thousands of processes?
The strong connections are to the programming courses, of course. I also see connections to my MBA prerequisite courses where I learned about FIFO and other scheduling topics that seem to be very similar for business. I thought that was an odd connection when it came up in the lectures. These permissions and processes are very similar to my past cyber security courses. I used Linux and command line a lot in cyber security for traversing folders and adjusting permissions. Overall, this week started to connect on topics I am familiar with, thankfully, and renewed my interest in pushing more into Linux terminal and enhancing my skills there.
==========================================================================
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