This week, I explored the fundamentals of process management in C and learned how operating systems work with multiple processes running at the same time. I learned how functions like fork, wait, and execlp let programs control separate processes, which can work in tandem and manage independent tasks. Observing the behavior of these processes with different timing showed me how subtle changes impact their order and how the OS schedules them. I also learned about managing process states for example preventing zombie and orphan processes and finally saw how imortant it is to document these behaviors clearly to understand and troubleshoot parallel programming effectively and efficiently.
This week I focused a lot on understanding time complexity and recursive analysis. It was challenging at first to figure out how to break down recursive functions and write the correct recurrence relations. Applying the Master Theorem was especially tough because I had to carefully identify each part of the formula and decide which case applied. I also spent time reviewing the difference between Big O, Big Omega, and Big Theta, which helped me better understand how to describe the efficiency of an algorithm. These concepts took time to click but working through examples really helped.
Comments
Post a Comment