Journal Entry - Week 2 (CST 334)
1. Identify the topics we covered in class -- you can start by listing them
This week, we covered processes, C process API, the idea that the OS is event-driven, CPU scheduling notably Round Robin scheduling, and MLFQ.
2. Explain what each of the topics were in your own terms -- take the identified topics and add a sentence or two describing them
In my own terms, I would describe processes as a running instance of a program with its memory, CPU, and resources managed by the OS. The C process API is a bunch of system calls such as fork(), exec(), wait(), etc, that allows for software to manage processes. The idea that the OS is event-driven is true because the OS constantly responds to events such as interrupts, inputs, and completed tasks. Round Robin scheduling gives each process a small part of CPU time in repetition to ensure that every process has a fair chance to run. MLFQ is a CPU scheduling method that uses multiple priority queues which moves processes based on how much CPU time they use.
3. Identify least-understood topics -- of these topics, which was the hardest for you to write the descriptions?
For me, the least understood topic was MLFQ because it feels abstract and builds on the other topics of this week.
4. Explain the nature of your confusion -- for these difficult topics, what pieces of them make sense and what pieces are difficult to describe?
The part about C process API makes sense as it allows programs to simply run methods to communicate with an OS. The most difficult topic was MLFQ as it built on the other topics.
5. Identify "aha" moments -- which topic did you find it easiest to write about, and why did it make sense?
The “aha” moment was the C process API. It made sense to me because I have seen those exact system calls in code before. Now I understand how those system calls simplify software development in relation to using the OS.
6. Ask questions -- what do you think will come next? Are there any gaps that don't seem to be explained yet?
Will we learn in depth about threads? I think that an in depth topic about threads and how they’re used in deployed code will come next. There are no gaps that don’t seem to be explained yet at this time.
7. What connections did you see to other classes and applications -- have you used/heard/thought about these topics before?
I saw connections to my advanced programming in C++ course in community college where I learned more in depth about C++ and interacted with OS’s in coding.
Comments
Post a Comment