Week 25: Beginning of Operating Systems
The main takeaways from my first week of this Operating Systems course were:
- An operating system(OS) is responsible for managing the resources of a computer provides APIs, and standard libraries. An OS manages resources through virtualization. Virtualization makes use of the physical resources and transforms them into a virtual form. This allows for concurrency and multithreaded programs as well as multi-tasking. As we now know, Von-Neuman model computers fetch-decode-execute instructions which means you can only execute one instruction at a time; this was overcome through virtualization. I really enjoyed learning about the layers of functionality(User mode, Kernel Mode, and Hardware). I now know that these layers provide abstraction.
- We started our journey to learn and understand the Linux command line and shell scripting. The command line is truly versatile, and I've had a lot of experience using the command line through daily use but going through the exercises taught me how to use the cat command, which I have been curious about for a while.
- I also learned about creating a shell script that uses if statements and while loop, which I think is a fairly vital skill to have as a software engineer to create automated workflows