CST 334 Week 8
3 important topics I have learned about in this class are virtualization, concurrency, and persistence. Virtualization allows multiple processes or dynamic instances of a running program to run in parallel, even on single processor systems. To accomplish this, the OS virtualizes physical memory, which provides the process its own address space, and controls its use of the CPU through context switching. In this class, I learned about several memory allocation techniques such as paging and segmentation as well as different scheduling algorithms such as using multilevel feedback queues scheduling. Concurrency is essential in the execution of multiple threads, the most basic unit of execution of a process. Issues can occur when multiple threads attempt to enter access and manipulate shared data. Race conditions and inconsistent program results can occur if the order in which threads enter a critical section is not regulated. To ensure atomicity, synchronization primitives such as loc...