Week 2 - CST 334

 This week we learned about the concept of process which is a running instance of a program. A process consists of several components: address space, registers, and I/O state. The OS is responsible for managing processes using process API. The OS can allow many processes to run concurrently using CPU virtualization. The key system calls like fork(), exec(), and wait() are used to create new processes, wait for a child process to complete and execute the next process. 

We also learned about limited direct execution which is when user programs run directly on the CPU for speed. It is limited because the hardware and OS work together to retain control and enforce safety. By switching between from one process to another, the OS performs context switching, which saves the current process context and loads the next one's. 

Another important concept we learned about was CPU scheduling, where processes are ran depending on factors like time of arrival or duration until completion. FIFO, SJF, STCF and Round Robin can all be used to schedule processes with varying degrees of efficiency. MLFQ is a more advanced concept to learn for scheduling processes. It is priority-based and executes processes based on their priority level. 

Comments

Popular posts from this blog

Week 1 - CST 370

Week 1 - CST 438

Week 4